Skip to main navigation Skip to search Skip to main content

Average case analysis of unification algorithms

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Unification in first-order languages is a central operation in symbolic computation and logic programming. Many unification algorithms have been proposed in the past, however there is no consensus on which algorithm is the best to use in practice. While Paterson and Wegman’s linear unification algorithm has the lowest time complexity in the worst case, it requires an important overhead to be implemented. This is true also, although less importantly, for Martelli and Montanari’s algorithm [MM82], and Robinson’s algorithm [Rob71] is finally retained in many applications despite its exponential worst-case time complexity. There are many explanations for that situation: one important argument is that in practice unification subproblems are not independent, and linear unification algorithms do not perform well on sequences of unify-deunify operations [MU86]. In this paper we present average case complexity theoretic arguments. We first show that the family of unifiable pairs of binary trees is exponentially negligible with respect to the family of arbitrary pairs of binary trees formed over l binary function symbols, c constants and v variables. We analyze the different reasons for failure and get asymptotical and numerical evaluations. We then extend the previous results of [DL89] to these families of trees, we show that a slight modification of Herbrand-Robinson’s algorithm has a constant average cost on random pairs of trees. On the other hand, we show that various variants of Martelli and Montanari’s algorithm all have a linear average cost on random pairs of trees. The point is that failures by clash are not sufficient to lead to a constant average cost, an efficient occur check (i.e. without a complete traversal of subterms) is necessary. In the last section we extend the results on the probability of the occur check in presence of an unbounded number of variables.

Original languageEnglish
Title of host publicationSTACS 1991 - 8th Annual Symposium on Theoretical Aspects of Computer Science, Proceedings
EditorsChristian Choffrut, Matthias Jantzen
PublisherSpringer Verlag
Pages196-213
Number of pages18
ISBN (Print)9783540537090
DOIs
Publication statusPublished - 1 Jan 1991
Event8th Annual Symposium on Theoretical Aspects of Computer Science, STACS 1991 - Hamburg, Germany
Duration: 14 Feb 199116 Feb 1991

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume480 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference8th Annual Symposium on Theoretical Aspects of Computer Science, STACS 1991
Country/TerritoryGermany
CityHamburg
Period14/02/9116/02/91

Keywords

  • Average case complexity
  • Generating functions
  • Unification algorithms

Fingerprint

Dive into the research topics of 'Average case analysis of unification algorithms'. Together they form a unique fingerprint.

Cite this