Views and Iterators for Generic Constraint Implementations
This paper introduces an architecture for generic constraint implementations based on variable views and range iterators. Views allow, for example, to scale, translate, and negate variables. The paper shows how to make constraint implementations generic and how to reuse a single generic implementation with different views for different constraints. A wide range of applications of views exemplifies their usefulness and their potential for simplifying constraint implementations. We introduce domain operations compatible with views based on range iterators. The paper evaluates the applicability of the approach as well as different implementation techniques for the presented architecture.
In: Recent Advances in Constraints (2005), volume 3978 of Lecture Notes in Artificial Intelligence, pages 118-132. Springer-Verlag, 2006.Copyright Springer-Verlag, the original publication is available at www.springerlink.com