Encoding Linear Constraints into SAT

Linear integer constraints are one of the most important constraints in combinatorial problems since they are commonly found in many practical applications. Typically, encoding linear constraints to SAT performs poorly in problems with these constraints in comparison to constraint programming (CP) or mixed integer programming (MIP) solvers. But some problems contain a mix of combinatoric constraints and linear constraints, where encoding to SAT is highly effective. In this paper we define new approaches to encoding linear constraints into SAT, by extending encoding methods for pseudo-Boolean constraints. Experimental results show that these methods are not only better than the state-of-the-art SAT encodings, but also improve on MIP and CP solvers on appropriate problems. Combining the new encoding with lazy decomposition, which during runtime only encodes constraints that are important to the solving process that occurs, gives a robust approach to many highly combinatorial problems involving linear constraints.

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

[2]  David L. Dill,et al.  An Online Proof-Producing Decision Procedure for Mixed-Integer Linear Arithmetic , 2003, TACAS.

[3]  Peter J. Stuckey,et al.  MiniZinc: Towards a Standard CP Modelling Language , 2007, CP.

[4]  Toby Walsh,et al.  SAT v CSP , 2000, CP.

[5]  Peter J. Stuckey,et al.  Propagation via lazy clause generation , 2009, Constraints.

[6]  Tobias Philipp,et al.  A More Compact Translation of Pseudo-Boolean Constraints into CNF Such That Generalized Arc Consistency Is Maintained , 2014, KI.

[7]  S. Malik,et al.  Solving the Minimum-Cost Satisfiability Problem Using SAT Based Branch-and-Bound Search , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[8]  Peter J. Stuckey,et al.  Why Cumulative Decomposition Is Not as Bad as It Sounds , 2009, CP.

[9]  Jan Karel Lenstra,et al.  Scheduling subject to resource constraints: classification and complexity , 1983, Discret. Appl. Math..

[10]  Peter J. Stuckey,et al.  To Encode or to Propagate? The Best Choice for Each Constraint in SAT , 2013, CP.

[11]  Rainer Kolisch,et al.  PSPLIB - a project scheduling problem library , 1996 .

[12]  Martin Gebser,et al.  Multi-threaded ASP solving with clasp , 2012, Theory and Practice of Logic Programming.

[13]  Carlos Ansótegui,et al.  Extending Multiple-Valued Clausal Forms with Linear Integer Arithmetic , 2011, 2011 41st IEEE International Symposium on Multiple-Valued Logic.

[14]  Carlos Ansótegui,et al.  Mapping Problems with Finite-Domain Variables into Problems with Boolean Variables , 2004, SAT.

[15]  Rina Dechter,et al.  Proceedings of the 6th International Conference on Principles and Practice of Constraint Programming , 2000 .

[16]  Ian Parberry,et al.  The Pairwise Sorting Network , 1992, Parallel Process. Lett..

[17]  Toby Walsh,et al.  Circuit Complexity and Decompositions of Global Constraints , 2009, IJCAI.

[18]  G. S. Tseitin On the Complexity of Derivation in Propositional Calculus , 1983 .

[19]  Ecnica De Catalunya Solving hard industrial combinatorial problems with SAT , 2013 .

[20]  Michael Codish,et al.  Pairwise Cardinality Networks , 2010, LPAR.

[21]  Peter J. Stuckey,et al.  Boolean Equi-propagation for Concise and Efficient SAT Encodings of Combinatorial Problems , 2013, J. Artif. Intell. Res..

[22]  Peter J. Stuckey,et al.  Lazy Clause Generation Reengineered , 2009, CP.

[23]  Olivier Roussel,et al.  New Encodings of Pseudo-Boolean Constraints into CNF , 2009, SAT.

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

[25]  I. Roig,et al.  Solving hard industrial combinatorial problems with SAT , 2013 .

[26]  Niklas Sörensson,et al.  Translating Pseudo-Boolean Constraints into SAT , 2006, J. Satisf. Boolean Model. Comput..

[27]  Mateu Villaret,et al.  Boosting Weighted CSP Resolution with Shared BDDs? , 2013 .

[28]  Jinbo Huang Universal Booleanization of Constraint Models , 2008, CP.

[29]  Van-Hau Nguyen,et al.  A New Method to Encode the At-Most-One Constraint into SAT , 2015, SoICT.

[30]  Josep Argelich,et al.  Exact Max-SAT solvers for over-constrained problems , 2006, J. Heuristics.

[31]  Albert Oliveras,et al.  The Barcelogic SMT Solver , 2008, CAV.

[32]  Albert Oliveras,et al.  Cardinality Networks: a theoretical and empirical study , 2011, Constraints.

[33]  Peter J. Stuckey,et al.  Improving Linear Constraint Propagation by Changing Constraint Representation , 2003, Constraints.

[34]  Gilles Pesant,et al.  Principles and Practice of Constraint Programming , 2015, Lecture Notes in Computer Science.

[35]  Rainer Kolisch,et al.  PSPLIB - A project scheduling problem library: OR Software - ORSEP Operations Research Software Exchange Program , 1997 .

[36]  Ian P. Gent Arc Consistency in SAT , 2002, ECAI.

[37]  Jimmy H. M. Lee Proceedings of the 17th international conference on Principles and practice of constraint programming , 2011 .

[38]  Tevfik Bultan,et al.  Construction of Efficient BDDs for Bounded Arithmetic Constraints , 2003, TACAS.

[39]  Peter J. Stuckey,et al.  Conflict Directed Lazy Decomposition , 2012, CP.

[40]  Peter J. Stuckey,et al.  Efficient constraint propagation engines , 2006, TOPL.

[41]  Tevfik Bultan,et al.  Efficient BDDs for bounded arithmetic constraints , 2006, International Journal on Software Tools for Technology Transfer.

[42]  Olivier Roussel,et al.  A Translation of Pseudo Boolean Constraints to SAT , 2006, J. Satisf. Boolean Model. Comput..

[43]  Olivier Bailleux,et al.  Efficient CNF Encoding of Boolean Cardinality Constraints , 2003, CP.

[44]  Mutsunori Banbara,et al.  Compiling Finite Linear CSP into SAT , 2006, CP.

[45]  L. D. Moura,et al.  The YICES SMT Solver , 2006 .

[46]  Joost P. Warners,et al.  A Linear-Time Transformation of Linear Inequalities into Conjunctive Normal Form , 1998, Inf. Process. Lett..

[47]  Albert Oliveras,et al.  A Parametric Approach for Smaller and Better Encodings of Cardinality Constraints , 2013, CP.

[48]  Albert Oliveras,et al.  A New Look at BDDs for Pseudo-Boolean Constraints , 2012, J. Artif. Intell. Res..

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

[50]  Robert K. Brayton,et al.  Algorithms for discrete function manipulation , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[51]  Adnan Darwiche,et al.  On Modern Clause-Learning Satisfiability Solvers , 2010, Journal of Automated Reasoning.

[52]  Enav Weinreb,et al.  Monotone circuits for monotone weighted threshold functions , 2006, Inf. Process. Lett..