Decidability of Conversion for Type Theory in Type Theory
Artikel i vetenskaplig tidskrift, 2018

Type theory should be able to handle its own meta-theory, both to justify its foundational claims and to obtain a verified implementation. At the core of a type checker for intensional type theory lies an algorithm to check equality of types, or in other words, to check whether two types are convertible. We have formalized in Agda a practical conversion checking algorithm for a dependent type theory with one universe à la Russell, natural numbers, and η-equality for Π types. We prove the algorithm correct via a Kripke logical relation parameterized by a suitable notion of equivalence of terms. We then instantiate the parameterized fundamental lemma twice: once to obtain canonicity and injectivity of type formers, and once again to prove the completeness of the algorithm. Our proof relies on inductive-recursive definitions, but not on the uniqueness of identity proofs. Thus, it is valid in variants of intensional Martin-Löf Type Theory as long as they support induction-recursion, for instance, Extensional, Observational, or Homotopy Type Theory.

Formalization

Agda

Logical relations

Dependent types

Författare

Andreas Abel

Göteborgs universitet

Joakim Öhman

Fundacion IMDEA Software

Andrea Vezzosi

Chalmers, Data- och informationsteknik, Datavetenskap

Proceedings of the ACM on Programming Languages

24751421 (eISSN)

Vol. 2 POPL 23:1-23:29 23

Ämneskategorier

Algebra och logik

Geometri

Matematisk analys

Fundament

Grundläggande vetenskaper

DOI

10.1145/3158111

Mer information

Senast uppdaterat

2024-01-03