Skip to main content
Log in

Single Elementary Associative-Commutative Matching

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

A single elementary associative-commutative (AC) matching problem has a pattern term that consists of a single (variadic) AC function symbol with only variable symbols as arguments and a subject term that consists of a single (variadic) AC function symbol with only constant symbols as arguments. We show that even this very restricted formulation of AC matching has an NP-complete decision problem. We consider a number of methods to contain the growth in the search space, including a lookup table for the solubility of subproblems, a digraph reformulation of the problem, and a search tree pruning method that uses failure information together with a partial ordering on branches. We give empirical results for the method that seems to work best in practice, and we list some ‘hard’ problem instances.

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. Bachmair, L., Chen, T. and Ramakrishnan, I. V.: Associative-commutative discrimination nets, in M.-C. Gaudel and J.-P. Jouannaud (eds.), TAPSOFT'93: Theory and Practice of Software Development, 4th International Joint Conference CAAP/FASE, Lecture Notes in Comput. Sci. 668, 1993, pp. 61-74.

  2. Bachmair, L., Chen, T., Ramakrishnan, I. V., Anantharaman, S. and Chabin, J.: Experiments with associative-commutative discrimination nets, in C. S. Mellish (ed.), Proceedings of the Fourteenth International Joint Conference on Artificial Intelligence, 1995, pp. 348-355.

  3. Benanav, D., Kapur, D. and Narendran, P.: Complexity of matching problems, J. Symbolic Comput. 3(1-2) (1987), 203-216.

    Google Scholar 

  4. Borovanský, P., Kirchner, C., Kirchner, H., Moreau, P.-E. and Ringeissen, C.: An overview of ELAN, in C. Kirchner and H. Kirchner (eds.), Proceedings of the 2nd International Workshop on Rewriting Logic and Its Applications, Electron. Notes Theor. Comput. Sci. 15, 1998. http://www.elsevier.nl/locate/entcs/volume15.html.

  5. Chen, T. and Anantharaman, S.: STORM: A many-to-one associative-commutative matcher, in J. Hsiang (ed.), Proceedings of the 6th International Conference on Rewriting Techniques and Applications (RTA-95), Lecture Notes in Comput. Sci. 914, 1995, pp. 414-419.

  6. Clausen, M. and Fortenbacher, A.: Efficient solution of linear diophantine equations, J. Symbolic Comput. 8(1-2) (1989), 201-216.

    Google Scholar 

  7. Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J. and Quesada, J. F.: Maude as a metalanguage, in C. Kirchner and H. Kirchner (eds.), Proceedings of the 2nd International Workshop on Rewriting Logic and Its Applications, Electron. Notes Theor. Comput. Sci. 15, 1998. http://www.elsevier.nl/locate/entcs/volume15.html.

  8. Dershowitz, N. and Jouannaud, J.-P.: Rewrite systems, in J. van Leeuwen (ed.), Handbook of Theoretical Computer Science B: Formal Methods and Semantics, Chap. 6, North-Holland, Amsterdam, 1990, pp. 243-320.

  9. Diaconescu, R., Futatsugi, K., Ishisone, M., Nakagawa, A. T. and Sawada, T.: An overview of CafeOBJ, in C. Kirchner and H. Kirchner (eds.), Proceedings of the 2nd International Workshop on Rewriting Logic and Its Applications, Electron. Notes Theor. Comput. Sci. 15, 1998. http://www.elsevier.nl/locate/entcs/volume15.html.

  10. Eker, S.: Fast matching in combinations of regular equational theories, in J. Meseguer (ed.), Proceedings of the 1st International Workshop on Rewriting Logic and Its Applications, Electron. Notes Theor. Comput. Sci. 4, 1996. http://www.elsevier.nl/locate/entcs/volume4.html.

  11. Eker, S. M.: Improving the efficiency of AC matching and unification, Technical Report RR-2104, Institut National de Recherche en Informatique et en Automatique (INRIA), 1993.

  12. Eker, S. M.: Associative-commutative matching via bipartite graph matching, Comput. J. 38(5) (1995), 381-399.

    Google Scholar 

  13. Gallimore, R. M., Coleman, D. and Stavridou, V.: UMIST OBJ: A language for executable program specifications, Comput. J. 32(5) (1989), 413-421.

    Google Scholar 

  14. Garey, M. R. and Johnson, D. S.: Computers and Intractability - A Guide to the Theory of NP-Completeness, Freeman, New York, 1979.

    Google Scholar 

  15. Garland, S. J. and Guttag, J. V.: An overview of LP, the Larch prover, in N. Dershowitz (ed.), Proceedings of 3rd International Conference on Rewriting Techniques and Applications (RTA-89), Lecture Notes in Comput. Sci. 355, 1989, pp. 137-151.

  16. Goguen, J. and Meseguer, J.: Order sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations, Theor. Comput. Sci. 105(2) (1992), 217-273.

    Google Scholar 

  17. Goguen, J. A., Winkler, T., Meseguer, J., Futatsugi, K. and Jouannaud, J.-P.: Introducing OBJ3, in J. A. Goguen, D. Coleman, and R. Gallimore (eds.), Applications of Algebraic Specification Using OBJ, Cambridge University Press, to appear.

  18. Gramlich, B. and Denzinger, J.: Efficient AC-matching using constraint propogation, Technical Report, FB Informatik, Universität Kaiserslautern, Pf. 3049, D-6750, Kaiserslautern, Germany, 1988.

  19. Hermann, M. and Kolaitis, P.G.: Computational complexity of simultaneous elementary matching problems, in J. Wiedermann and P. Hájek (eds.), Proceedings of the 20th International Symposium on Mathematical Foundations of Computer Science (MFCS '95), Lecture Notes in Comput. Sci. 969, 1995, pp. 359-370.

  20. Hullot, J.-M.: Associative commutative pattern matching, in Proceedings of the International Joint Conference on Artificial Intelligence, Vol. 1, 1979, pp. 406-412.

    Google Scholar 

  21. Hullot, J.-M.: Compilation de formes canoniques dans les theories equationnelles, Ph.D. Thesis, University de Paris Sud, Orsay, France, 1980.

    Google Scholar 

  22. Kounalis, E. and Lugiez, D.: Compilation of pattern matching with associative commutative functions, in A. Abramsky and T. S. E. Maibaum (eds.), Proceedings of the International Joint Conference on Theory and Practice of Software Development, volume 1:Colloquium on Trees in Algebra and Programming, Lecture Notes in Comput. Sci., 493, 1991, pp. 57-73.

  23. McCune, W.: Solution of the Robbins problem, J. Automated Reasoning 19(3) (1997), 263-276.

    Google Scholar 

  24. Moreau, P.-E. and Kirchner, H.: Compilation techniques for associative-commutative normalisation, in Proceedings of the 2nd International Workshop on Theory and Practice of Algebraic Specifications (ASF+SDF 97), 1997. http://ewic.springer.co.uk/workshops/ASFSDF97.

  25. Moreau, P.-E. and Kirchner, H.: A compiler for rewrite programs in associative-commutative theories, in C. Palamidessi, H. Glaser, and K. Meinke (eds.), Principles of Declarative Programming, 10th International Symposium (PLILP'98), Lecture Notes in Comput. Sci. 1490, 1998, pp. 230-249.

  26. Raffill, T.: On the search for a phase transition in AC-matching, Master's Thesis, University of California, Santa Cruz, 2000.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Eker, S. Single Elementary Associative-Commutative Matching. Journal of Automated Reasoning 28, 35–51 (2002). https://doi.org/10.1023/A:1020122610698

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1020122610698

Navigation