## Essentials of Constraint ProgrammingThe use of constraints had its scientific and commercial breakthrough in the 1990s. Programming with constraints makes it possible to model and specify problems with uncertain, incomplete information and to solve combi natorial problems, as they are abundant in industry and commerce, such as scheduling, planning, transportation, resource allocation, layout, design, and analysis. This book is a short, concise, and complete presentation of constraint programming and reasoning, covering theoretical foundations, algorithms, implementations, examples, and applications. It is based on more than a decade of experience in teaching and research about this subject. This book is intended primarily for graduate students, researchers, and practitioners in diverse areas of computer science and related fields, including programming languages, computational logic, symbolic computation, and ar tificial intelligence. The book is complemented by a web-page with teaching material, software, links, and more. We take the reader on a step-by-step journey through the world of constraint-based programming and constraint reasoning. Feel free to join in ... Acknowledgements Thorn thanks his wife Andrea and his daughter Anna - for everything. He dedicates his contribution to the book to the memory of his mother, Grete. Slim thanks his wife N abila and his daughters Shirine and Amira for their ongoing support and patience. |

### What people are saying - Write a review

We haven't found any reviews in the usual places.

### Contents

III | 7 |

IV | 9 |

V | 13 |

VI | 14 |

VIII | 15 |

IX | 19 |

X | 20 |

XI | 23 |

XLV | 77 |

XLVI | 78 |

XLVII | 81 |

XLVIII | 83 |

XLIX | 84 |

L | 86 |

LI | 90 |

LII | 93 |

XII | 25 |

XIV | 26 |

XV | 29 |

XVII | 31 |

XVIII | 32 |

XX | 33 |

XXI | 38 |

XXII | 39 |

XXIII | 41 |

XXIV | 42 |

XXVI | 43 |

XXVII | 46 |

XXIX | 47 |

XXX | 49 |

XXXI | 51 |

XXXII | 53 |

XXXIV | 54 |

XXXV | 56 |

XXXVI | 58 |

XXXVII | 59 |

XXXVIII | 61 |

XXXIX | 63 |

XL | 64 |

XLI | 67 |

XLII | 69 |

XLIII | 70 |

XLIV | 73 |

### Common terms and phrases

algorithm Allowed atomic constraints allowed constraints answer constraint arc consistency arithmetic artificial intelligence binary Boolean constraints built-in constraint CCLP CHR constraint CHR program CHRV clause CLP languages Confluence conjunction Constraint Handling Rules constraint logic programming constraint programming constraint solver constraint store constraint symbols constraint system constraint theory declarative semantics defined Definition disjunction domain constraint domain(X enumeration domains eq f equations example failed derivations false first-order first-order logic formula F function symbols given guard Herbrand Herbrand universe implemented infinite integers interval domains linear polynomial logical reading LP calculus n-ary negated constraints negation normal form non-determinism occur operational semantics predicate symbols program and G programming languages Prolog Prolog II quantifiers radio cell rational trees resolution calculus result satisfaction-complete senders sequence signature Simplify solution solved form Soundness and Completeness straint substitution successful derivation syntactic equality syntax theorem timetabling tion transition rules Unfold values variable elimination