This paper is a contribution to the analysis of the computational content of the univalence axiom [VV] (and higher inductive types). In previous work [ABCFHL, BCH, CCHM, CHM, OP], various presheaf models of this axiom have been described in a constructive meta theory. In this formalism, the notion of fibrant type is stated as a refinement of the path lifting operation where one not only provides one of the endpoints but also a partial lift (for a suitable notion of partiality). This generalized form of path lifting operation is a way to state a homotopy extension property, which was recognized very early (see, [Eilenberg1]) as a key for an abstract development of algebraic topology. The axiom of univalence is then captured by a suitable equivalence extension operation (the “glueing” operation), which expresses that we can extend a partially defined equivalence of a given total codomain to a total equivalence. These presheaf models suggest possible extensions of type theory where we manipulate higher dimensional objects [ABCFHL, CCHM]. One can define a notion of reduction and prove canonicity for this extension [Huber]: any closed term of type (natural number) is convertible to a numeral. There are however several non-canonical choices when defining the path lifting operation by induction on the type, which produce different notion of convertibility.111For instance, the definition of this operation for “glue” types is different in [CCHM] and [OP]. A natural question is how essential these non-canonical choices are: can it be that a closed term of type , defined without use of such non-canonical reduction rules, becomes convertible to for one choice and for another? The main result of this paper, the homotopy canonicity theorem, implies that this cannot be the case. the value of a term is independent of these non-canonical choices. Homotopy canoncity states that, even without providing reduction rules for path lifting operations at type formers, we still have that any closed term of type is path equal to a numeral. (We cannot hope to have convertibility anymore with these path lifting constant.) We can then see this numeral as the “value” of the given term.
Our proof of the homotopy canonicity can be seen as a proof-relevant extension of the reducibility or computability method, going back to the work of Gödel [Godel] and Tait [Tait]. It is however best expressed in an algebraic setting. We first define a general notion of model, called cubical category with families, defined as a category with families [Dybjer] with certain special operations internal to presheaves over a category (such as a cube category) with respect to the parameters of an interval and an object of cofibrant propositions .
We describe the initial model and how to re-interpret the cubical presheaf models as cubical categories with families. The computability method can then be expressed as a general operation (called “sconing”) which applied to an arbitrary model produces a new model with a strict morphism . Homotopy canonicity is obtained by applying this general operation to the term model. This construction associates to a (for simplicity, closed) type a predicate on the closed terms , and each closed term a proof of . The main rules in the closed case are summarized in LABEL:table:sconing.
Some extensions and variations are then described:
Our development extends uniformly to identity types and higher inductive types (using the methods of [CHM]) (LABEL:higher-inductive-types and LABEL:identity-types).
Our development applies equally to the case where one treats univalence instead of glue types as primitive (LABEL:univalence-as-axiom). We expect that a similar sconing argument (glueing along a global sections functor to simplicial sets) works to establish homotopy canonicity for the initial split univalent simplicial tribe in the setting of Joyal [joyal:tribes].
A similar sconing argument adapts to canonicity of cubical type theory with computation of filling at type formers, originally proved by [Huber] (LABEL:canonicity).
Assuming excluded middle, a version of the simplicial set model [simplicial-set-model] forms an instance of our development, and distributive lattice cubical type theory interprets in it (LABEL:simplicial-sets).
Using our technique, one may also reprove canonicity for ordinary Martin Löf type theory with inductive families in a reduction-free way.
Shulman [Shulman] proves homotopy canonicity for homotopy type theory with a truncatedness assumption using the sconing technique. This proof was one starting point for the present work. Some of his constructions may be simplified using our techniques, for example the construction of the natural number type in the sconing.