Bound Propagation for Arithmetic Reasoning in Vampire

This paper describes an implementation and experimental evaluation of a recently introduced bound propagation method for solving systems of linear inequalities over the reals and rationals. The implementation is part of the first-order theorem prover Vampire. The input problems are systems of linear inequalities over reals or rationals. Their satisfiability is checked by assigning values to the variables of the system and propagating the bounds on these variables. To make the method efficient, we use various strategies for representing numbers, selecting variable orderings, choosing variable values and propagating bounds. We evaluate our implementation on a large number of examples and compare it with state-of-the-art SMT solvers.

[1]  Leonardo Mendonça de Moura,et al.  Cutting to the Chase , 2011, Journal of Automated Reasoning.

[2]  James H. Davenport,et al.  The complexity of quantifier elimination and cylindrical algebraic decomposition , 2007, ISSAC '07.

[3]  Zohar Manna,et al.  The calculus of computation - decision procedures with applications to verification , 2007 .

[4]  Kenneth L. McMillan,et al.  Generalizing DPLL to Richer Logics , 2009, CAV.

[5]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

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

[7]  P. Smokowski,et al.  Conflict Resolution , 1989, International Conference on Principles and Practice of Constraint Programming.

[8]  Andrei Voronkov,et al.  Solving Systems of Linear Inequalities by Bound Propagation , 2011, CADE.

[9]  Scott Cotton Natural Domain SMT: A Preliminary Assessment , 2010, FORMATS.

[10]  Bruno Dutertre,et al.  A Fast Linear-Arithmetic Solver for DPLL(T) , 2006, CAV.

[11]  Andrea Lodi,et al.  MIPLIB 2010 , 2011, Math. Program. Comput..

[12]  Andreas Seidl,et al.  Efficient projection orders for CAD , 2004, ISSAC '04.

[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]  Andrei Voronkov,et al.  First-Order Theorem Proving and Vampire , 2013, CAV.

[15]  Nachum Dershowitz,et al.  A Clause-Based Heuristic for SAT Solvers , 2005, SAT.

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

[17]  Andrei Voronkov,et al.  Implementing Conflict Resolution , 2011, Ershov Memorial Conference.

[18]  Andrei Voronkov,et al.  GoRRiLA and Hard Reality , 2011, Ershov Memorial Conference.