A Unified Framework for DPLL(T) + Certificates

Satisfiability Modulo Theories (SMT) techniques are widely used nowadays. SMT solvers are typically used as verification backends. When an SMT solver is invoked, it is quite important to ensure the correctness of its results. To address this problem, we propose a unified certificate framework based on DPLL(T), including a uniform certificate format, a unified certificate generation procedure, and a unified certificate checking procedure. The certificate format is shown to be simple, clean, and extensible to different background theories. The certificate generation procedure is well adapted to most DPLL(T)-based SMT solvers. The soundness and completeness for DPLL(T)

[1]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[2]  Armin Biere,et al.  PicoSAT Essentials , 2008, J. Satisf. Boolean Model. Comput..

[3]  D. Déharbe,et al.  Quantifier Inference Rules for SMT proofs , 2011, PxTP.

[4]  Toniann Pitassi,et al.  Propositional Proof Complexity: Past, Present and Future , 2001, Bull. EATCS.

[5]  Clark W. Barrett,et al.  The SMT-LIB Standard Version 2.0 , 2010 .

[6]  Alberto Griggio,et al.  A Simple and Flexible Way of Computing Small Unsatisfiable Cores in SAT Modulo Theories , 2007, SAT.

[7]  Henry A. Kautz,et al.  Understanding the power of clause learning , 2003, IJCAI 2003.

[8]  Albert Oliveras,et al.  6 Years of SMT-COMP , 2012, Journal of Automated Reasoning.

[9]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[10]  Stephan Merz,et al.  Expressiveness + Automation + Soundness: Towards Combining SMT Solvers and Interactive Proof Assistants , 2006, TACAS.

[11]  Cesare Tinelli,et al.  SMT proof checking using a logical framework , 2013, Formal Methods Syst. Des..

[12]  Inês Lynce,et al.  An Overview of Backtrack Search Satisfiability Algorithms , 2003, Annals of Mathematics and Artificial Intelligence.

[13]  Cesare Tinelli,et al.  Solving SAT and SAT Modulo Theories: From an abstract Davis--Putnam--Logemann--Loveland procedure to DPLL(T) , 2006, JACM.

[14]  Sascha Böhme,et al.  Proof Reconstruction for Z3 in Isabelle/HOL , 2009 .

[15]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[16]  Olivier Hermant,et al.  The λΠ-calculus Modulo as a Universal Proof Language , 2012, PxTP.

[17]  Aaron Stump,et al.  Fast and flexible proof checking for SMT , 2009, SMT '09.

[18]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[19]  Michal Moskal,et al.  Rocket-Fast Proof Checking for SMT Solvers , 2008, TACAS.

[20]  Clark Barrett,et al.  Proof Translation and SMT-LIB Benchmark Certification : A Preliminary Report ∗ , 2008 .

[21]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.