Constraint Handling Rules

Constraint Handling Rules (CHR) is both a theoretical formalism based on logic and a practical programming language based on rules. This book, written by the creator of CHR, describes the theory of CHR and how to use it in practice. It is supported by a website containing teaching materials, online demos, and free downloads of the language. After a basic tutorial, the author describes in detail the CHR language and discusses guaranteed properties of CHR programs. The author then compares CHR with other formalisms and languages and illustrates how it can capture their essential features. Finally, larger programs are introduced and analyzed in detail. The book is ideal for graduate students and lecturers, and for more experienced programmers and researchers, who can use it for self-study. Exercises with selected solutions, and bibliographic remarks are included at the ends of chapters. The book is the definitive reference on the subject.

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

[2]  Ehud Shapiro,et al.  The family of concurrent logic programming languages , 1989, CSUR.

[3]  Thom W. Frühwirth,et al.  Constraint Logic Programming , 1992 .

[4]  Seif Haridi,et al.  Programming Paradigms of the Andorra Kernel Language , 1991, ISLP.

[5]  David S. Warren User-Defined Constraint Handling , 1993 .

[6]  Nachum Dershowitz,et al.  Termination of Rewriting , 1987, J. Symb. Comput..

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

[8]  Seif Haridi,et al.  Kernel Andorra Prolog and its Computation Model , 1990, ICLP.

[9]  Thomas Graf Raisonnement sur les contraintes en programmation en logique , 1989 .

[10]  Gert Smolka Residuation and Guarded Rules for Constraint Logic Programming , 1991, WCLP.

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

[12]  Daniel Le Métayer,et al.  A parallel machine for multiset transformation and its programming style , 1988, Future Gener. Comput. Syst..

[13]  Joxan Jaffar,et al.  Constraint logic programming , 1987, POPL '87.

[14]  Pascal Van Hentenryck Constraint logic programming , 1991, The Knowledge Engineering Review.

[15]  Rina Dechter,et al.  Temporal Constraint Networks , 1989, Artif. Intell..

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

[17]  Akira Aiba,et al.  Constraints Logic Programming Language CAL , 1988, FGCS.

[18]  Jacques Cohen,et al.  A view of the origins and development of Prolog , 1988, CACM.

[19]  Dana S. Scott,et al.  Concurrent constraint programming languages , 1989 .

[20]  Thom W. Frühwirth,et al.  Contraint Logic Programming - An Informal Introduction , 1992, Logic Programming Summer School.