Decidability of conversion for type theory in type theory
Authors:
Top Cited Papers
Open Access
- 27 December 2017
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in Proceedings of the ACM on Programming Languages
- Vol. 2 (POPL) , 1-29
Abstract
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.Keywords
Funding Information
- Vetenskapsrådet (621-2014-4864)
- European Cooperation in Science and Technology (CA15123)
This publication has 21 references indexed in Scilit:
- On Irrelevance and Algorithmic Equality in Predicative Type TheoryLogical Methods in Computer Science, 2012
- On equivalence and canonical forms in the LF type theoryACM Transactions on Computational Logic, 2005
- Induction–recursion and initial algebrasAnnals of Pure and Applied Logic, 2003
- A Kripke-Style Model for the Admissibility of Structural RulesLecture Notes in Computer Science, 2002
- Indexed Induction-RecursionLecture Notes in Computer Science, 2001
- A general formulation of simultaneous inductive-recursive definitions in type theoryThe Journal of Symbolic Logic, 2000
- An algorithm for testing conversion in type theory1991
- The calculus of constructionsInformation and Computation, 1988
- Equality between functionals1975
- Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theoremIndagationes Mathematicae, 1972