Integrating Boolean and Mathematical Solving: Foundations, Basic Algorithms, and Requirements

In the last years we have witnessed an impressive advance in the efficiency of boolean solving techniques, which has brought large previously intractable problems at the reach of state-of-the-art solvers. Unfortunately, simple boolean expressions are not expressive enough for representing many real-world problems, which require handling also integer or real values and operators. On the other hand, mathematical solvers, like computer-algebra systems or constraint solvers, cannot handle efficiently problems involving heavy boolean search, or do not handle them at all. In this paper we present the foundations and the basic algorithms for a new class of procedures for solving boolean combinations of mathematical propositions, which combine boolean and mathematical solvers, and we highlight the main requirements that boolean and mathematical solvers must fulfill in order to achieve the maximum benefits from their integration. Finally we show how existing systems are captured by our framework.

[1]  Bart Selman,et al.  Encoding Plans in Propositional Logic , 1996, KR.

[2]  Peter F. Patel-Schneider,et al.  FaCT and DLP , 1998, TABLEAUX.

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

[4]  Fausto Giunchiglia,et al.  Building Decision Procedures for Modal Logics from Propositional Decision Procedures: The Case Study of Modal K(m) , 2000, Inf. Comput..

[5]  William Pugh,et al.  The Omega test: A fast and practical integer programming algorithm for dependence analysis , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[6]  Roberto Sebastiani Integrating SAT Solvers with Math Reasoners: Foundations and Basic Algorithms , 2001 .

[7]  Henrik Reif Andersen,et al.  Difference Decision Diagrams , 1999, CSL.

[8]  Gilles Audemard,et al.  Bounded Model Checking for Timed Systems , 2002, FORTE.

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

[10]  Piergiorgio Bertoli,et al.  A SAT Based Approach for Solving Formulas over Boolean and Linear Mathematical Propositions , 2002, CADE.

[11]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[12]  Enrico Giunchiglia,et al.  SAT-Based Procedures for Temporal Reasoning , 1999, ECP.

[13]  Henrik Reif Andersen,et al.  Fully Symbolic Model Checking of Timed Systems using Difference Decision Diagrams , 2001, SMC@FLoC.

[14]  Daniel S. Weld,et al.  The LPSAT Engine & Its Application to Resource Planning , 1999, IJCAI.

[15]  Fausto Giunchiglia,et al.  Building Decision Procedures for Modal Logics from Propositional Decision Procedure - The Case Study of Modal K , 1996, CADE.

[16]  Alessandro Cimatti,et al.  SAT-Based Bounded Model Checking for Timed Systems , 2002 .

[17]  David Notkin,et al.  Combining Constraint Solving and Symbolic Model Checking for a Class of a Systems with Non-linear Constraints , 1997, CAV.

[18]  Nachum Dershowitz,et al.  In handbook of automated reasoning , 2001 .