Predicate Elimination for Preprocessing in First-Order Theorem Proving

Preprocessing plays a major role in efficient propositional reasoning but has been less studied in first-order theorem proving. In this paper we propose a predicate elimination procedure which can be used as a preprocessing step in first-order theorem proving and is also applicable for simplifying quantified formulas in a general framework of satisfiability modulo theories (SMT). We describe how this procedure is implemented in a first-order theorem prover iProver and show that many problems in the TPTP library can be simplified using this procedure. We also evaluated our preprocessing on the HWMCC’15 hardware verification benchmarks and show that more than 50 % of predicates can be eliminated without increasing the problem sizes.

[1]  Fahiem Bacchus,et al.  Effective Preprocessing with Hyper-Resolution and Equality Reduction , 2003, SAT.

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

[4]  Stephan Schulz,et al.  Simple and Efficient Clause Subsumption with Feature Vector Indexing , 2013, Automated Reasoning and Mathematics.

[5]  Konstantin Korovin,et al.  EPR-based k-induction with Counterexample Guided Abstraction Refinement , 2015, GCAI.

[6]  Frank Pfenning,et al.  Proceedings of the 21st international conference on Automated Deduction: Automated Deduction , 2007 .

[7]  Christoph Weidenbach,et al.  Automated Reasoning: 7th International Joint Conference, IJCAR 2014, Held as Part of the Vienna Summer of Logic, Vienna, Austria, July 19-22, 2014 , 2014 .

[8]  Cesare Tinelli,et al.  Finding conflicting instances of quantified formulas in SMT , 2014, 2014 Formal Methods in Computer-Aided Design (FMCAD).

[9]  Dhiraj K. Pradhan,et al.  NiVER: Non Increasing Variable Elimination Resolution for Preprocessing SAT instances , 2004, SAT.

[10]  Armin Biere,et al.  Effective Preprocessing in SAT Through Variable and Clause Elimination , 2005, SAT.

[11]  Konstantin Korovin,et al.  iProver - An Instantiation-Based Theorem Prover for First-Order Logic (System Description) , 2008, IJCAR.

[12]  Harald Ganzinger,et al.  Refutational theorem proving for hierarchic first-order theories , 1994, Applicable Algebra in Engineering, Communication and Computing.

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

[14]  Mary Sheeran,et al.  Checking Safety Properties Using Induction and a SAT-Solver , 2000, FMCAD.

[15]  Inês Lynce,et al.  Probing-based preprocessing techniques for propositional satisfiability , 2003, Proceedings. 15th IEEE International Conference on Tools with Artificial Intelligence.

[16]  Armin Biere,et al.  Resolve and Expand , 2004, SAT.

[17]  J. A. Robinson,et al.  Handbook of Automated Reasoning (in 2 volumes) , 2001 .

[18]  Nikolaj Bjørner,et al.  Efficient E-Matching for SMT Solvers , 2007, CADE.

[19]  Geoff Sutcliffe,et al.  The TPTP World - Infrastructure for Automated Reasoning , 2010, LPAR.

[20]  Renate A. Schmidt,et al.  The Ackermann approach for modal logic, correspondence theory and second-order reduction , 2012, J. Appl. Log..

[21]  Zijiang Yang,et al.  Iterative Abstraction using SAT-based BMC with Proof Analysis , 2003, ICCAD 2003.

[22]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

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

[24]  Patrick Koopmann,et al.  Uniform Interpolation and Forgetting for ALC Ontologies with ABoxes , 2014, AAAI.

[25]  Andrei Voronkov,et al.  First-Order Theorem Proving and Vampire , 2013, CAV.

[26]  J. van Leeuwen,et al.  Logic for Programming, Artificial Intelligence, and Reasoning , 2001, Lecture Notes in Computer Science.

[27]  Kenneth L. McMillan,et al.  Combining Abstraction Refinement and SAT-Based Model Checking , 2007, TACAS.

[28]  Helmut Veith,et al.  Counterexample-guided abstraction refinement for symbolic model checking , 2003, JACM.

[29]  Andrei Voronkov,et al.  Interpolation and Symbol Elimination , 2009, CADE.

[30]  Christoph Weidenbach,et al.  Computing Small Clause Normal Forms , 2001, Handbook of Automated Reasoning.

[31]  Andrei Voronkov,et al.  Interpolation and Symbol Elimination in Vampire , 2010, IJCAR.

[32]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[33]  Ronen I. Brafman,et al.  A simplifier for propositional formulas with many binary clauses , 2001, IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics).

[34]  Harald Ganzinger,et al.  Resolution Theorem Proving , 2001, Handbook of Automated Reasoning.

[35]  Andrei Voronkov,et al.  Preprocessing techniques for first-order clausification , 2012, 2012 Formal Methods in Computer-Aided Design (FMCAD).

[36]  Dov M. Gabbay,et al.  Quantifier Elimination in Second-Order Predicate Logic , 1992, KR.

[37]  Konstantin Korovin System Description : iProver – An Instantiation-Based Theorem Prover for First-Order Logic , 2008 .

[38]  Konstantin Korovin,et al.  Inst-Gen - A Modular Approach to Instantiation-Based Automated Reasoning , 2013, Programming Logics.

[39]  Armin Biere,et al.  Inprocessing Rules , 2012, IJCAR.

[40]  W. Ackermann Untersuchungen über das Eliminationsproblem der mathematischen Logik , 1935 .

[41]  Dov M. Gabbay,et al.  Second-Order Quantifier Elimination - Foundations, Computational Aspects and Applications , 2008, Studies in logic : Mathematical logic and foundations.

[42]  Stephan Schulz,et al.  System Description: E 1.8 , 2013, LPAR.