Fast left-linear semi-unification

  • Fritz Henglein
Theory Of Computing, Algorithms And Programming
Part of the Lecture Notes in Computer Science book series (LNCS, volume 468)


Semi-unification is a generalization of both unification and matching with applications in proof theory, term rewriting systems, polymorphic type inference, and natural language processing. It is the problem of solving a set of term inequalities M1N1, ..., M k <- N k , where ≤ is interpreted as the subsumption preordering on (first-order) terms. Whereas the general problem has recently been shown to be undecidable, several special cases are decidable.

Kfoury, Tiuryn, and Urzyczyn proved that left-linear semi-unification (LLSU) is decidable by giving an exponential time decision procedure. We improve their result as follows.

1. We present a generic polynomial-time algorithm L1 for LLSU, which shows that LLSU is in P.

2. We show that L1 can be implemented in time O(n3) by using a fast dynamic transitive closure algorithm.

3. We prove that LLSU is P-complete under log-space reductions, thus giving evidence that there are no fast (NC-class) parallel algorithms for LLSU.

As corollaries of the proof of P-completeness we obtain that both monadic semi-unification and LLSU with only 2 term inequalities are already P-complete.

We conjecture that L1 can be implemented in time O(n2), which is the best that is possible for the solution method described by L1. The basic question as to whether another solution method may admit even faster algorithms is open. We conjecture also that LLSU with 1 inequality is P-complete.


semi-unification left-linear P-completeness 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [DKM84]
    C. Dwork, P. Kanellakis, and J. Mitchell. On the sequential nature of unification. J. Logic Programming, 1:35–50, 1984.Google Scholar
  2. [DR89]
    J. Doerre and W. Rounds. On subsumption and semiunification in feature algebras. Manuscript, Oct. 1989.Google Scholar
  3. [Gol77]
    L. Goldschlager. The monotone and planar circuit value problems are log-space complete for P. SIGACT News, 9(2):25–29, 1977.Google Scholar
  4. [Hen88a]
    F. Henglein. Algebraic properties of semi-unification. Technical Report (SETL Newsletter) 233, New York University, November 1988.Google Scholar
  5. [Hen88b]
    F. Henglein. Type inference and semi-unification. In Proc. ACM Conf. on LISP and Functional Programming. ACM, ACM Press, July 1988.Google Scholar
  6. [Hen89]
    F. Henglein. Polymorphic Type Inference and Semi-Unification. PhD thesis, Rutgers University, April 1989.Google Scholar
  7. [Hoo65]
    P. Hooper. The Undecidability of the Turing Machine Immortality Problem. PhD thesis, Harvard University, June 1965. Computation Laboratory Report BL-38; also in Journal of Symbolic Logic, 1966.Google Scholar
  8. [Hue80]
    G. Huet. Confluent reductions: Abstract properties and applications to term rewriting systems. J. Assoc. Comput. Mach., 27(4):797–821, Oct. 1980.Google Scholar
  9. [KMNS89]
    D. Kapur, D. Musser, P. Narendran, and J. Stillman. Semi-unification. In Proc. Foundations of Software Technology and Teoretical Computer Science, Jan. 1989.Google Scholar
  10. [KTU89a]
    A. Kfoury, J. Tiuryn, and P. Urzyczyn. Computational consequences and partial solutions of a generalized unification problem. In Proc. 4th IEEE Symposium on Logic in Computer Science (LICS), June 1989.Google Scholar
  11. [KTU89b]
    A. Kfoury, J. Tiuryn, and P. Urzyczyn. The undecidability of the semi-unification problem. Technical Report BUCS-89-010, Boston University, Oct. 1989. also in Proc. of Symp. on Theory of Computing, Baltimore, Maryland, May 1990.Google Scholar
  12. [Lei89a]
    H. Leiß. Decidability of semi-unification in two variables. Technical Report INF-2-ASE-9-89, Siemens, July 1989.Google Scholar
  13. [Lei89b]
    H. Leiß. Semi-unification and type inference for polymorphic recursion. Technical Report INF2-ASE-5-89, Siemens, Munich, West Germany, 1989.Google Scholar
  14. [LPvL87]
    J. La Poutré and J. van Leeuwen. Maintenance of transitive closures and transitive reductions of graphs. In Proc. Int'l Workshop on Graph-Theoretic Concepts in Computer Science, pages 106–120. Springer-Verlag, June 1987. Lecture Notes in Computer Science, Vol. 314.Google Scholar
  15. [Pud88]
    P. Pudlák. On a unification problem related to Kreisel's conjecture. Commentationes Mathematicae Universitatis Carolinae, 29(3):551–556, 1988.Google Scholar
  16. [Pur87]
    P. Purdom. Detecting looping simplifications. In Proc. 2nd Conf. on Rewrite Rule Theory and Applications (RTA), pages 54–62. Springer-Verlag, May 1987.Google Scholar
  17. [Yel88]
    D. Yellin. A dynamic transitive closure algorithm. Technical Report RC 13535, IBM T.J. Watson Research Ctr., June 1988.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Fritz Henglein
    • 1
  1. 1.Department of Computer ScienceUtrecht UniversityUtrechtThe Netherlands

Personalised recommendations