Higher-order constraint simplification in dependent type theory

  • Authors:
  • Jason Reed

  • Affiliations:
  • Carnegie Mellon University, Pittsburgh

  • Venue:
  • Proceedings of the Fourth International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Higher-order unification is undecidable, but has fragments which admit practical algorithms, which are used extensively in logical frameworks. For example, it is decidable whether unification problems in the pattern fragment are solvable, and they enjoy unique most general unifiers when they are. Often we wish to treat more general problems which are nonetheless solvable by incrementally reasoning about the parts of them that fall in the pattern fragment after more progress has been made --- to this end constraint simplification algorithms have been proposed, which work on the so-called dynamic pattern fragment. However, their theory turns out to be surprisingly subtle. The constraint simplification algorithm implemented in Twelf, for instance, is not terminating, despite the sketch of a proof of its termination in the literature. We describe and prove correct a new, terminating constraint simplification algorithm for a dynamic pattern fragment of higher-order unification in a dependent type system, and discuss its implementation.