Skip to main content
Log in

View-based propagation of decomposable constraints

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Constraints that may be obtained by composition from simpler constraints are present, in some way or another, in almost every constraint program. The decomposition of such constraints is a standard technique for obtaining an adequate propagation algorithm from a combination of propagators designed for simpler constraints. The decomposition approach is appealing in several ways. Firstly because creating a specific propagator for every constraint is clearly infeasible since the number of constraints is infinite. Secondly, because designing a propagation algorithm for complex constraints can be very challenging. Finally, reusing existing propagators allows to reduce the size of code to be developed and maintained. Traditionally, constraint solvers automatically decompose constraints into simpler ones using additional auxiliary variables and propagators, or expect the users to perform such decomposition themselves, eventually leading to the same propagation model. In this paper we explore views, an alternative way to create efficient propagators for such constraints in a modular, simple and correct way, which avoids the introduction of auxiliary variables and propagators.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Balasubramaniam, D., Jefferson, C., Kotthoff, L., Miguel, I., Nightingale, P. (2012). An automated approach to generating efficient constraint solvers. In Proceedings of the 2012 International conference on software engineering, ICSE 2012 (pp. 661–671). Piscataway, NJ, USA, IEEE Press.

    Google Scholar 

  2. Ball, T., Podelski, A., Rajamani, S.K. (2003). Boolean and Cartesian abstraction for model checking C programs. International Journal on Software Tools for Technology Transfer (STTT), 5(1):49–58.

    Article  Google Scholar 

  3. Beldiceanu, N., Carlsson, M., Rampon, J.-X. (2010). Global constraint catalog. The Internet.

  4. Benhamou, F. (1995). Interval constraint logic programming. In Podelski, A. (Ed.), Constraint programming: basics and trends, Lecture Notes in Computer Science (Vol. 910, pp. 1–21). Springer.

  5. Benhamou, F. (1996). Heterogeneous constraint solving. In Algebraic and logic programming, ALP’96, Lecture Notes in Computer Science (Vol. 1139, pp. 62–76). Springer-Verlag.

  6. Carlson, B. (1995). Compiling and executing finite domain constraints. PhD thesis, Uppsala University.

  7. Cheng, K.C.K., & Yap, R.H.C. (2008). Maintaining generalized arc consistency on ad hoc r-ary constraints. In Stuckey, P.J. (Ed.), Principles and practice of constraint programming, CP’08, Lecture Notes in Computer Science (Vol. 5202, pp. 509–523). Springer.

  8. Correia, M. (2010). Modern techniques for constraint solving: The CaSPER experience. PhD thesis, Universidade Nova de Lisboa. Pedro Barahona (superv.).

  9. Correia, M., & Barahona, P. (2008). On the efficiency of impact based heuristics. In Principles and practice of constraint programming, CP’08, Lecture Notes in Computer Science (Vol. 5202, pp. 608–612). Springer,

  10. Correia, M., Barahona, P., Azevedo, F. (2005). CaSPER: A programming environment for development and integration of constraint solvers. In Azevedo, F. (Ed.) Workshop on constraint programming beyond finite integer domains, BeyondFD’05.

  11. Frisch, A.M., Grum, M., Jefferson, C., Hernandez, B.M., Miguel, I. (2005). The essence of essence: A constraint language for specifying combinatorial problems. In Proceedings of the 20th international joint conference on artificial intelligence (pp. 73–88).

  12. Gecode (2010). Gecode: Generic constraint development environment. The Internet.

  13. Gent, I.P., Jefferson, C., Miguel, I. (2006). Minion: A fast scalable constraint solver. In European conference on artificial intelligence, ECAI’06 (pp. 98–102). IOS Press.

  14. Gent, I.P., Jefferson, C., Miguel, I. (2006) Watched literals for constraint propagation in minion. In Benhamou, F. (Ed.) Principles and practice of constraint programming, CP’06, Lecture Notes in Computer Science (Vol. 4204, pp. 182–197). Springer.

  15. Gent, I.P., Jefferson, C., Miguel, I., Nightingale, P. (2007). Data structures for generalised arc consistency for extensional constraints. In Conference on artificial intelligence, AAAI’07 (pp. 191–197). AAAI Press.

  16. Gent, I.P., & Walsh, T. (1999). CSPLib: A benchmark library for constraints. Technical report, APES-09-1999.

  17. Hentenryck, P.V., Saraswat, V., Deville, Y. (1992). Constraint processing in cc(FD). Technical report, Brown University.

  18. ILOG (2003). ILOG S olver 6.0 Reference Manual. ILOG s.a.

  19. Lopez-Ortiz, R., Quimper, C.-G., Tromp, J., Beek, P.V. (2003). A fast and simple algorithm for bounds consistency of the all different constraint. In International joint conference on artificial intelligence, IJCAI’03 (pp. 245–250). Morgan Kaufmann Publishers, Inc.

  20. Maher, M.J. (2002). Propagation completeness of reactive constraints. In International conference on logic programming, ICLP’02, Lecture Notes in Computer Science (Vol. 2401, pp. 148–162). Springer.

  21. Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G. (2007). Minizinc: Towards a standard CP modelling language. In Bessière, C. (Ed.), Principles and practice of constraint programming, CP’07, Lecture Notes in Computer Science (Vol. 4741, pp. 529–543). Springer

  22. Rossi, F., Beek, P.V., Walsh, T. (Eds.) (2006). Handbook of constraint programming. Foundations of artificial intelligence. Elsevier Science.

  23. Schulte, C., & Stuckey, P.J. (2004). Speeding up constraint propagation. In Principles and practice of constraint programming, CP’04, Lecture Notes on Computer Science (Vol. 3258, pp. 619–633). Spinger.

  24. Schulte, C., & Tack, G. (2005). Views and iterators for generic constraint implementations. In Recent advances in constraints, Lecture Notes in Computer Science (Vol. 3978, pp. 118–132). Springer.

  25. Schulte, C., & Tack, G. (2012). View-based propagator derivation. In Constraints (pp. 1–33).

  26. Tack, G. (2009). Constraint propagation—models, techniques, implementation. Doctoral dissertation, Saarland University.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marco Correia.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Correia, M., Barahona, P. View-based propagation of decomposable constraints. Constraints 18, 579–608 (2013). https://doi.org/10.1007/s10601-013-9140-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-013-9140-8

Keywords

Navigation