Constraint Propagation: Between Abstract Models and ad hoc Strategies

Constraint propagation [10,7,5] (CP) is a cornerstone algorithm of constraint programming, mainly devoted to the computation of local consistency properties of constraint satisfaction problems. The abstract formulation of CP is the combination of a set of reduction functions (black-box solvers) on a domain [8,9,2,1]. Intuitively, there is a dependence relation between functions and domains, such that a function must be applied if a domain it depends on is reduced. The essential property of CP is confluence or strategy-independence. In other words, the order solvers are applied does not influence the output characterized in terms of a common fixed-point of the solvers. Owing to this remark, several strategies based on heuristics, data structures, or knowledge of the solvers have been implemented.