What does it mean to be a programming language, anyhow? (2021) [pdf]

Teaching Concurrency (2009)

Beal's Conjecture Revisited

A Knownbits Abstract Domain for the Toy Optimizer, Correctly

Formal verification makes RSA faster — and faster to deploy

Formally verifying security properties of CHERI processors

Knuckledragger, a Semi-Automated Python Proof Assistant

Quint

SciLean: Scientific computing in Lean 4

Provably Correct, Secure, and Leakage-Free Systems

The Hitchhiker's Guide to Logical Verification [pdf] (2023)

Tlsd: Generate (message) sequence diagrams from TLA+ state traces

Natural Number Game

Use of Formal Methods by a Silicon Manufacturer (1988)

Modeling B-trees in TLA+

Composing TLA+ Specifications with State Machines

Simple proofs with Z3Py

Differential Analysis: A Summary

Cryptographic protocol verification with hax

Fuzz Map

the PyPy "known bits" JIT optimization

Translation of Rust's core and alloc crates to Coq for formal verification

A hybrid approach to semi-automated Rust verification

Temporal – Good Things Happen

The Type of Sprintf

Creusot 0.1 (deductive verification tool for Rust)

TLA⁺ Unicode support: Learning to work with others in open source

Verified Rust for low-level systems code

Grothendieck’s use of equality

Easy to use Performance Modeling

More →