Skip to main content
Log in

Reformulating Table Constraints using Functional Dependencies—An Application to Explanation Generation

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

We present a novel approach to automatically reformulating constraints defined as tables of allowed assignments to variables. Constraints of this form are common in a variety of settings. Specifically, we propose an approach in which a high arity table constraint is reformulated as a conjunction of lower arity constraints. The reformulation is logically equivalent to the original constraint. We demonstrate that by using functional dependencies from the field of database design such reformulations can be found. We apply the approach to the problem of generating explanations as minimal conflicts. We show that reformulations can be found that yield compact explanations of inconsistency by reducing both the number of variables required to explain inconsistency and the arity of the largest constraint involved in the explanation. We demonstrate our approach on real-world datasets with positive results.

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. Amilhastre, J., Fargier, H., & Marguis, P. (2002). Consistency restoration and explanations in dynamic CSPs – application to configuration. Artificial Intelligence, 135,199–234.

    Article  MATH  MathSciNet  Google Scholar 

  2. Bailey, J., & Stuckey, P. J. 2005. Discovery of minimal unsatisfiable subsets of constraints using hitting set dualization. In Proceedings of PADL (pp. 174–186).

  3. Beeri, C., Dowd, M., Fagin, R., & Statman, R. (1984). On the structure of armstrong relations for functional dependencies. Journal of the ACM, 31(1), 30–46.

    Article  MATH  MathSciNet  Google Scholar 

  4. Beeri, C., Fagin, R., & Howard, J. H. (1977). A complete axiomatization for functional and multivalued dependencies in database relations. In D. C. P. Smith (Ed.), SIGMOD Conference (pp. 47–61). ACM.

  5. Bessière, C., & Régin, J.-C. (1997). Arc consistency for general constraint networks: Preliminary results. In IJCAI (Vol. 1, pp. 398–404).

  6. de Kleer, J., & Williams, B. C. (1987). Diagnosing multiple faults. Artificial Intelligence, 32(1), 97–130.

    Article  MATH  Google Scholar 

  7. Doyle, J. (1979). A truth maintenance system. Artificial Intelligence, 12, 231–272.

    Article  MathSciNet  Google Scholar 

  8. Freuder, E. C. (1996). In pursuit of the holy grail. ACM Computing Surveys, 28(4), 63.

    Article  Google Scholar 

  9. Garey, M. R., & Johnson, D. S. (1979). Computers and intractability: A guide to the theory of NP-completeness. Series of books in the mathematical sciences. New York: W.H.Freeman.

    Google Scholar 

  10. Gyssens, M., Jeavons, P., & Cohen, D. A. (1994). Decomposing constraint satisfaction problems using database techniques. Artificial Intelligence, 66(1), 57–89.

    Article  MATH  MathSciNet  Google Scholar 

  11. Huhtala, Y., Kärkkäinen, J., Porkka, P., Toivonen, H. (1999). Tane: An efficient algorithm for discovering functional and approximate dependencies. Computer journalen, 42(2), 100–111.

    Article  MATH  Google Scholar 

  12. Junker, U. (2004). QuickXplain: Preferred explanations and relaxations for over-constrained problems. In AAAI (pp. 167–172).

  13. Jussien, N. (2003). The versatility of using explanations within constraint programming. Research Report 03-04-INFO. Nantes, France: École des Mines de Nantes.

    Google Scholar 

  14. Leake, D. B., & Sooriamurthi, R. (2001). When two case bases are better than one: Exploiting multiple case bases. In D. W. Aha, & I. Watson (Eds.), ICCBR. Lecture notes in computer science (Vol. 2080, pp. 321–335). New York: Springer.

    Google Scholar 

  15. Lecoutre, C., & Szymanek, R. (2006). Generalized arc consistency for positive table constraints. In F. Benhamou (Ed.), CP. Lecture notes in computer science (Vol. 4204, pp. 284–298). New York: Springer.

    Google Scholar 

  16. Lhomme, O., & Régin, J.-C. (2005). A fast arc consistency algorithm for n-ary constraints. In M. M. Veloso, & S. Kambhampati (Eds.), AAAI (pp. 405–410). Menlo Park: AAAI Press / The MIT Press.

    Google Scholar 

  17. Liffiton, M. H., & Sakallahm, K. A. (2005). On finding all minimally unsatisfiable subformulas. In SAT (pp. 173–186).

  18. Régin, J.-C. (1994). A filtering algorithm for constraints of difference in CSPs. In AAAI (pp. 362–367).

  19. Reilly, J., Zhang, J., McGinty, L., Pu, P., & Smyth, B. (2007). Evaluating compound critiquing recommenders: A real-user study. In ACM Conference on electronic commerce (pp. 114–123).

  20. Reiter, R. (1987). A theory of diagnosis from first principles. Artificial Intelligence, 32(1), 57–95.

    Article  MATH  MathSciNet  Google Scholar 

  21. Wallace, M. (1996). Practical applications of constraint programming. Constraints, 1(1/2), 139–168.

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hadrien Cambazard.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Cambazard, H., O’Sullivan, B. Reformulating Table Constraints using Functional Dependencies—An Application to Explanation Generation. Constraints 13, 385–406 (2008). https://doi.org/10.1007/s10601-008-9042-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-008-9042-3

Keywords

Navigation