arXiv · 2611.00185
Blazing-Fast SMT-LIB Parsing for Rust and Lean
Abstract
SMT-LIB is a standard input format for Satisfiability Modulo Theories (SMT) solvers. However, parsing the format is non-trivial and can become a bottleneck, e.g. when retrieving benchmark metadata or normalising the input for solvers. We introduce blazing-smtlib, a Rust parsing library for SMT-LIB, and BSmtLib, its port to Lean. We outline the library API we designed for composability and extensibility (including non-standard SMT-LIB commands), and discuss our implementation decisions for fast lexing and parsing. We proved that our lexing and parsing with Lean-specific optimisations match our formalised reading of the SMT-LIB syntax. We measured performance on a representative sample from the 2025 SMT-LIB corpus and found that blazing-smtlib is more than 6 times faster on the geometric mean than previous parsing libraries and BSmtLib is faster or comparable to them.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Jan Onderka, Armin Biere, Henrik Böving. 2026-10-30. Blazing-Fast SMT-LIB Parsing for Rust and Lean. https://arxiv.org/abs/2611.00185
Cite the original work for its findings. Save a collection to share your selection of sources.