# Domain Views for Constraint Programming

arXiv: https://arxiv.org/abs/1401.5341 · HTML: https://mlsanity.com/paper/1401.5341/

## Key facts

- Cited by 2 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 21 Jan 2014.

## Built on by (most cited first, 2 of 2)

- [Sequence Variables: A Constraint Programming Computational Domain for Routing and Sequencing](https://mlsanity.com/paper/2510.09373/) (2025)
- [Translating finite-domain integer constraint models to CP/SMT/ILP/PB/SAT solvers with CPMpy](https://mlsanity.com/paper/2608.15143/) (2026)

## Abstract (arXiv)

Views are a standard abstraction in constraint programming: They make it possible to implement a single version of each constraint, while avoiding to create new variables and constraints that would slow down propagation. Traditional constraint-programming systems provide the concept of em variable views which implement a view of the type y = f(x) by delegating all (domain and constraint) operations on variable y to variable x. This paper proposes the alternative concept of em domain views which only delegate domain operations. Domain views preserve the benefits of variable views but simplify the implementation of value-based propagation. Domain views also support non-injective views compositionally, expanding the scope of views significantly. Experimental results demonstrate the practical benefits of domain views.
