Compiling finite domain constraints to SAT with BEE*

BEE is a compiler which facilitates solving finite domain constraints by encoding them to CNF and applying an underlying SAT solver. In BEE constraints are modeled as Boolean functions which propagate information about equalities between Boolean literals. This information is then applied to simplify the CNF encoding of the constraints. We term this process equi-propagation. A key factor is that considering only a small fragment of a constraint model at one time enables to apply stronger, and even complete reasoning to detect equivalent literals in that fragment. Once detected, equivalences propagate to simplify the entire constraint model and facilitate further reasoning on other fragments. BEE is described in several recent papers. In this paper, after a quick review of BEE, we elaborate on two undocumented details of the implementation: the hybrid encoding of cardinality constraints and complete equi-propagation. We thendescribe on-going work aimed to extend BEE to consider binary representation of numbers.

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

[2]  Albert Oliveras,et al.  Cardinality Networks and Their Applications , 2009, SAT.

[3]  Moayad Fahim Ali,et al.  Fault diagnosis and logic debugging using Boolean satisfiability , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Raymond Reiter,et al.  A Theory of Diagnosis from First Principles , 1986, Artif. Intell..

[5]  Peter Schneider-Kamp,et al.  Optimal Base Encodings for Pseudo-Boolean Constraints , 2010, TACAS.

[6]  Mikolás Janota,et al.  On Computing Backbones of Propositional Theories , 2010, ECAI.

[7]  A. Condon,et al.  Demonstration of a word design strategy for DNA computing on surfaces. , 1997, Nucleic acids research.

[8]  Norbert Manthey Coprocessor 2.0 - A Flexible CNF Simplifier - (Tool Presentation) , 2012, SAT.

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

[10]  Jean-Charles Régin,et al.  A Filtering Algorithm for Constraints of Difference in CSPs , 1994, AAAI.

[11]  Carlos Ansótegui,et al.  Modeling Choices in Quasigroup Completion: SAT vs. CSP , 2004, AAAI.

[12]  James M. Crawford,et al.  Experimental Results on the Application of Satisfiability Algorithms to Scheduling Problems , 1994, AAAI.

[13]  Meir Kalech,et al.  Compiling Model-Based Diagnosis to Boolean Satisfaction , 2012, AAAI.

[14]  Marco Cadoli,et al.  : Compiling problem specifications into SAT , 2005, Artif. Intell..

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

[16]  Chu Min Li,et al.  Equivalent literal propagation in the DLL procedure , 2003, Discret. Appl. Math..

[17]  Donald E. Knuth,et al.  The Art of Computer Programming: Volume 3: Sorting and Searching , 1998 .

[18]  Jingchao Chen,et al.  A New SAT Encoding of the At-Most-One Constraint , 2010 .

[19]  David K. Garnick,et al.  Extremal graphs without three-cycles or four-cycles , 1993, J. Graph Theory.

[20]  Peter J. Stuckey,et al.  Boolean Equi-propagation for Optimized SAT Encoding , 2011, CP.

[21]  Bart Selman,et al.  Heavy-Tailed Distributions in Combinatorial Search , 1997, CP.

[22]  David Thomas,et al.  The Art in Computer Programming , 2001 .

[23]  Toni Mancini,et al.  Evaluating ASP and Commercial Solvers on the CSPLib , 2006, Constraints.

[24]  Alan M. Frisch,et al.  SAT Encodings of the At-Most-k Constraint Some Old , Some New , Some Fast , Some Slow , 2010 .

[25]  Marco Gavanelli The Log-Support Encoding of CSP into SAT , 2007, CP.

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

[27]  Peter J. Stuckey,et al.  Logic programming with satisfiability , 2008, Theory Pract. Log. Program..

[28]  Kenneth E. Batcher,et al.  Sorting networks and their applications , 1968, AFIPS Spring Joint Computing Conference.

[29]  Pascal Van Hentenryck The OPL optimization programming language , 1999 .

[30]  Gerold Jäger An Effective SAT Encoding for Magic Labeling , 2010, CTW.

[31]  Armin Biere,et al.  Efficient CNF Simplification Based on Binary Implication Graphs , 2011, SAT.

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

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

[34]  J. M. Singer,et al.  Searching for backbones — an efficient parallel algorithm for the traveling salesman problem , 1996 .

[35]  W. Wallis,et al.  Vertex-Magic Total Labelings of Graphs , 2002 .

[36]  Joseph A. Gallian,et al.  A Dynamic Survey of Graph Labeling , 2009, The Electronic Journal of Combinatorics.

[37]  Johan de Kleer,et al.  Solving Model-Based Diagnosis Problems with Max-SAT Solvers and Vi e Versa , 2010 .

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

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

[40]  Mutsunori Banbara,et al.  Compiling finite linear CSP into SAT , 2006, Constraints.

[41]  Peter J. Stuckey,et al.  Breaking Symmetries in Graph Representation , 2013, IJCAI.