Proof assistant vs SMT-based verifier
In more detail
The practical trade: SMT tools give results in minutes with no proof engineering and no specification (for determinism) but time out on large or nonlinear problems; proof assistants scale to any property and any size at the cost of expert time. Mature pipelines use both: automatic checks first, proofs for what matters most.
Frameworks that address it
Lean 4 and Mathlib, Picus, Certora Prover, Kani.
Related terms
Circuit soundness, Circuit completeness, Underconstrained circuit, Overconstrained circuit, Symbolic vs computational model, Specification gap, Trusted computing base and verification boundary, Bounded model checking, Equivalence checking, Refinement, Constant-time verification, Arithmetization (R1CS, PLONKish, AIR), Extraction (code to model), Witness generation vs constraints
Getting help
Firms on this index that handle this in practice: zkSecurity, Galois, Veridise, Nethermind (Formal Verification team).