Introduction to Constraint Programming
Xavier Lorca
Abstract
Xavier Lorca
Abstract
Constraint programming is a highly declarative paradigm in which concepts are described in a general way. A constraint can be summarized as a logical relation between the variables involved in a constraint satisfaction problem (CSP). A global constraint allows the expression of the underlying logical relation between a subset, of any size, of the variables involved in a CSP. The propagation algorithm is stopped when the set of constraints “to propagate” is empty. To be able to characterize the behavior of a constraint’s filtering algorithm, this chapter presents the notion of consistency level, and the definitions relative to the two highest levels of consistencies reachable by a constraint, in the case of both single integer variables and where integer and set variables are jointly used. The chapter also presents the overall pattern of articulation to describe completely what a constraint solver is.
OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Constraint programming is a highly declarative paradigm in which concepts are described in a general way. A constraint can be summarized as a logical relation between the variables involved in a constraint satisfaction problem (CSP). A global constraint allows the expression of the underlying logical relation between a subset, of any size, of the variables involved in a CSP. The propagation algorithm is stopped when the set of constraints “to propagate” is empty. To be able to characterize the behavior of a constraint’s filtering algorithm, this chapter presents the notion of consistency level, and the definitions relative to the two highest levels of consistencies reachable by a constraint, in the case of both single integer variables and where integer and set variables are jointly used. The chapter also presents the overall pattern of articulation to describe completely what a constraint solver is.
Key concepts: Local consistency, Constraint programming, Constraint logic programming, Constraint satisfaction, Constraint satisfaction problem, Binary constraint, Constraint (computer-aided design), Constraint satisfaction dual problem