The SMT-LIB Initiative Status Report Silvio Ranise and Cesare Tinelli
The SMT-LIB format Language for specifying theories, logics, and benchmarks Based on many-sorted FOL with equality Flat sort structure: disjoint sorts, no subsorts, no parametric sorts, …
The SMT-LIB format Theory Logic Benchmark Specified by a signature and a sets of axioms or a set of models (integers, reals, arrays, …) Defines the symbols and the models under considerations Logic Defines the set of formulas under consideration for a given theory (linear arithmetic, EUF, …) Benchmark Formula to be tested for satisfiability in a theory
The SMT-LIB repository A dozen theory specifications Two dozen logic specifications ~50,000 benchmarks, mostly from verification applications
Planned format extensions A simplified abstract syntax Parametric types and polymorphic functions Ex.: select: (array ‘alpha) x ‘alpha -> ‘alpha Incremental extension
Planned developments A standard format for unsatisfiability proofs A standard format for models (concrete assignments) A standard set of APIs for SMT solvers An SMT-EXEC infrastructure A searchable benchmarch repository
Planned developments Working groups Language/logic: Proofs: Models: Ranise, Tinelli, … Proofs: Stump, Tinelli, … Models: Barrett, Tinelli, Ranise, …
Planned developments Working groups API Repository SMT-EXEC: Stump, Barrett, Ranise, … Repository Barrett, de Moura, … SMT-EXEC: Stump, de Moura,…
Please contribute!