English

Domain Views for Constraint Programming

Artificial Intelligence 2014-01-22 v1 Programming Languages

Abstract

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)y = f(x) by delegating all (domain and constraint) operations on variable yy to variable xx. 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.

Cite

@article{arxiv.1401.5341,
  title  = {Domain Views for Constraint Programming},
  author = {Pascal Van Hentenryck and Laurent Michel},
  journal= {arXiv preprint arXiv:1401.5341},
  year   = {2014}
}

Comments

Workshop: TRICS13: Techniques foR Implementing Constraint programming, September 2013, CP, Uppsala

R2 v1 2026-06-22T02:51:13.322Z