Skip to Content
All memories

Formal Methods & Verification

Browse series · RSS · Atom

Start here: first entry.

  1. Safety/Liveness Catalog: A Practical Checklist for Protocol Specs

    January 1, 2020 · 3 min

    Adversarial-first deep dive (January 2020): Safety/Liveness Catalog: A Practical Checklist for Protocol Specs.

  2. TLA+ for Engineers: Modeling the Minimal Thing That Can Break You

    February 1, 2020 · 3 min

    Design memo (February 2020): TLA+ for Engineers: Modeling the Minimal Thing That Can Break You.

  3. Model Checking at Scale: State Explosion and How to Cheat

    March 1, 2020 · 4 min

    Adversarial-first deep dive (March 2020): Model Checking at Scale: State Explosion and How to Cheat.

  4. Refinement: Proving Your Implementation Matches the Spec

    April 1, 2020 · 3 min

    Engineering notebook entry (April 2020): Refinement: Proving Your Implementation Matches the Spec.

  5. Property-Based Testing: Finding Bugs You Didn’t Imagine

    May 1, 2020 · 3 min

    Threat-model-first analysis (May 2020): Property-Based Testing: Finding Bugs You Didn’t Imagine.

  6. Differential Testing: Using Other Implementations as Oracles

    June 1, 2020 · 4 min

    Spec-driven research note (June 2020): Differential Testing: Using Other Implementations as Oracles.

  7. Fuzzing Protocol Parsers: When Inputs Are Adversarial

    July 1, 2020 · 3 min

    Threat-model-first analysis (July 2020): Fuzzing Protocol Parsers: When Inputs Are Adversarial.

  8. Concurrency Testing in Rust: Loom, Schedules, and Determinism

    August 1, 2020 · 3 min

    Adversarial-first deep dive (August 2020): Concurrency Testing in Rust: Loom, Schedules, and Determinism.

  9. Symbolic Execution: When Brute Force Becomes Logic

    September 1, 2020 · 3 min

    Correctness-focused deep dive (September 2020): Symbolic Execution: When Brute Force Becomes Logic.

  10. Verified Crypto Interfaces: Constant-Time Boundaries and Misuse Resistance

    October 1, 2020 · 3 min

    Adversarial-first deep dive (October 2020): Verified Crypto Interfaces: Constant-Time Boundaries and Misuse Resistance.

  11. Designing APIs for Correctness: Types, Lifetimes, and Capabilities

    November 1, 2020 · 3 min

    Engineering notebook entry (November 2020): Designing APIs for Correctness: Types, Lifetimes, and Capabilities.

  12. Spec-Driven Development: Making the Spec the Center of Gravity

    December 1, 2020 · 4 min

    Design memo (December 2020): Spec-Driven Development: Making the Spec the Center of Gravity.