Arrow Research search
Back to I&C

I&C 2005

Source-tracking unification

Journal Article journal-article Computer Science ยท Theoretical Computer Science

Abstract

We propose a path-based framework for deriving and simplifying source-tracking information for first-order term unification in the empty theory. Such a framework is useful for diagnosing unification-based systems, including debugging of type errors in programs and the generation of success and failure proofs in logic programming. The objects of source-tracking are deductions in the logic of term unification. The semantics of deductions are paths over a unification graph whose labels form the suffix language of a semi-Dyck set. Based on this idea of unification paths, two algorithms for generating proofs are presented: the first uses context-free labeled shortest-path algorithms to generate optimal (shortest) proofs in time O (n 3) for a fixed signature, where n is the number of vertices of the unification graph. The second algorithm integrates easily with standard unification algorithms, entailing an overhead of only a constant factor, but generates non-optimal proofs. These non-optimal proofs may be further simplified by group rewrite rules.

Authors

Keywords

  • Algorithms
  • Debugging
  • Formal languages
  • Graph theory
  • Logic programming
  • Path problems
  • Term unification
  • Type inference

Context

Venue
Information and Computation
Archive span
1987-2026
Indexed papers
3021
Paper id
220020439144099822
v2026.09.13