I'm a PhD student at MIT CSAIL, advised by Prof. Adam Chlipala.
Email: My last name at mit dot edu
Office address:
32-G886
MIT CSAIL, Stata Center
32 Vassar Street
Cambridge MA 02139
USA
Full CV: here

Research Interests

I’m interested in Programming Languages and Verification, Interactive Theorem Proving, Language Design, Compilers, Specifications, and Software Engineering.

Currently, I’m working on a verified compiler from a very simple C-like language to RISC-V machine code. This compiler connects to a program logic framework developed by my colleague Andres Erbsen, and to a verified RISC-V processor developed by my colleague Joonwon Choi. Together, we’re working on an end-to-end theorem which states that if we use the program logic to prove that a program satisfies an IO specification, and use the compiler to compile it and then run it on the processor, the processor satisfies the same IO specification. The source code of this project is on GitHub. We don’t have a paper about it yet, but I gave a presentation focusing on the RISC-V part of the project at the RISC-V Summit 2019, and you can find the video recording here.

Past Projects

Publications

[5] Andres Erbsen, Samuel Gruetter, Joonwon Choi, Clark Wood, and Adam Chlipala. Integration Verification Across Software and Hardware for a Simple Embedded System. PLDI'21, 2021.
bib | DOI | pdf ]
[4] Qinxiang Cao, Lennart Beringer, Samuel Gruetter, Josiah Dodds, and Andrew W. Appel. VST-Floyd: A Separation Logic Tool to Verify Correctness of C Programs. Journal of Automated Reasoning, 61(1-4):367--422, June 2018.
bib | DOI | pdf ]
[3] Samuel Gruetter and Toby Murray. Short Paper: Towards Information Flow Reasoning about Real-World C Code. In Proceedings of the 2017 Workshop on Programming Languages and Analysis for Security - PLAS '17, pages 43--48, Dallas, Texas, USA, 2017. ACM Press.
bib | DOI | pdf ]
[2] Samuel Gruetter, Daniel Graf, and Benjamin Schmid. Watch them Fight! Creativity Task Tournaments of the Swiss Olympiad in Informatics. Olympiads in Informatics, 10(1):73--85, July 2016.
bib | DOI | pdf ]
[1] Nada Amin, Samuel Gruetter, Martin Odersky, Tiark Rompf, and Sandro Stucki. The Essence of Dependent Object Types. A List of Successes That Can Change the World: Essays Dedicated to Philip Wadler on the Occasion of His 60th Birthday, pages 249--272, 2016.
bib | DOI | pdf ]

Reports

[9] Thomas Bourgeat, Ian Clester, Andres Erbsen, Samuel Gruetter, Andrew Wright, and Adam Chlipala. A Multipurpose Formal RISC-V Specification. 2021.
bib | arXiv | pdf ]
[8] Samuel Gruetter. Counterexamples for Coq Conjectures. CoqPL'19, January 2019.
bib | pdf ]
[7] Samuel Gruetter and Toby C. Murray. VST-Flow: Fine-grained low-level reasoning about real-world C code. Technical report, University of Melbourne, September 2017.
bib | pdf ]
[6] Samuel Gruetter. Improving the Coq proof automation tactics of the Verified Software Toolchain, based on a case study on verifying a C implementation of the AES encryption algorithm. MSc thesis, EPFL/Princeton University, April 2017.
bib | pdf ]
[5] Samuel Gruetter. Connecting Scala to DOT. MSc semester project, EPFL, June 2016.
bib | pdf ]
[4] Samuel Gruetter. Dependent Object Types With Existential Quantification Over Objects. Research report, EPFL, July 2015.
bib | pdf ]
[3] Samuel Gruetter. Improving Leon's Termination Checker. Project report, EPFL, June 2015.
bib | pdf ]
[2] Samuel Gruetter. Machine-checked typesafety proofs. MSc semester project, EPFL, June 2014.
bib | pdf ]
[1] Samuel Gruetter. Explorations of type systems. BSc semester project, EPFL, June 2013.
bib | pdf ]

Education

Industry Experience