mogoz

Formal Methods

tags
Math , Concurrency , Algorithms

Intro

  • Different formalismsexternal link often have different ergonomics when it comes to different particular systems and properties, and the matter of personal aesthetic preference also plays a big role.
  • At the end of the day, many those formalisms have similar expressivity (i.e., they can describe roughly the same set of systems and the same set of properties)

Theorem Provers and Formal Spec Tools

  • Formal Logic : formal specification (description) + formal proof
  • Writing formal specification is different skillset from writing formal proofs.
  • You can write formal specification without knowing how to write formal proof
Name Type
Alloy Spec Tool
TLA+ Spec Tool
Z3 Model Checker
Lean Proof Writing
Coq Proof Writing
Isablle Proof Writing

Formal specification first

Temporal Logic of Action(TLA+)

Alloy

Proof writing first

Lean and Coq are based on Lambda calculus

Lean

Coq

Model Checkers

SMT Solvers

Satisfiability Modulo Theories Solver

Z3

Resources

Links to this note