Newer
Older
@book{klabnik19,
title = {The Rust Programming Language},
author = {Steve Klabnik and Carol Nichols},
year = {2019},
publisher = {No Starch Press},
link = {https://rust-lang.org}
@article{moura15,
title = {The Lean theorem prover},
author = {Leonardo de Moura and Soonho Kong and Jeremy Avigad and Floris van Doorn and Jakob von Raumer},
year = {2015},
link = {https://leanprover.github.io/}
@inproceedings{moura08,
title = {Z3: An efficient SMT solver},
author = {Moura, Leonardo de and Bjørner, Nikolaj},
booktitle = {International conference on Tools and Algorithms for the Construction and Analysis of Systems},
pages = {337--340},
year = {2008},
organization = {Springer},
link = {https://github.com/Z3Prover}
@inproceedings{vazou14,
title = {Refinement types for Haskell},
author = {Vazou, Niki and Seidel, Eric L and Jhala, Ranjit and Vytiniotis, Dimitrios and Peyton-Jones, Simon},
booktitle = {Proceedings of the 19th ACM SIGPLAN international conference on Functional programming},
pages = {269--282},
year = {2014},
link = {https://ucsd-progsys.github.io/liquidhaskell-blog/}
title = {Haskell},
author = {Haskell.org},
url = {https://www.haskell.org/},
date = {2022-01-26},
urldate = {2022-01-26}
@misc{xi10,
title = {The ATS Programming Language},
author = {Xi, Hongwei},
year = {2010},
publisher = {Citeseer},
link = {http://www.ats-lang.org/}
title = {Clippy},
author = {Clippy Team},
url = {https://github.com/rust-lang/rust-clippy},
date = {2022-02-04},
urldate = {2022-02-04}
title = {Cargo Expand},
author = {David Tolnay},
url = {https://github.com/dtolnay/cargo-expand
},
date = {2022-02-04},
urldate = {2022-02-04}
title = {Why TDD is Faster than Unit Testing},
author = {Tengiz Tutisani},
url = {https://www.tutisani.com/software-architecture/why-tdd-is-faster-than-unit-testing.html},
urldate = {2202-02-04}
title = {The rustdoc book},
author = {Rust Team},
url = {https://doc.rust-lang.org/rustdoc/},
urldate = {2202-02-04}
title = {mdBook Docmentation},
author = {Rust Team},
url = {https://rust-lang.github.io/mdBook/},
urldate = {2202-02-04}
@article{jung17rustbelt,
title = {RustBelt: Securing the foundations of the Rust programming language},
author = {Jung, Ralf and Jourdan, Jacques-Henri and Krebbers, Robbert and Dreyer, Derek},
journal = {Proceedings of the ACM on Programming Languages},
volume = {2},
number = {POPL},
pages = {1--34},
year = {2017},
publisher = {ACM New York, NY, USA},
link = {https://plv.mpi-sws.org/rustbelt/}
title = {European Metrology Cloud},
author = {Physikalisch-Technische Bundesanstalt},
url = {metrologycloud.eu},
date = {2022-01-26},
urldate = {2022-01-26}
title = {Refinement},
author = {Brady Dean},
url = {https://github.com/2bdkid/refinement},
date = {2022-01-26},
urldate = {2022-01-26}
title = {Proptest Book},
author = {Jason Lingle},
url = {https://altsysrq.github.io/proptest-book/},
date = {2022-01-26},
urldate = {2022-01-26}
title = {RustProof},
author = {Rust-Proof},
url = {https://github.com/Rust-Proof/rustproof},
date = {2022-01-26},
urldate = {2022-01-26}
author = {Cormac Flanagan and Stephen N. Freund and Aaron Tomb},
title = {Hybrid types, invariants, and refinements for imperative objects},
journal = {FOOL/WOOD},
volume = {6},
link = {https://users.soe.ucsc.edu/~cormac/papers/fool06.pdf}
@article{lehmann2017gradual,
title = {Gradual refinement types},
author = {Lehmann, Nico and Tanter, {\'E}ric},
journal = {ACM SIGPLAN Notices},
volume = {52},
number = {1},
pages = {775--788},
year = {2017},
publisher = {ACM New York, NY, USA},
link = {https://pleiad.cl/papers/2017/lehmannTanter-popl2017.pdf}
title = {A proactive approach to more secure code},
organization = {Microsoft Security Response Center},
author = {Gavin Thomas},
url = {https://msrc-blog.microsoft.com/2019/07/16/a-proactive-approach-to-more-secure-code/},
date = {2019-07-16},
urldate = {2022-01-25}
author = {Aaron Weiss and Olek Gierczak and Daniel Patterson and Amal Ahmed},
title = {Oxide: The Essence of Rust},
journal = {arXiv preprint arXiv:1903.00982},
link = {https://arxiv.org/pdf/1903.00982.pdf}
author = {Shuanglong Kan and Zhe Chen and Davin Saán and Shang-Wei Lin and Yang Liu},
title = {An Executable Operational Semantics for Rust with the Formaliztion of Ownership and Borrowing},
journal = {arXiv preprint arXiv:1804.07608},
link = {https://arxiv.org/pdf/1804.07608.pdf}
author = {Sebastian Ullrich},
title = {Simple Verification of Rust Programs via Functional Purification},
school = {Karlsruhe Institute of Technology},
year = {2016},
link = {https://pp.ipd.kit.edu/uploads/publikationen/ullrich16masterarbeit.pdf}
author = {Xiu Hong Kooi},
title = {Refinement Types in Real-World Programming},
school = {University pf Cambridge},
year = 2021,
link = {https://kooixiuhong.com/static/media/acs-dissertation.e8569509.pdf}
@inproceedings{vekris2016refinement,
title = {Refinement types for TypeScript},
author = {Vekris, Panagiotis and Cosman, Benjamin and Jhala, Ranjit},
booktitle = {Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation},
pages = {310--325},
year = {2016},
link = {https://goto.ucsd.edu/~pvekris/docs/pldi16.pdf}
title = {Patina: A formalization of the Rust programming language},
journal = {University of Washington, Department of Computer Science and Engineering, Tech. Rep. UW-CSE-15-03-02},
pages = {264},
link = {https://dada.cs.washington.edu/research/tr/2015/03/UW-CSE-15-03-02.pdf}
author = {V. Astrauskas and P. Müller and F. Poli and A. J. Summers},
title = {Leveraging Rust Types for Modular Specification and Verification},
institution = {ETH Zurich},
year = {2019},
doi = {10.3929/ethz-b-000311092}
@inproceedings{mueller16,
author = {P. Müller and M. Schwerhoff and A. J. Summers},
title = {Viper: A Verification Infrastructure for Permission-Based Reasoning},
booktitle = {Verification, Model Checking, and Abstract Interpretation (VMCAI)},
editor = {B. Jobstmann and K. R. M. Leino},
year = {2016},
publisher = {Springer-Verlag},
series = {LNCS},
pages = {41-62},
volume = {9583}
}
@article{rondon08,
author = {Partrick M. Rondon and Ming Kawaguci and Ranjit Jhala},
title = {Liquid Types},
doi = {10.1145/1375581.1375602},
year = {2008},
eventtitle = {PLDI '08: Proceedings of the 29th ACM SIGPLAN Conference on Programming Language Design and Implementation},
pages = {159-169}
}
@report{olson16,
author = {Scott Olson},
school = {University of Saskatchewan},
title = {Miri: An interpreter for Rust’s mid-level intermediate representation},
url = {https://solson.me/miri-report.pdf}
}
@online{matsakis18,
author = {Niko Matsakis},
title = {An alias-based formulation of the borro checker},
date = {2018-04-27},
url = {https://smallcultfollowing.com/babysteps/blog/2018/04/27/an-alias-based-formulation-of-the-borrow-checker/#fnref:covariant},
urldate = {2022-02-17}
}
@misc{enwiki:1064721744,
author = {{Wikipedia contributors}},
title = {Datalog --- {Wikipedia}{,} The Free Encyclopedia},
year = {2022},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Datalog&oldid=1064721744}},
note = {[Online; accessed 17-February-2022]}
}
title = {A lightweight formalism for reference lifetimes and borrowing in Rust},
author = {Pearce, David J},
journal = {ACM Transactions on Programming Languages and Systems (TOPLAS)},
volume = {43},
number = {1},
pages = {1--73},
year = {2021},
publisher = {ACM New York, NY, USA}
}
@inproceedings{matsushita2020rusthorn,
title = {RustHorn: CHC-Based Verification for Rust Programs.},
author = {Matsushita, Yusuke and Tsukada, Takeshi and Kobayashi, Naoki},
booktitle = {ESOP},
pages = {484--514},
year = {2020}
}
@inproceedings{wang2018krust,
title = {Krust: A formal executable semantics of rust},
author = {Wang, Feng and Song, Fu and Zhang, Min and Zhu, Xiaoran and Zhang, Jun},
booktitle = {2018 International Symposium on Theoretical Aspects of Software Engineering (TASE)},
pages = {44--51},
year = {2018},
organization = {IEEE}
}
author = {{Wikipedia contributors}},
title = {Horn clause --- {Wikipedia}{,} The Free Encyclopedia},
year = {2022},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Horn_clause&oldid=1071814133}},
note = {[Online; accessed 10-March-2022]}
}
@article{roșu2010kframework,
title = {An overview of the K semantic framework},
author = {Roșu, Grigore and Șerb{\u{a}}nut{\u{a}}, Traian Florin},
journal = {The Journal of Logic and Algebraic Programming},
volume = {79},
number = {6},
pages = {397--434},
year = {2010},
publisher = {Elsevier}
}
@inproceedings{grossman2002region,
title = {Region-based memory management in Cyclone},
author = {Grossman, Dan and Morrisett, Greg and Jim, Trevor and Hicks, Michael and Wang, Yanling and Cheney, James},
booktitle = {Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation},
pages = {282--293},
year = {2002}
}
@misc{rfc2025nestedmethodcalls,
author = {{Matsakis, Niko}},
title = {{RFC: Enable nested method calls}},
howpublished = {\url{https://github.com/rust-lang/rfcs/pull/2025}},
note = {[Online; accessed 10-August-2022]}