Uniform Logical Relations
Strong Normalization (SN) is an important property for intensional constructive type theories such as the Calculus of Inductive Constructions (CiC), the basis for the Coq theorem prover. Not only does SN imply consistency, but it also ensures that type-checking is decidable, and further, it provides a straightforward model, the term model, for a theory. Unfortunately, although SN has been proved for fragments of CiC, it is not known how to prove SN for CiC in its entirety, including eliminations for large inductive types as well as higher predicative universes. In this work, we show how to prove SN for full CiC. They key insight given here is that terms must be interpreted in a uniform manner, meaning that the form of the interpretation of a term must not depend on whether the term is a type. We introduce a new technique called Uniform Logical Relations, With uniformity as a guiding principle, and we show that this technique can then be used to prove SN for CiC. An important property of our technique is that it does not rely on Confluence, and thus it could potentially be used for extensions of CiC with added computation rules, such as Extensionality, for which Confluence relies on SN.