Principles and Practice of Constraint Programming
This collection of twenty-three original papers represents the first effort to bring together the work of constraint programming researchers scattered across multiple disciplines and across the world.
This collection of twenty-three original papers represents the first effort to bring together the work of constraint programming researchers scattered across multiple disciplines and across the world. The collection contributes to the understanding of the common principles of this emerging general paradigm, the investigation of its theoretical foundations as well as applications to real-world computing problems. It is organized around themes of concurrency and reactive systems, languages and environments, algorithms, computer graphics, and artificial intelligence.
Constraint programming aims at supporting a wide range of complex applications which are often modeled naturally in terms of constraints. Early work, in the 1960s and 1970s, made use of constraints in computer graphics, user interfaces, and artificial intelligence. Such work introduced a declarative component in otherwise-procedural systems to reduce the development effort. The mid-1980s have witnessed the emergence of general-purpose programming languages based on constraints, such as constraint logic programming and concurrent constraint programming, with significant applications in academia and industry. Today, an increasing number of researchers from all over the map of computing are looking at different aspects of this new computational paradigm.