Complete Strategies for Term Graph Narrowing

  • Authors:
  • Annegret Habel;Detlef Plump

  • Affiliations:
  • -;-

  • Venue:
  • WADT '98 Selected papers from the 13th International Workshop on Recent Trends in Algebraic Development Techniques
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

Narrowing is a method for solving equations in the equational theories of term rewriting systems. Unification and rewriting, the central operations in narrowing, are often implemented on graph-like data structures to exploit sharing of common subexpressions. In this paper, we study the completeness of narrowing in graph-based implementations. We show that the well-known condition for the completeness of tree-based narrowing, viz. a normalizing and confluent term rewrite relation, does not suffice. Completeness is restored, however, if the implementing graph rewrite relation is normalizing and confluent. We address basic narrowing and show its completeness for innermost normalizing and confluent graph rewriting. Then we consider the combination of basic narrowing with two strategies for controlling sharing, obtaining minimally collapsing and maximally collapsing basic narrowing. The former is shown to be complete in the presence of innermost normalization and confluence, the latter in the presence of termination and confluence. Maximally collapsing narrowing sometimes speeds up narrowing derivations drastically. Our results on minimally collapsing basic narrowing correct analogous claims by Krishna Rao [Proc. JICSLP'96] which are based on an incomplete version of term graph narrowing.