The unification of infinite sets of terms and its applications

  • Gernot Salzer
Session 15: Unification and Equality II
Part of the Lecture Notes in Computer Science book series (LNCS, volume 624)


In various fields using first order terms — like automated reasoning, logic programming or term rewriting — we encounter infinite sequences of structurally similar terms, leading to non-terminating or at least time and space consuming computations. As a remedy we introduce a meta-language consisting of recursive terms (R-terms), which are a finite representation of infinite sets of terms.

Given two R-terms r1 and r2 there may be infinitely many most general unifiers between those terms represented by r1 and those represented by r2. We present a unification algorithm for R-terms, which computes all first order unifiers simultaneously and yields a finite and complete representation for the potentially infinite set of first order unifiers.

We demonstrate the practicability of our approach by applying R-terms and meta-unification to automated theorem proving, logic programming and cycle unification.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [BHW91]
    W. Bibel, S. Hölldobler and J. Würtz. Cycle Unification. Forschungsbericht AIDA-91-15, TH Darmstadt, 1991.Google Scholar
  2. [CF89]
    M. Clausen and A. Fortenbacher. Efficient Solution of Linear Diophantine Equations. J. Symbolic Computation 8 (1989), 201–216.Google Scholar
  3. [CH91]
    H. Chen and J. Hsiang. Logic Programming with Recurrence Domains. ICALP '91, LNCS 510 (1991), 20–34.Google Scholar
  4. [De90]
    P. Devienne. Weighted graphs: a tool for studying the halting problem and time complexity in term rewriting systems and logic programming. Theoretical Computer Science 75 (1990), 157–215.CrossRefGoogle Scholar
  5. [Ki89]
    H. Kirchner. Schematization of infinite sets of rewrite rules generated by divergent completion processes. Theoretical Computer Science 67 (1989), 303–332.CrossRefGoogle Scholar
  6. [La89]
    D. Lankford. Non-negative Integer Basis Algorithms for Linear Equations with Integer Coefficients. J. Automated Reasoning 5 (1989), 25–35.CrossRefGoogle Scholar
  7. [MA92]
    D. McAllester. Grammar Rewriting. CADE-11, to appear in LNCS, (1992).Google Scholar
  8. [MM82]
    A. Martelli and U. Montanari. An Efficient Unification Algorithm. ACM Transactions on Programming Languages and Systems, Vol. 4 No. 2 (1982), 258–282.CrossRefGoogle Scholar
  9. [Ohl90]
    H. J. Ohlbach. Compilation of recursive two-literal clauses into unification algorithms. Proc. of the AIMSA (P. Jorrand and V. Sgurev, eds.), 13–22, 1990.Google Scholar
  10. [Ro65]
    J. A. Robinson. Automatic Deduction with Hyper-Resolution. Int. J. Comput. Math. 1 (1965), 227–234.Google Scholar
  11. [Sa91b]
    G. Salzer. Unification of Meta-Terms. Dissertation, Techn. Univ. Wien, 1991.Google Scholar
  12. [Sa92]
    G. Salzer. The Unification of Infinite Sets of Terms and its Applications. Technical Report E185-2/S05, Technische Universität Wien, 1992.Google Scholar
  13. [SBV89]
    D. Schreye, M. Bruynooghe, K. Verschaetse. On the Existence of Nonterminating Queries for a Restricted Class of Prolog-Clauses. Artificial Intelligence 41 (1989/90), 237–248.CrossRefGoogle Scholar
  14. [Wü92]
    J. Würtz. Unifying Cycles. Forschungsbericht, DFKI Saarbrücken, 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Gernot Salzer
    • 1
  1. 1.Abteilung für Anwendungen der formalen Logik, Institut für ComputersprachenTechnische Universität WienWienAustria

Personalised recommendations