Foundational Research with F*

The Design of F* and its DSLs

Meta-F*: Proof Automation with SMT, Tactics, and Metaprograms

Guido Martínez, Danel Ahman, Victor Dumitrescu, Nick Giannarakis, Chris Hawblitzel, Catalin Hritcu, Monal Narasimhamurthy, Zoe Paraskevopoulou, Clément Pit-Claudel, Jonathan Protzenko, Tahina Ramananandro, Aseem Rastogi and Nikhil Swamy.

28th European Symposium on Programming (ESOP), pp. 30–59, 2019.

Verified Low-Level Programming Embedded in F*

Jonathan Protzenko, Jean-Karim Zinzindohoué, Aseem Rastogi, Tahina Ramananandro, Peng Wang, Santiago Zanella-Béguelin, Antoine Delignat-Lavaud, Catalin Hritcu, Karthikeyan Bhargavan, Cédric Fournet and Nikhil Swamy.

PACMPL, vol. 1, no. ICFP, pp. 17:1–17:29, 2017.

Dependent Types and Multi-Monadic Effects in F*

Nikhil Swamy, Catalin Hritcu, Chantal Keller, Aseem Rastogi, Antoine Delignat-Lavaud, Simon Forest, Karthikeyan Bhargavan, Cédric Fournet, Pierre-Yves Strub, Markulf Kohlweiss, Jean-Karim Zinzindohoué and Santiago Zanella-Béguelin.

43rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pp. 256–270, 2016.

Semantics and Effects

Dijkstra Monads for All

Kenji Maillard, Danel Ahman, Robert Atkey, Guido Martínez, Catalin Hritcu, Exequiel Rivas and Éric Tanter.

24th ACM SIGPLAN International Conference on Functional Programming (ICFP), 2019.

Dijkstra Monads for Free

Danel Ahman, Catalin Hritcu, Kenji Maillard, Guido Martínez, Gordon Plotkin, Jonathan Protzenko, Aseem Rastogi and Nikhil Swamy.

44th ACM SIGPLAN Symposium on Principles of Programming Languages (POPL), pp. 515–529, 2017.

Applications in Security and Cryptography

Project Everest: Perspectives from Developing Industrial-Grade High-Assurance Software

Danel Ahman, Karthikeyan Bhargavan, Barry Bond, Jay Bosamiya, Christopher Brzuska, Antoine Delignat-Lavaud, Cédric Fournet, Aymeric Fromherz, Sydney Gibson, Chris Hawblitzel, Cătălin Hrițcu, Markulf Kohlweiss, Guido Martínez, Haobin Ni, Bryan Parno, Jonathan Protzenko, Tahina Ramananandro, Aseem Rastogi, Exequiel Rivas, Nikhil Swamy and Santiago Zanella-Béguelin.

ACM Transactions on Programming Languages and Systems, vol. 48, no. 2, article 9, pp. 9:1–9:64, 2026.

A Tutorial-Style Introduction to DY*

Bhargavan, Karthikeyan, Bichhawat, Abhishek, Do, Quoc Huy, Hosseyni, Pedram, Küsters, Ralf, Schmitz, Guido and Würtele, Tim.

Protocols, Strands, and Logic: Essays Dedicated to Joshua Guttman on the Occasion of his 66.66th Birthday, pp. 77–97, 2021.

An In-Depth Symbolic Security Analysis of the ACME Standard

Bhargavan, Karthikeyan, Bichhawat, Abhishek, Do, Quoc Huy, Hosseyni, Pedram, Küsters, Ralf, Schmitz, Guido and Würtele, Tim.

Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, pp. 2601–2617, 2021.

EverCrypt: A Fast, Verified, Cross-Platform Cryptographic Provider

Protzenko, Jonathan, Parno, Bryan, Fromherz, Aymeric, Hawblitzel, Chris, Polubelova, Marina, Bhargavan, Karthikeyan, Beurdouche, Benjamin, Choi, Joonwon, Delignat-Lavaud, Antoine, Fournet, Cédric, Kulatova, Natalia, Ramananandro, Tahina, Rastogi, Aseem, Swamy, Nikhil, Wintersteiger, Christoph M. and Zanella-Beguelin, Santiago.

2020 IEEE Symposium on Security and Privacy (SP), pp. 983–1002, 2020.

Everest: Towards a Verified, Drop-in Replacement of HTTPS

Karthikeyan Bhargavan, Barry Bond, Antoine Delignat-Lavaud, Cédric Fournet, Chris Hawblitzel, Catalin Hritcu, Samin Ishtiaq, Markulf Kohlweiss, Rustan Leino, Jay Lorch, Kenji Maillard, Jianyang Pang, Bryan Parno, Jonathan Protzenko, Tahina Ramananandro, Ashay Rane, Aseem Rastogi, Nikhil Swamy, Laure Thompson, Peng Wang, Santiago Zanella-Béguelin and Jean-Karim Zinzindohoué.

2nd Summit on Advances in Programming Languages, 2017.

Implementing and Proving the TLS 1.3 Record Layer

Karthikeyan Bhargavan, Antoine Delignat-Lavaud, Cédric Fournet, Markulf Kohlweiss, Jianyang Pan, Jonathan Protzenko, Aseem Rastogi, Nikhil Swamy, Santiago Zanella Béguelin and Jean Karim Zinzindohoue.

IEEE Security & Privacy, 2017.

Applications in Systems

FastVer: Making Data Integrity a Commodity

Arasu, Arvind, Chandramouli, Badrish, Gehrke, Johannes, Ghosh, Esha, Kossmann, Donald, Protzenko, Jonathan, Ramamurthy, Ravi, Ramananandro, Tahina, Rastogi, Aseem, Setty, Srinath, Swamy, Nikhil, van Renen, Alexander and Xu, Min.

Proceedings of the 2021 International Conference on Management of Data, pp. 89–101, 2021.

Applications in Parsing

Hardening Attack Surfaces with Formally Proven Binary Format Parsers

Nikhil Swamy, Tahina Ramananandro, Aseem Rastogi, Irina Spiridonova, Haobin Ni, Dmitry Malloy, Juan Vazquez, Michael Tang, Omar Cardona and Arti Gupta.

Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI '22), June 13–17, 2022, San Diego, CA, USA, 2022.

Applications in Programming, Program Proof, and Program Analysis

Certified Mergeable Replicated Data Types

Soundarapandian, Vimala, Kamath, Adharsh, Nagar, Kartik and Sivaramakrishnan, KC.

Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation, pp. 332–347, 2022.

AI-assisted Programming

Miscellaneous

Papers about an older version of F*

Gradual Typing Embedded Securely in JavaScript

Swamy, Nikhil, Fournet, Cedric, Rastogi, Aseem, Bhargavan, Karthikeyan, Chen, Juan, Strub, Pierre-Yves and Bierman, Gavin.

Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 425–437, 2014.

Fully Abstract Compilation to JavaScript

Fournet, Cedric, Swamy, Nikhil, Chen, Juan, Dagand, Pierre-Evariste, Strub, Pierre-Yves and Livshits, Benjamin.

Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 371–384, 2013.

Fully Abstract Compilation to JavaScript

Fournet, Cedric, Swamy, Nikhil, Chen, Juan, Dagand, Pierre-Evariste, Strub, Pierre-Yves and Livshits, Benjamin.

SIGPLAN Not., vol. 48, no. 1, pp. 371–384, 2013.