arXiv · 2611.05668
Sundance: A Simple SMT Solver for Program Verification
Abstract
We present Sundance, an SMT solver for program verification written in about 13,600 lines of Rust. Sundance combines the Cadical SAT solver with congruence closure, linear arithmetic, algebraic datatypes, and pattern-based quantifier instantiation. Sundance produces eDRAT proofs for every unsat answer. On 21,531 queries from Verus, Dafny, and F*, Sundance is comparable to existing solvers, with 26--38 times fewer lines of code than Z3 and cvc5. We further show that its components can be swapped for Z3's arithmetic solver, MiniSat, and the Semper e-graph. We have open sourced Sundance.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Amar Shah, Benjamin F. Jones, Can Cebeci, Jason Z. S. Hu, Lee A. Barnett, Rémi Delmas, Marijn Heule, Bryan Parno, Bruno Dutertre. 2026-11-03. Sundance: A Simple SMT Solver for Program Verification. https://arxiv.org/abs/2611.05668
Cite the original work for its findings. Save a collection to share your selection of sources.