Synthesis of Constraint Algorithms.
Andrew R. Smith · 1993
Introduction Constraint propagation is one of the key operations on constraints in Constraint Programming. In a constraint program, a constraint set partially characterizes objects of interest and their relationships. As committments are made that further characterize some object, we want to infer consequences of those committments and add those consequences as new constraints. Efficiency concerns drive us to look closely at the representation of constraints, inference procedures for solving constraints and deriving consequences, and the capture of inferred consequences as new constraints. We report here on our current efforts at developing automated methods for deriving problem-specific constraint propagation code. This effort is part of a broader development of automated tools for transforming formal specifications into efficient and correct programs. The KIDS system [8] serves as the testbed for our experiments and provides tools for performing deductive inference, algorith