程序语言和编译器
CompCert(C)
- POPLFormal certification of a compiler back-end or: programming a compiler with a proof assistant In Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, Charleston, South Carolina, USA, January 11-13, 2006 2006
- JARFormal Verification of a C-like Memory Model and Its Uses for Verifying Program Transformations J. Autom. Reason. 2008
- CACMFormal verification of a realistic compiler Commun. ACM 2009
- JARMechanized Semantics for the Clight Subset of the C Language J. Autom. Reason. 2009
- PLDITowards certified separate compilation for concurrent programs In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2019, Phoenix, AZ, USA, June 22-26, 2019 2019
AutoCorres(C)
- POPLTypes, bytes, and separation logic In Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2007, Nice, France, January 17-19, 2007 2007
- ITPBridging the Gap: Automatic Verified Abstraction of C In Interactive Theorem Proving - Third International Conference, ITP 2012, Princeton, NJ, USA, August 13-15, 2012. Proceedings 2012
- PLDIDon’t sweat the small stuff: formal verification of C code without the pain In ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI ’14, Edinburgh, United Kingdom - June 09 - 11, 2014 2014
JAVA
- ESOPVerifying a Compiler for Java Threads In Programming Languages and Systems, 19th European Symposium on Programming, ESOP 2010, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2010, Paphos, Cyprus, March 20-28, 2010. Proceedings 2010
- ESOPJava and the Java Memory Model - A Unified, Machine-Checked Formalisation In Programming Languages and Systems - 21st European Symposium on Programming, ESOP 2012, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2012, Tallinn, Estonia, March 24 - April 1, 2012. Proceedings 2012
- TOPLASMaking the java memory model safe ACM Trans. Program. Lang. Syst. 2013
LLVM
- POPLFormalizing the LLVM intermediate representation for verified program transformations In Proceedings of the 39th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2012, Philadelphia, Pennsylvania, USA, January 22-28, 2012 2012
- ITPGenerating Verified LLVM from Isabelle/HOL In 10th International Conference on Interactive Theorem Proving, ITP 2019, September 9-12, 2019, Portland, OR, USA 2019
CakeML
- ICFPA new verified compiler backend for CakeML In Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, ICFP 2016, Nara, Japan, September 18-22, 2016 2016
- ESOPA Verified Compiler from Isabelle/HOL to CakeML In Programming Languages and Systems - 27th European Symposium on Programming, ESOP 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14-20, 2018, Proceedings 2018
- JARA Verified Generational Garbage Collector for CakeML J. Autom. Reason. 2019
- The verified CakeML compiler backend J. Funct. Program. 2019
Rust
- POPLRustBelt: securing the foundations of the rust programming language Proc. ACM Program. Lang. 2018
- TASEKRust: A Formal Executable Semantics of Rust In 2018 International Symposium on Theoretical Aspects of Software Engineering, TASE 2018, Guangzhou, China, August 29-31, 2018 2018
Lustre
- PLDIA formally verified compiler for Lustre In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017, Barcelona, Spain, June 18-23, 2017 2017
- POPLMechanized semantics and verified compilation for a dataflow synchronous language with reset Proc. ACM Program. Lang. 2020