Higher-order dynamic pattern unification for dependent types and records

  • Authors:
  • Andreas Abel;Brigitte Pientka

  • Affiliations:
  • Institut für Informatik, Ludwig-Maximilians-Universität, München, Deutschland;School of Computer Science, McGill University, Montreal, Canada

  • Venue:
  • TLCA'11 Proceedings of the 10th international conference on Typed lambda calculi and applications
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

While higher-order pattern unification for the λΠ-calculus is decidable and unique unifiers exists, we face several challenges in practice: 1) the pattern fragment itself is too restrictive for many applications; this is typically addressed by solving sub-problems which satisfy the pattern restriction eagerly but delay solving sub-problems which are non-patterns until we have accumulated more information. This leads to a dynamic pattern unification algorithm. 2) Many systems implement λΠΣ calculus and hence the known pattern unification algorithms for λΠ are too restrictive. In this paper, we present a constraint-based unification algorithm for λΠΣ-calculus which solves a richer class of patterns than currently possible; in particular it takes into account type isomorphisms to translate unification problems containing Σ-types into problems only involving Π-types. We prove correctness of our algorithm and discuss its application.