Journal of Automated Reasoning

, Volume 23, Issue 2, pp 107–136 | Cite as

Computational Complexity of Simultaneous Elementary Matching Problems

  • Miki Hermann
  • Phokion G. Kolaitis


The simultaneous elementary E-matching problem for an equational theory E is to decide whether there is an E-matcher for a given system of equations in which the only nonconstant function symbols occurring in the terms to be matched are the ones constrained by the equational axioms of E. We study the computational complexity of simultaneous elementary matching problems for the equational theories A of semigroups, AC of commutative semigroups, and ACU of commutative monoids. In each case, we delineate the boundary between NP-completeness and solvability in polynomial time by considering two parameters, the number of equations in the systems and the number of constant symbols in the signature. Moreover, we analyze further the intractable cases of simultaneous elementary AC-matching and ACU-matching by also taking into account the maximum number of occurrences of each variable. Using combinatorial optimization techniques, we show that if each variable is restricted to having at most two occurrences, then several cases of simultaneous elementary AC-matching and ACU-matching can be solved in polynomial time.

automated deduction equational matching associative-commutative matching Diophantine equations computational complexity NP-completeness #P-completeness 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Angluin, D.: Finding patterns common to a set of strings, J. Comput. System Sci. 21 (1980), 46–62.Google Scholar
  2. Baader, F. and Siekmann, J. H.: Unification theory, in D. Gabbay, C. Hogger, and J. Robinson (eds.), Handbook of Logic in Artificial Intelligence and Logic Programming, Vol. 2: Deduction Methodologies, Oxford Univ. Press, Oxford (UK), 1994, pp. 41–125.Google Scholar
  3. Benanav, D., Kapur, D. and Narendran, P.: Complexity of matching problems, J. Symbolic Comput. 3 (1987), 203–216.Google Scholar
  4. Berge, C.: Graphs, 2nd revised edn, North-Holland, Amsterdam, 1985.Google Scholar
  5. Berregeb, N., Bouhoula, A. and Rusinowitch, M.: SPIKE-AC: A system for proofs by induction in associative-commutative theories, in H. Ganzinger (ed.), Proceedings 7th Conference on Rewriting Techniques and Applications (RTA'96), New Brunswick (NJ, USA), Lecture Notes in Comput. Sci. 1103, 1996, pp. 428–431.Google Scholar
  6. Bürckert, H.-J., Herold, A., Kapur, D., Siekmann, J. H., Stickel, M. E., Tepp, M. and Zhang, H.: Opening the AC-unification race, J. Automated Reasoning 4(4) (1988), 465–474.Google Scholar
  7. Creignou, N. and Hermann, M.: Complexity of generalized satisfiability counting problems, Inform. and Comput. 125(1) (1996), 1–12.Google Scholar
  8. Edmonds, J. and Johnson, E.: Matching: A well-solved class of integer linear programs, in Combinatorial Structures and Their Applications, Calgary (Canada), Gordon and Breach, 1969, pp. 89–92.Google Scholar
  9. Eker, S.: Improving the efficiency of AC matching and unification, Research report 2104, Institut de Recherche en Informatique et en Automatique, 1993.Google Scholar
  10. Garey, M. and Johnson, D.: Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman and Co., 1979.Google Scholar
  11. Garland, S. and Guttag, J.: An overview of LP, the Larch Prover, in N. Dershowitz (ed.), Proceedings 3rd Conference on Rewriting Techniques and Applications (RTA'89), Chapel Hill, (NC, USA), Lecture Notes in Comput. Sci. 355, 1989, pp. 137–151.Google Scholar
  12. Hermann, M. and Kolaitis, P.: The complexity of counting problems in equational matching, J. Symbolic Computation 20(3) (1995), 343–362.Google Scholar
  13. Johnson, D.: A catalog of complexity classes, in J. van Leeuwen (ed.), Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity, North-Holland, Amsterdam, Chapt. 2, 1990, pp. 67–161.Google Scholar
  14. Jouannaud, J.-P. and Kirchner, C.: Solving equations in abstract algebras: A rule-based survey of unification, in J.-L. Lassez and G. Plotkin (eds.), Computational Logic. Essays in Honor of Alan Robinson, MIT Press, Cambridge, Chapt. 8, 1991, pp. 257–321.Google Scholar
  15. Kapur, D. and Zhang, H.: An overview of Rewrite Rule Laboratory (RRL), Comput. Math. Appl. 29(2) (1995), 91–114.Google Scholar
  16. Kirchner, C., Kirchner, H. and Vittek, M.: Designing constraint logic programming languages using computational systems, in V. Saraswat and P. V. Hentenryck (eds.), Principles and Practice of Constraint Programming, MIT Press, Chapt. 8, 1995, pp. 133–160.Google Scholar
  17. Lenstra, Jr, H.: Integer programming with a fixed number of variables, Math. Oper. Res. 8(4) (1983), 538–548.Google Scholar
  18. McCune, W.: Solution of the Robbins problem, J. Automated Reasoning 19(3) (1997), 263–276.Google Scholar
  19. Papadimitriou, C.: On the complexity of integer programming, J. Assoc. Comput. Mach. 28(4) (1981), 765–768.Google Scholar
  20. Papadimitriou, C.: Computational Complexity, Addison-Wesley, 1994.Google Scholar
  21. Shiloach, Y.: Another look at the degree constrained subgraph problem, Inform. Proces. Lett. 12(2) (1981), 89–92.Google Scholar
  22. Stickel, M.: A unification algorithm for associative-commutative functions, J. Assoc. Comput. Mach. 28(3) (1981), 423–434.Google Scholar
  23. Toda, S.: On the computational power of PP and P, in Proceedings 30th IEEE Symposium on Foundations of Computer Science (FOCS'89), Research Triangle Park (NC, USA), 1989, pp. 514–519.Google Scholar
  24. Urquhart, R.: Degree constrained subgraphs of linear graphs, Ph.D. Thesis, University of Michigan, Ann Arbor, 1967.Google Scholar
  25. Valiant, L.: The complexity of computing the permanent, Theoret. Comput. Sci. 8(2) (1979a), 189–201.Google Scholar
  26. Valiant, L.: The complexity of enumeration and reliability problems, SIAM J. Comput. 8(3) (1979b), 410–421.Google Scholar
  27. van Leeuwen, J.: Graph algorithms, in J. van Leeuwen (ed.), Handbook of Theoretical Computer Science A: Algorithms and Complexity, Elsevier, Amsterdam, Chapt. 10, 1990, pp. 525–631.Google Scholar
  28. Verma, R. and Ramakrishnan, I.: Tight complexity bounds for term matching problems, Inform. Comput. 101 (1992), 33–69.Google Scholar

Copyright information

© Kluwer Academic Publishers 1999

Authors and Affiliations

  • Miki Hermann
    • 1
  • Phokion G. Kolaitis
    • 2
  1. 1.LORIA (CNRS)Vandœuvre-lès-NancyFrance
  2. 2.Computer Science DepartmentUniversity of CaliforniaSanta CruzU.S.A

Personalised recommendations