Towards "Propagation = Logic + Control"

Constraint propagation algorithms implement logical inference. For efficiency, it is essential to control whether and in what order basic inference steps are taken. We provide a high-level framework that clearly differentiates between information needed for controlling propagation versus that needed for the logical semantics of complex constraints composed from primitive ones. We argue for the appropriateness of our controlled propagation framework by showing that it captures the underlying principles of manually designed propagation algorithms, such as literal watching for unit clause propagation and the lexicographic ordering constraint. We provide an implementation and benchmark results that demonstrate the practicality and efficiency of our framework.

[1]  Roland H. C. Yap,et al.  Constrained Decision Diagrams , 2005, AAAI.

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

[3]  Vijay A. Saraswat,et al.  Concurrent constraint programming , 1989, POPL '90.

[4]  Jimmy Ho-Man Lee,et al.  Increasing Constraint Propagation by Redundant Modeling: an Experience Report , 1999, Constraints.

[5]  Michael J. Maher,et al.  Constraint Logic Programming: A Survey , 1994, J. Log. Program..

[6]  Toby Walsh,et al.  Global Constraints for Lexicographic Orderings , 2002, CP.

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

[8]  Toby Walsh,et al.  Beyond Finite Domains: The All Different and Global Cardinality Constraints , 2005, CP.

[9]  Robert A. Kowalski,et al.  Algorithm = logic + control , 1979, CACM.

[10]  Pascal Van Hentenryck,et al.  The Cardinality Operator: A New Logical Connective for Constraint Logic Programming , 1990, WCLP.

[11]  Thom W. Frühwirth,et al.  Theory and Practice of Constraint Handling Rules , 1998, J. Log. Program..

[12]  Philippe Codognet,et al.  Compiling Constraints in clp(FD) , 1996, J. Log. Program..

[13]  Toby Walsh,et al.  Solving Non-clausal Formulas with DPLL search , 2004, SAT.

[14]  J. Davenport Editor , 1960 .

[15]  Mats Carlsson,et al.  Deriving Filtering Algorithms from Constraint Checkers , 2004, CP.

[16]  Eugene C. Freuder A Sufficient Condition for Backtrack-Free Search , 1982, JACM.

[17]  Joachim Schimpf,et al.  ECLiPSe: A Platform for Constraint Logic Programming , 1997 .

[18]  Toby Walsh,et al.  Propagating Logical Combinations of Constraints , 2005, IJCAI.