ISBN-10:
0262133415
ISBN-13:
9780262133418
Pub. Date:
02/26/1998
Publisher:
MIT Press
Programming with Constraints: An Introduction

Programming with Constraints: An Introduction

by Kimbal Marriott, Peter Stuckey

Hardcover

Current price is , Original price is $85.0. You
Select a Purchase Option
  • purchase options
    $57.51 $85.00 Save 32% Current price is $57.51, Original price is $85. You Save 32%.
  • purchase options

Product Details

ISBN-13: 9780262133418
Publisher: MIT Press
Publication date: 02/26/1998
Series: The MIT Press
Pages: 488
Product dimensions: 8.00(w) x 10.00(h) x 1.25(d)
Age Range: 18 Years

About the Author

Kimbal Marriott leads the MArVL: Monash Adaptive Visualisation Lab and help runs the NICTA Monash Laboratory at Monash University.

Peter Stuckey is Professor in the Department of Computing and Information System at the University of Melbourne.

Table of Contents

Preface
Introduction
Notes
I Constraints
1 Constraints
1.1 Constraints and Valuations
1.2 Modelling with Constraints
1.3 Constraint Satisfaction
1.4 Tree Constraints
1.5 Other Constraint Domains
1.6 Properties of Constraint Solvers
1.7 (*) Determined Variables and Local Propagation
1.8 Summary
1.9 EXercises
1.10 Practical EXercises
1.11 Notes
2 Simplification, Optimization and Implication
2.1 Constraint Simplification
2.2 Projection
2.3 Constraint Simplifiers
2.4 Optimization
2.5 The SimpleX Algorithm
2.6 (*) Canonical Form Simplifiers
2.7 (*) Implication and Equivalence
2.8 Summary
2.9 EXercises
2.10 Practical EXercises
2.11 Notes
3 Finite Constraint Domains
3.1 Constraint Satisfaction Problems
3.2 A Simple Backtracking Solver
3.3 Node and Arc Consistency
3.4 Bounds Consistency
3.5 Generalized Consistency
3.6 Optimization for Arithmetic CSPs
3.7 Summary
3.8 EXercises
3.9 Practical EXercises
3.10 Notes
II Constraint Logic Programming
4 Constraint Logic Programs
4.1 UserDefined Constraints
4.2 Programming with Rules
4.3 Evaluation
4.4 Derivation Trees and Finite Failure
4.5 Goal Evaluation
4.6 Simplified Derivation Trees
4.7 The CLP Scheme
4.8 (*) Independence from Rule Ordering and Literal Selection
4.9 Summary
4.10 EXercises
4.11 Practical EXercises
4.12 Notes
5 Simple Modelling
5.1 Simple Modelling
5.2 Modelling Choice
5.3 Iteration
5.4 Optimization
5.5 Summary
5.6 Practical EXercises
5.7 Notes
6 Using Data Structures
6.1 Records
6.2 Lists
6.3 Association Lists
6.4 Binary Trees
6.5 HierarchicalModelling
6.6 Tree Layout
6.7 Summary
6.8 Practical EXercises
6.9 Notes
7 Controlling Search
7.1 Estimating the Efficiency of a CLP Program
7.2 Controlling Search: An EXample
7.3 Rule Ordering
7.4 Literal Ordering
7.5 Adding Redundant Constraints
7.6 Minimization
7.7 Identifying Deterministic Subgoals
7.8 An EXtended EXample: Bridge Building
7.9 Summary
7.10 EXercises
7.11 Practical EXercises
7.12 Notes
8 Modelling with Finite Domain Constraints
8.1 Domains and Labelling
8.2 CompleX Constraints
8.3 Labelling
8.4 Different Problem Modellings
8.5 An EXtended EXample: Scheduling
8.6 (*) Arc Consistency
8.7 (*) Library Predicates
8.8 Summary
8.9 Practical EXercises
8.10 Notes
9 Advanced Programming Techniques
9.1 EXtending the Constraint Solver
9.2 Combined Symbolic and Arithmetic Reasoning
9.3 Programming Optimization
9.4 Higherorder Predicates
9.5 Negation
9.6 CLP Languages with Dynamic Scheduling
9.7 (*) Meta Programming
9.8 (*) Library Predicates
9.9 Summary
9.10 Practical EXercises
9.11 Notes
10 CLP Systems
10.1 Simple Backtracking Goal Evaluation
10.2 Incremental Constraint Solving
10.3 Efficient Saving and Restoring of the Constraint Store
10.4 Implementing IfThenElse, Once and Negation
10.5 Optimization
10.6 Other Incremental Constraint Solvers
10.7 (*) Incremental Real Arithmetic Solving
10.8 Summary
10.9 EXercises
10.10 Notes
III Other Constraint Programming
Languages
11 Constraint Databases
11.1 Modelling with Constraint Databases
11.2 Bottom Up Evaluation
11.3 BottomUp versus TopDown
11.4 Mimicking TopDown Evaluation BottomUp
11.5 (*) Improving Termination
11.6 (*) Relationship with Relational Databases
11.7 Summary
11.8 EXercises
11.9 Practical EXercises
11.10 Notes
12 Other Constraint Programming Languages
12.1 The CLP Paradigm
12.2 Concurrent Constraint Programming Languages
12.3 Constraint Handling Rules
12.4 Functional Languages
12.5 Term Rewriting
12.6 Imperative Programming Languages
12.7 Constraint Solving Toolkits
12.8 Mathematical Languages
12.9 Notes
References
IndeX

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews