Skip to main content

Automata-driven efficient subterm unification

  • Unification
  • Conference paper
  • First Online:
Foundation of Software Technology and Theoretical Computer Science (FSTTCS 1994)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 880))

Abstract

Syntactic unification has widespread use in computing. There are several operations used in deductive computing such as critical pair generation, paramodulation and narrowing that require unifying a term s with every subterm of another term p. This subterm unification problem can be solved naively by repeatedly unifying s with each subterm of p in isolation. The drawback of doing unification in isolation is that commonality among subterms of p is ignored. We present an algorithm for efficient subterm unification by exploiting this commonality. The central idea used in our algorithm is to reduce the common part computation in unification into a string-matching problem and solve it efficiently using a string-matching automaton. The automaton succinctly captures the commonality between subterms of p. The string-matching approach, in conjunction with two new techniques called bidirectional-reduce and marking enables efficient unification of s with every subterm of p.

Research supported by NSP grant CCR-9110055.

Research supported by NSF grants CCR-9102159, 9404921, CDA-9303181 and INT-9314412.

Research done while at SUNY, Stony Brook.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A.V. Aho and M.J. Corasick, Efficient String Matching: An Aid to Bibliographic Search, CACM, Vol. 18 No. 6, 1975, pp. 333–340.

    Google Scholar 

  2. C.H. Hoffmann and M.J. O'Donnell, Tree Pattern Matching, JACM, Vol. 29 No. 1, 1982, pp. 68–95.

    Google Scholar 

  3. G. Heut and J.-J. Levy, Computations in Orthogonal Rewriting Systems, In Essays in Computational Logic (in honor of Alan Robinson), J.-L. Lassez and G. Plotkin, ed., MIT Press, 1991.

    Google Scholar 

  4. D. E. Knuth and P. Bendix, Simple word problems in Universal Algebras, In Computational Problems in Abstract Algebra, J. Leech, ed., Pergammon Press, 1970, pp. 263–297.

    Google Scholar 

  5. A. Martelli and U. Montanari, An Efficient Unification Algorithm, ACM TOPLAS, Vol. 4 No. 2, 1982, pp. 258–282.

    Google Scholar 

  6. A. Martelli and U. Montanari, Unification in Linear Time and Space: A Structured Presentation, Internal Report #B76-16, Instituto di Elaborazione della Informazione, Consiglio Nazionale delle Ricerche, Pisa, Italy.

    Google Scholar 

  7. M.S. Paterson and M.N. Wegman, Linear Unification, Journal of Computer System and Science, Vol. 16 No. 2, 1978, pp. 158–167

    Google Scholar 

  8. R. Ramesh and I.V. Ramakrishnan, Nonlinear Pattern Matching in Trees, JACM, Vol. 39 No. 2, 1992, pp. 295–316.

    Google Scholar 

  9. R. Ramesh and I.V. Ramakrishnan, Automata-Driven Indexing of Prolog Clauses, in POPL 1990, pp. 281–291 (to appear in Journal of Logic Programming).

    Google Scholar 

  10. R.E. Tarjan, On the Efficiency of a Good but not Linear Set Merging Algorithm, JACM, Vol. 22 No. 2, 1975, pp 215–225.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

P. S. Thiagarajan

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ramesh, R., Ramakrishnan, I.V., Sekar, R.C. (1994). Automata-driven efficient subterm unification. In: Thiagarajan, P.S. (eds) Foundation of Software Technology and Theoretical Computer Science. FSTTCS 1994. Lecture Notes in Computer Science, vol 880. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58715-2_132

Download citation

  • DOI: https://doi.org/10.1007/3-540-58715-2_132

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58715-6

  • Online ISBN: 978-3-540-49054-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics