Abstract
This paper presents a novel domain-consistency algorithm which does not maintain supports dynamically during propagation, but rather maintains forbidden values. It introduces the optimal NAC4 (negative AC4) algorithm based on this idea, as an instance of the generic algorithm AC5. The paper then shows how forbidden values and supports can be used jointly to achieve domain consistency on logical combinations of constraints and to compute validity as well as entailment of constraints. The combination of NAC4 and AC4, denoted byPNAC4, allows to achieve domain consistency in time O(ed) for classes of constraints in which the number of supports is O(d 2) but the number of forbidden values is O(d), or conversely. The paper also presents a simple variant of AC3, denoted PNAC3. Both PNAC4 and PNAC3 are especially efficient on classes of constraints offering a O(1) getSupports or getForbidden function. Experimental results show that, on these particular classes of constraints, the joint exploitation of supports and forbidden values outperforms the standard AC algorithms, and that the use of a specialized getSupports or getForbidden function enhances the efficiency of the algorithms, especially for PNAC3 which is very close to the efficiency of totally dedicated consistency algorithms.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Bacchus, F., & Walsh, T. (2005). Propagating logical combinations of constraints. In IJCAI (pp. 35–40).
Bessière, C. (1994). Arc-consistency and arc-consistency again. Artificial Intelligence, 65(1), 179–190.
Bessière, C. (2006). Constraint propagation. In F. Rossi, P.V. Beek, T. Walsh (Eds.), Handbook of constraint programming. New York: Elsevier Science Inc.
Bessière, C., & Régin, J.C. (1997). Arc consistency for general constraint networks: preliminary results. In IJCAI (pp. 398–404).
Bessière, C., & Régin, J.C. (1998). Local consistency on conjunctions of constraints. In ECAI-98, proceedings workshop on non binary constraints (pp. 53–60).
Bessière, C., Régin, J.C., Yap, R.H.C., Zhang, Y. (2005). An optimal coarse-grained arc consistency algorithm. Artificial Intelligence, 165(2), 165–185.
Boussemart, F., Hemery, F., Lecoutre, C., Sais, L. (2004). Support inference for generic filtering. In CP (pp. 721–725).
Cheng, K.C.K., & Yap, R.H.C. (2008). Maintaining generalized arc consistency on ad hoc r-ary constraints. In CP’08 (pp. 509–523). Springer.
Cheng, K.C.K., & Yap, R.H.C. (2010). An mdd-based generalized arc consistency algorithm for positive and negative table constraints and some global constraints. Constraints, 15(2), 149–204.
Deville, Y., & Van Hentenryck, P. (2010). Domain consistency with forbidden values. In Cohen, D. (ed.) Principles and practice of constraint programming—CP 2010—16th international conference, CP 2010, St. Andrews, Scotland, UK, September 6–10, 2010. Proceedings, Lecture Notes in Computer Science (vol. 6308, pp. 191–205). Springer.
Dynadec: Comet (2011). www.dynadec.com.
Gent, I.P., Jefferson, C., Miguel, I., Nightingale, P. (2007). Data structures for generalised arc consistency for extensional constraints. In AAAI’07 (pp. 191–197).
Jefferson, C., Moore, N.C.A., Nightingale, P., Petrie, K.E. (2010). Implementing logical connectives in constraint programming. Artificial Intelligence, 174, 1407–1429. doi:10.1016/j.artint.2010.07.001.
Katsirelos, G., Walsh, T. (2007). A compression algorithm for large arity extensional constraints. In CP’07 (pp. 379–393). Springer.
Lecoutre, C. (2009). Constraint networks. Techniques and algorithms. ISTE/Wiley.
Lecoutre, C., & Hemery, F. (2007). A study of residual supports in arc consistency. In Proceedings of the 20th international joint conference on Artifical intelligence (pp. 125–130). San Francisco: Morgan Kaufmann Publishers Inc. http://dl.acm.org/citation.cfm?id=1625275.1625294.
Lecoutre, C., Likitvivatanavong, C., Shannon, S., Yap, R., Zhang, Y. (2008). Maintaining arc consistency with multiple residues. Constraint Programming Letters(CPL), 2, 3–19.
Lecoutre, C., & Szymanek, R. (2006). Generalized arc consistency for positive table constraints. In Proceedings of CP 06 (pp. 284–298).
Lhomme, O. (2004). Arc-consistency filtering algorithms for logical combinations of constraints. In CPAIOR (pp. 209–224).
Mackworth, A.K. (1977). Consistency in networks of relations. Artificial Intelligence, 8(1), 99–118.
Mehta, D., & van Dongen, M.R.C. (2005). Reducing checks and revisions in coarse-grained MAC algorithms. In IJCAI (pp. 236–241).
Mohr, R., & Henderson, T. (1986). Arc and path consistency revisited. Artificial Intelligence, 28, 225–233.
Mohr, R., & Henderson, T.C. (1986). Arc and path consistency revisited. Artificial Intelligence, 28(2), 225–233.
Saraswat, V. (1993). Concurrent constraint programming. Cambridge: MIT Press.
Schulte, C. (2000). Programming deep concurrent constraint combinators. In Proceedings of the second international workshop on practical aspects of declarative languages, PADL ’00 (pp. 215–229). London: Springer. http://dl.acm.org/citation.cfm?id=645770.667779.
Van Hentenryck, P., & Deville, Y. (1991). The cardinality operator: a new logical connective for constraint logic programming. In ICLP (pp. 745–759).
Van Hentenryck, P., Deville, Y., Teng, C.M. (1992). A generic arc-consistency algorithm and its specializations. Artificial Intelligence, 57(2–3), 291–321.
Van Hentenryck, P., Saraswat, V.A., Deville, Y. (1994). Design, implementation, and evaluation of the constraint language cc(fd). In A. Podelski (Ed.), Constraint programming: basics and trends (pp. 293–316). Springer.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Deville, Y., Van Hentenryck, P. & Mairy, JB. Domain consistency with forbidden values. Constraints 18, 377–403 (2013). https://doi.org/10.1007/s10601-012-9135-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-012-9135-x