Views and Iterators for Generic Constraint Implementations

Christian Schulte, Guido Tack.

[pdf | bibtex]

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. Applications of views exemplify their usefulness and their potential for simplifying constraint implementations. We introduce domain operations compatible with views based on range iterators. The paper evaluates different implementation techniques for the presented architecture.

In: Christian Schulte, Fernando Silva, Ricardo Rocha, editors, Proceedings of the Fifth International Colloqium on Implementation of Constraint and Logic Programming Systems, Sitges, Spain, pages 37-48. October, 2005.