Clp(B): Combining simplicity and efficiency in boolean Constraint solving

  • Philippe Codognet
  • Daniel Diaz
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 844)


We present the design and the implementation of clp(B): a boolean constraint solver in the Constraint Logic Programming paradigm. This solver is based on local propagation methods and follows the “glassbox” approach of compiling high-level constraints into primitive low-level ones. We detail its integration into the WAM showing that the necessary extension is truly minimal since only four new instructions are added. The resulting solver is around an order of magnitude faster than other existing boolean solvers.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    H. Aït-Kaci. Warren's Abstract Machine, A Tutorial Reconstruction. Logic Programming Series, MIT Press, Cambridge, MA, 1991.Google Scholar
  2. 2.
    H. Bennaceur and G. Plateau. FASTLI: An Exact Algorithm for the Constraint Satisfaction Problem: Application to Logical Inference. Research Report, LIPN, Universite Paris-Nord, Paris, France, 1991.Google Scholar
  3. 3.
    H. Bennaceur and G. Plateau. Logical Inference Problem in Variables 0/1. in IFORS 93 Conference, Lisboa, Portugal, 1993.Google Scholar
  4. 4.
    P. Codognet and D. Diaz. Boolean Constraint Solving Using clp(FD). In International Logic Programming Symposium, Vancouver, British Columbia, Canada, MIT Press 1993.Google Scholar
  5. 5.
    P. Codognet and D. Diaz. Compiling Constraint in clp(FD). draft, 1993.Google Scholar
  6. 6.
    P. Codognet and D. Diaz. Local Propagation Methods for Solving Boolean Constraints in Constraint Logic Programming draft, 1993.Google Scholar
  7. 7.
    A. Colmerauer. An introduction to PrologIII. Communications of the ACM, no. 28 (4), 1990, pp 412–418.Google Scholar
  8. 8.
    M. M. Corsini and A. Rauzy. CLP(B): Do it yourself. In GULP'93, Italian Conference on Logic Programming, Gizzeria Lido, Italy, 1993.Google Scholar
  9. 9.
    D. Diaz and P. Codognet. A Minimal Extension of the WAM for clp(FD). In 10th International Conference on Logic Programming, Budapest, Hungary, The MIT Press 1993.Google Scholar
  10. 10.
    J. Jaffar and J-L. Lassez. Constraint Logic Programming. In Principles Of Programming Languages, Munich, Germany, January 1987.Google Scholar
  11. 11.
    A. K. Mackworth. Consistency in Networks of Relations. Artificial Intelligence 8 (1977), pp 99–118.Google Scholar
  12. 12.
    J-L. Massat. Using Local Consistency Techniques to Solve Boolean Constraints. In Constraint Logic Programming: elected Research, A. Colmerauer and F. Benhamou (Eds.). The MIT Press, 1993.Google Scholar
  13. 13.
    A. Rauzy. Adia. Technical report, LaBRI, Université Bordeaux I, 1991.Google Scholar
  14. 14.
    A. Rauzy. Using Enumerative Methods for Boolean Unification. In Constraint Logic Programming: Selected Research, A. Colmerauer and F. Benhamou (Eds.). The MIT Press, 1993.Google Scholar
  15. 15.
    A. Rauzy. Some Practical Results on the SAT Problem, Draft, 1993.Google Scholar
  16. 16.
    V. Saraswat. The Category of Constraint Systems is Cartesian-Closed. In Logic In Computer Science, IEEE Press 1992.Google Scholar
  17. 17.
    D. S. Scott Domains for Denotational Semantics. In ICALP'82, International Colloquium on Automata Languages and Programming, 1982.Google Scholar
  18. 18.
    T. E. Uribe and M. E. Stickel Ordered Binary Decision Diagrams and the Davis-Putnam Procedure. In 1st International Conference on Constraints in Computational Logics, Munich, Germany, 1994.Google Scholar
  19. 19.
    P. Van Hentenryck. Constraint Satisfaction in Logic Programming. Logic Programming Series, The MIT Press, Cambridge, MA, 1989.Google Scholar
  20. 20.
    P. Van Hentenryck, V. Saraswat and Y. Deville. Constraint Processing in cc(FD). Draft, 1991.Google Scholar
  21. 21.
    P. Van Hentenryck, H. Simonis and M. Dincbas. Constraint Satisfaction Using Constraint Logic Programming. Artificial Intelligence no 58, pp 113–159, 1992.Google Scholar
  22. 22.
    D. H. D. Warren. An Abstract Prolog Instruction Set. Technical Report 309, SRI International, Oct. 1983.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Philippe Codognet
    • 1
  • Daniel Diaz
    • 1
  1. 1.INRIA-RocquencourtLe Chesnay CedexFrance

Personalised recommendations