A Comparative Study of Eight Constraint Programming Languages Over the Boolean and Finite Domains

This paper compares the efficiency of a number of Constraint Logic Programming (CLP) systems in the setting of finite domains as well as a specific aspect of their expressiveness (that concerning reification and meta-constraints). There are two key reasons for adopting CLP technology for solving a problem. The first is its expressiveness enabling a declarative solution with readable code which is vital for maintenance and the second is the provision of an efficient implementation for the computationally expensive procedures. However, CLP systems differ significantly both in how solutions may be expressed and the efficiency of their execution and it is important that both these factors are taken into account when choosing the best CLP system for a particular application. This paper aids this choice by illustrating differences between the systems, indicating their particular strengths and weaknesses.

[1]  Mats Carlsson,et al.  An Open-Ended Finite Domain Constraint Solver , 1997, PLILP.

[2]  Pascal Van Hentenryck Constraint satisfaction in logic programming , 1989, Logic programming.

[3]  Frédéric Benhamou,et al.  Interval Constraint Logic Programming , 1994, Constraint Programming.

[4]  Robert M. Haralick,et al.  Increasing Tree Search Efficiency for Constraint Satisfaction Problems , 1979, Artif. Intell..

[5]  Mats Carlsson,et al.  Entailment of Finite Domain Constraints , 1994, ICLP.

[6]  Philippe Codognet,et al.  A Minimal Extension of the WAM for clp(FD) , 1993, ICLP.

[7]  Thom W. Frühwirth,et al.  Constraint Handling Rules , 2009, Constraint Programming.

[8]  Philippe Codognet,et al.  clp(B): Combining Simplicity and Efficiency in Boolean Constraint Solving , 1994, PLILP.

[9]  Ján Paralic,et al.  A Look At Clp: Theory and Application , 1997, Appl. Artif. Intell..

[10]  Christian Schulte Solver An Oz Search Debugger , 1995 .

[11]  Philippe Codognet,et al.  A simple and efficient boolean solver for Constraint Logic Programming , 1996, Journal of Automated Reasoning.

[12]  Pascal Van Hentenryck,et al.  Design, Implementation, and Evaluation of the Constraint Language cc(FD) , 1994, Constraint Programming.

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

[14]  Eugene C. Freuder Principles and Practice of Constraint Programming — CP96 , 1996, Lecture Notes in Computer Science.

[15]  Stéphane N'Dong Prolog IV ou la programmation par contraintes selon PrologIA , 1997, JFPLC.

[16]  J. Ulius Csontt,et al.  A Look at Clp -theory and Application , .

[17]  Arabellastrasse,et al.  Constraint Handling Rules ? , 1995 .

[18]  Nicolas Beldiceanu,et al.  Constraint Logic Programming , 1997 .

[19]  Gert Smolka,et al.  The Oz Programming Model , 1996, Computer Science Today.

[20]  J StuckeyPeter,et al.  The CLP( ℛ ) language and system , 1992 .

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

[22]  Patricia M. Hill,et al.  Boolean and Finite Domain Solvers Compared Using Self Referential Quizzes , 1997, APPIA-GULP-PRODE.

[23]  Roland H. C. Yap,et al.  The CLP( R ) language and system , 1992, TOPL.

[24]  Pascal Van Hentenryck,et al.  Design, Implementation, and Evaluation of the Constraint Language cc(FD) , 1994, Constraint Programming.

[25]  Michel Leconte,et al.  Beyond the Glass Box: Constraints as Objects , 1995, ILPS.

[26]  William S. Havens,et al.  A language for optimizing constraint propagation , 1993 .