Lectures onType Theory
Chapter 193
Chapter 193Core route

Univalence

A path p:A=B transports elements of A to B. Transport in the universal family is an equivalence, so every such path determines an equivalence AB. Univalence is the assertion that every equivalence arises uniquely in this way. The inverse comparison turns equivalences into paths and thereby computes transport and yields function extensionality.

From identifications to equivalences

We use the path, fiber, contractibility, equivalence, and homotopy notation introduced in chapter 62. For e:AB, application e(a) means application of its underlying map. The one new abbreviation is trp(XX):AB for transport in the universal family along p:A=UiB.

A type X is a proposition when isProp(X):=x:Xy:X(x=Xy) is inhabited. This chapter uses the predicate before the general truncation hierarchy is developed, so the definition is fixed here at its first use.

Lemma 65.2 — Calculus of contractibility

Let X be a type.

  1. (Singletons.) For a:A, the types y:A(a=Ay) and y:A(y=Aa) are contractible.

  2. (Contractible types are propositions.) If X is contractible, then x=Xy is inhabited for all x,y:X; moreover each path type x=Xy is itself contractible.

  3. (Inhabited propositions are contractible.) If X is inhabited and any two elements of X are identified, then X is contractible.

  4. (Retracts.) If there are s:YX, r:XY and H:rsidY, and X is contractible, then Y is contractible.

  5. (Identities.) For every type A, the identity map idA:=λx.x is an equivalence.

  6. (Maps of contractible types.) If X and Y are contractible, every map f:XY is an equivalence.

Proof of Lemma 65.2 — Calculus of contractibility

Proof. (i) The center is (a,refla); the contraction y:Ap:a=Ay((a,refla)=(y,p)) has generic endpoint y, so identity induction (definition 30.1) applies with clause refl(a,refla). The mirrored singleton is symmetric.

(ii) Let c be the center and γx:c=Xx the contraction; put σx,y:=γx1γy. Every p:x=Xy is identified with σx,y: by identity induction it suffices to inhabit reflx=γx1γx, the inverse of the inverse law theorem 30.20(ii). Thus x=Xy has center σx,y and the contraction just constructed.

(iii) Take the inhabitant as center, the assumed identifications as contraction.

(iv) The center is r(c); for y:Y, apr(γs(y)) followed by H(y) gives r(c)=r(s(y))=y.

(v) fibidA(y)x:A(x=Ay) is a mirrored singleton, contractible by (i).

(vi) Fix y:Y. The fiber fibf(y) is inhabited: pair the center c of X with the identification f(c)=Yy supplied by (ii). Any two elements (x,p),(x,p) are identified: by theorem 62.30 it suffices to give q:x=Xx — from (ii) — and to identify trq(f()=Yy)(p) with p; both live in f(x)=Yy, which is contractible by (ii) applied to Y, so (ii) identifies them. Conclude by (iii). ◻

Lemma 65.3 — Coercion is an equivalence

For A,B:Ui and p:A=UiB, the transport trp(XX):AB is an equivalence.

Proof of Lemma 65.3 — Coercion is an equivalence

Proof. The endpoints of p are generic, so identity induction applies: at preflA we have trreflA(XX)idA by the computation rule of transport (definition 30.1), an equivalence by lemma 65.2(v). ◻

Construction 65.4 — The comparison map

For A,B:Ui, the comparison map from type identity to equivalence is idtoeqvA,B:(A=UiB)(AB),idtoeqvA,B(p):=(trp(XX),wp), where wp:isEquiv(trp(XX)) is the witness of lemma 65.3. Its underlying map at reflA computes judgmentally: pr1(idtoeqvA,B(reflA))idA.

Remark 65.5 — Universe bookkeeping

By definition 29.1, A=UiB is a type in Ui+1 while AB is a type in Ui. Thus univalence makes an identity type of Ui equivalent to a small type. The construction uses only these displayed levels and the explicit inclusions of definition 29.1, not a cumulativity rule.

Exercise 65.1

★☆☆ Define a map (A=UiB)(AB) directly by identity induction, with clause (idA,w) at reflA, where w witnesses lemma 65.2(v). Show that it is homotopic to idtoeqvA,B of construction 65.4.

Exercise 65.2

★★☆ Show that equivalences compose: if f:AB and g:BC are equivalences, so is gf. Hint: show that fibgf(c) is a retract of w:fibg(c)fibf(pr1(w)), then apply lemma 65.2.

The univalence axiom

Univalence adds a witness that each idtoeqvA,B:(A=B)(AB) is an equivalence.

Definition 65.6 — Univalence

A univalent universe Ui is a universe for which, for all A,B:Ui, the map idtoeqvA,B of construction 65.4 is an equivalence. The univalence axiom adjoins to the base, for every level i, a constant witnessing the univalence of Ui:

ΓA:UiΓB:Ui
ΓunivalenceA,B:isEquiv(idtoeqvA,B)
UA

The constant is subject to no computation rule. The theory HoTT0 is the base of chapter 26chapter 30 extended by UA. No higher-inductive rule belongs to this signature.

Write HoTT0[0] for the single-universe fragment using U0 and the one instance of UA at that universe. This notation is deliberately weaker than the all-level scheme HoTT0.

Theorem 65.7 — Consistency

If ZFC with two strongly inaccessible cardinals is consistent, then HoTT0[0] is consistent: there is no closed term of type 0.

Proof of Theorem 65.7 — Consistency

Proof. Kapulkin and Lumsdaine construct, from inaccessible cardinals β<α, a contextual-category model in simplicial sets whose internal universe classifies the β-small Kan fibrations; α bounds the ambient small simplicial sets. Their Theorem 3.4.2 validates UA for that universe, and Corollary 3.4.3 derives the stated relative consistency [KL21]. The empty type is interpreted by the empty simplicial set, which has no global point. The construction and its soundness proof are the imported theorem package; no fact about simplicial sets is used in the syntactic arguments below. ◻

Remark 193.7 — Boundary of the model import

The theorem covers one internal univalent universe, not the all-level scheme HoTT0. Kapulkin and Lumsdaine explicitly leave a finite or countable tower to a further construction with correspondingly many size bounds. Thus the results below are syntactic consequences of the displayed instance of UA; they do not enlarge the relative-consistency theorem. The inaccessible cardinals belong to this classical model construction, not to the statement of univalence itself. Cubical models validate a computing form of univalence in a different constructive metatheory [CCHM18, ABC^+21].

Construction 65.8 — The map and its computation laws

Let Ui be univalent and A,B:Ui. By UA the fiber of idtoeqvA,B over any e:AB is contractible; its center is a pair which we name the univalence map and its comparison path: ua(e):A=UiB,βe:idtoeqv(ua(e))=ABe; moreover, for every p:A=UiB there is ηp:p=A=UiBua(idtoeqv(p)).

Proof of Construction 65.8 — The map and its computation laws

Proof. Only ηp requires argument. The fiber fibidtoeqv(idtoeqv(p)) contains both the center (ua(idtoeqv(p)),βidtoeqv(p)) and the element (p,refl); being contractible, it identifies them (lemma 65.2(ii)), and appr1 of that identification gives ηp up to inversion. ◻

Theorem 65.9 — Transport along

Let Ui be univalent.

  1. For every e:AB and a:A, trua(e)(XX)(a)=Be(a).

  2. For every family B:AUi, every p:x=Ay and u:B(x), trpB(u)=B(y)idtoeqv(apB(p))(u).

  3. Consequently, if apB(p)=B(x)=UiB(y)ua(e) for some e:B(x)B(y), then trpB(u)=B(y)e(u).

Proof of Theorem 65.9 — Transport along

Proof. (i) Apply appr1 to βe to identify the underlying maps trua(e)(XX) and pr1(e) in AB, then apply apff(a).

(ii) By identity induction on p: at preflx both sides are judgmentally u, since trreflB(u)u, apB(reflx)reflB(x) and pr1(idtoeqv(refl))id.

(iii) Chain (ii), ap of the assumed identification, and (i). ◻

Proposition 65.10 — Equivalent forms of univalence

For a universe Ui the following are equivalent.

  1. Ui is univalent.

  2. For every A:Ui the type X:Ui(AX) is contractible.

  3. (Equivalence induction.) For every A:Ui and every family P(X,e) of types indexed by X:Ui and e:AX, every u:P(A,idA) extends to f:X:Uie:AXP(X,e) with f(A)(idA)=P(A,idA)u.

Proof of Proposition 65.10 — Equivalent forms of univalence

Proof. (i)(ii). The type X:Ui(A=UiX) is a singleton, contractible by lemma 65.2(i). The maps (X,e)(X,ua(e)),(X,p)(X,idtoeqv(p)) exhibit X:Ui(AX) as a retract of it: the composite sends (X,e) to (X,idtoeqv(ua(e))), identified with (X,e) by apw(X,w)(βe). Conclude by lemma 65.2(iv).

(ii)(iii). Let c be the center of C:=X:Ui(AX), γ its contraction, and c0:=(A,idA). For any (X,e) set π(X,e):=γc01γ(X,e):c0=C(X,e) and define f(X)(e):=trπ(X,e)P(u), where P is P regarded as a family over C. At (X,e):=c0 the transport is along the loop γc01γc0, identified with reflc0 by theorem 30.20(ii); transporting this identification yields f(A)(idA)=P(A,idA)u, since trreflP(u)u.

(iii)(i). Apply equivalence induction to the family P(X,e):=A=UiX with base element reflA. This produces uX:(AX)A=UiX with uA(idA)=reflA. Equivalence induction again gives idtoeqv(uX(e))=e: at (A,idA) both sides compute to the identity equivalence. Conversely, identity induction on p:A=UiX gives uX(idtoeqv(p))=p, with reflexivity as the base case. Thus uX is a quasi-inverse of idtoeqvA,X; theorem 62.27 proves that the latter is an equivalence. ◻

Remark 65.11 — Why contractible fibers, and not quasi-inverses

For univalence, the witness that a map is an equivalence must itself be a proposition. Contractible fibers have this property (lemma 65.19). A quasi-inverse instead contains a chosen inverse and two chosen homotopies. For f:=idA, its defining type contains the two independent fields gidA and gidA, even after fixing g:=idA. Replacing isEquiv by qinv would make these choices part of the axiom rather than require a proposition-valued witness. Half-adjoint and bi-invertible maps give propositional alternatives equivalent to isEquiv [Uni13][AG26].

Exercise 65.4

★★☆ Reconstruct (iii)(i) in proposition 65.10 without reading its proof. By equivalence induction construct ua:X:Ui(AX)(A=UiX) with ua(A)(id)=refl; show idtoeqvua(X)id by equivalence induction and ua(X)idtoeqvid by identity induction. These two homotopies make ua(X) a quasi-inverse of idtoeqvA,X; finish with theorem 62.27.

Function extensionality from univalence

Recall from chapter 30 the pointwise application map, defined by identity induction: happlyf,g:(f=x:ABg)(fg),happlyf,f(reflf)λx.reflfx. The reverse map cannot be obtained by identity induction on a homotopy H:x:Af(x)=g(x): its outer constructor is Π, not an identity constructor, so there is no path on which J can act. Instead, the proof makes every fiber of happlyf,g contractible. Its key local step recovers a fiberwise equivalence from an equivalence of total maps; univalence then makes the relevant post-composition map an equivalence.

Definition 65.12 — Extensionality principles

Let A:Ui and B:AUi.

  1. Function extensionality holds for A,B if happlyf,g is an equivalence for all f,g:x:ABx. We then write funext:(fg)(f=x:ABxg) for the resulting inverse, sending H to the first component of the center of fibhapplyf,g(H).

  2. Weak function extensionality holds for A if for every family P:AUi, (x:AisContr(Px))isContr(x:APx).

Lemma 65.13 — Fiberwise fibers are retracts of total fibers

Let R,S:AUi and let hx:R(x)S(x) be a fiberwise map, with total map tot(h):x:AR(x)x:AS(x),tot(h)((x,u)):=(x,hx(u)). Then for every x:A and v:S(x), the fiber fibhx(v) is a retract of fibtot(h)((x,v)). In particular, if tot(h) is an equivalence, then so is every hx.

Proof of Lemma 65.13 — Fiberwise fibers are retracts of total fibers

Proof. The section is s((u,q)):=((x,u),apw(x,w)(q)). For the retraction, consider ((y,u),s¯) with s¯:(y,hy(u))=(x,v). By theorem 62.30, s¯ corresponds to a pair of p:y=Ax and q¯:trpS(hy(u))=S(x)v; by based identity induction on p (chapter 30) it suffices to define the retraction when preflx, where q¯:hx(u)=S(x)v, and we set r:=(u,q¯). The composite rs is homotopic to the identity: by identity induction on q both sides reduce to (u,refl), using that the correspondence of theorem 62.30 sends refl to (refl,refl).

If tot(h) is an equivalence its fibers are contractible, and lemma 65.2(iv) transfers contractibility along the retract; hence each fibhx(v) is contractible. ◻

Lemma 65.14 — Post-composition with an equivalence

Let Ui be univalent, X,Y:Ui and e:XY. For every type Z the map (e):(ZX)(ZY),hλz.e(hz), is an equivalence.

Proof of Lemma 65.14 — Post-composition with an equivalence

Proof. By equivalence induction (proposition 65.10(iii)) applied to the family P(Y,e):=isEquiv(e), it suffices to treat e:=idX. Then λh.λz.hzidZX by the η-rule of Π (definition 27.2), an equivalence by lemma 65.2(v). ◻

Lemma 65.15 — Projection of a contractible family

Let P:AUi with x:AisContr(Px). Then pr1:(x:AP(x))A is an equivalence.

Proof of Lemma 65.15 — Projection of a contractible family

Proof. Fix x:A; we show fibpr1(x) is a retract of the contractible type P(x) and conclude by lemma 65.2(iv). Take s(((y,u),p)):=trpP(u),r(u):=((x,u),reflx). For the homotopy rsid, based identity induction on p:y=Ax reduces to preflx, where r(s(((x,u),refl)))((x,trreflP(u)),refl)((x,u),refl). ◻

Theorem 65.16 — Univalence implies weak function extensionality

If Ui is univalent, then weak function extensionality holds for every A:Ui and every family P:AUi.

Proof of Theorem 65.16 — Univalence implies weak function extensionality

Proof. Suppose x:AisContr(Px). The projection pr1 is an equivalence (lemma 65.15), hence by lemma 65.14 post-composition with it, α:=λh.λx.pr1(hx):(Ax:AP(x))(AA) is an equivalence, so its fiber over idA is contractible. We exhibit x:AP(x) as a retract of fibα(idA) and conclude by lemma 65.2(iv). Define φ(f):=(λx.(x,fx),reflidA),ψ((h,p)):=λx.trhapply(p)(x)P(pr2(hx)). The term φ(f) is well typed because α(λx.(x,fx))λx.pr1(x,fx)λx.xidA by the computation rule of Σ (definition 27.9). The round trip computes judgmentally: ψ(φ(f))happly,Σβλx.trreflxP(fx)transportβλx.fxΠηf, so the retraction homotopy is λf.reflf. ◻

Theorem 65.17 — Weak function extensionality implies function extensionality

If weak function extensionality holds (definition 65.12(ii)), then for all f,g:x:ABx the map happlyf,g is an equivalence. Univalence is not used in the proof.

Proof of Theorem 65.17 — Weak function extensionality implies function extensionality

Proof. Fix f and regard happlyf,g as a fiberwise map, over g:x:ABx, from the family g(f=g) to the family g(fg). By lemma 65.13 it suffices to show that the total map tot(happlyf):g:x:ABx(f=g)g:x:ABx(fg) is an equivalence; by lemma 65.2(vi) it suffices that both totals are contractible. The left one is a singleton (lemma 65.2(i)). For the right one, consider ϱ:(x:Au:Bx(fx=Bxu))g:x:ABx(fg),ϱ(K):=(λx.pr1(Kx),λx.pr2(Kx)). It has section ς((g,H)):=λx.(gx,Hx). The composite ϱς is judgmentally the identity, by the computation rules of Σ and the η-rule of Π. The domain of ϱ is a dependent product of singletons, contractible by weak function extensionality and lemma 65.2(i); hence the right total is contractible by lemma 65.2(iv). ◻

Theorem 65.18 — Univalence implies function extensionality

Let Ui be univalent, A:Ui, B:AUi. Then function extensionality holds for A,B: for all f,g:x:ABx, the map happlyf,g is an equivalence, and hence f=x:ABxg(fg).

Proof of Theorem 65.18 — Univalence implies function extensionality

Proof. Theorem 65.16 gives weak function extensionality for families over A in Ui; the families used in the proof of theorem 65.17, namely xu:Bx(fx=Bxu), lie in Ui because Ui is closed under Σ and identity types (definition 29.1). Apply theorem 65.17. ◻

With function extensionality in hand, the basic predicates of this chapter become propositions, and ua becomes functorial.

Lemma 65.19 — Propositionality of the basic predicates

Assume function extensionality. Use isProp(X) as fixed at the beginning of the chapter.

  1. If P:AUi is a family of propositions, then x:AP(x) is a proposition.

  2. isContr(X) is a proposition.

  3. isEquiv(f) is a proposition, for every f:AB.

  4. If e,e:AB and pr1(e)=ABpr1(e), then e=ABe.

Proof of Lemma 65.19 — Propositionality of the basic predicates

Proof. (i) For f,g:x:AP(x) apply funext to λx.hx(fx)(gx), where hx witnesses isProp(P(x)).

(ii) Let w,w:isContr(X); in particular X is contractible, so by lemma 65.2(ii) every path type of X is contractible. Write w=(c,γ), w=(c,γ). By theorem 62.30 it suffices to identify c with c — by lemma 65.2(ii) — and then the transported contraction with γ. After transporting γ along c=c, both transport(γ) and γ inhabit x:X(c=Xx). Each factor c=x is contractible, so (i) identifies these two contractions.

(iii) isEquiv(f) is a product of the propositions isContr(fibf(b)); apply (i) and (ii).

(iv) By theorem 62.30 it suffices to transport the isEquiv-witness along the given identification and identify the result with that of e; both live in isEquiv(pr1(e)), a proposition by (iii). ◻

Exercise 65.3

★☆☆ Show that reflA=A=UiAua(idA), where idA carries the witness of lemma 65.2(v). Hint: instantiate ηp of construction 65.8 at p:=reflA and use pr1(idtoeqv(reflA))idA together with lemma 65.19(iv).

Exercise 65.5

★★☆ (Licata’s reduction.) Assume function extensionality. Suppose given, for all A,B:Ui, only a map u:(AB)(A=UiB) and a family of identifications e:ABtru(e)(XX)=ABpr1(e). Show that Ui is univalent. Hint: verify that the retract argument of proposition 65.10(i)(ii) needs only this data, granted lemma 65.19.

Corollary 65.20 — Functoriality of

Let Ui be univalent, A,B,C:Ui, e:AB, e:BC. Then

  1. reflA=ua(idA);

  2. ua(e)ua(e)=ua(ee), where ee is the composite equivalence of proposition 62.28;

  3. ua(e)1=ua(e1), where e1 is the inverse equivalence of proposition 62.28.

Proof of Corollary 65.20 — Functoriality of

Proof. (i) Instantiate ηp from construction 65.8 at p:=reflA. Since idtoeqv(reflA)idA, its inverse has the stated orientation. For (ii), first note the transport law trpq(XX)=ACtrq(XX)trp(XX) for p:A=UiB, q:B=UiC: by identity induction on q it reduces, using preflp (theorem 30.20(i)) and the η-rule of Π, to refl. Now put p:=ua(e), q:=ua(e). By theorem 65.9(i) and the transport law, the underlying maps of idtoeqv(pq) and of ee are identified; by lemma 65.19(iv), idtoeqv(pq)=ACee. With η from construction 65.8, ua(ee)=apuaua(idtoeqv(pq))=ηpqpq. For (iii), put p:=ua(e). Identity induction gives idtoeqv(p1)=idtoeqv(p)1. Combine this with βe from construction 65.8 and the fact that inversion preserves paths of equivalences to obtain idtoeqv(p1)=e1. Applying ua and then ηp1 gives ua(e1)=p1, which is the asserted equality after symmetry. ◻

Exercise 65.6

★★☆ Assume function extensionality. Establish the propositional computation laws happly(funext(H))=H and funext(happly(p))=p, and show funext(λx.reflfx)=reflf.

Exercise 65.7

★★☆ For an equivalence e:AB construct the inverse equivalence e1:BA whose underlying map sends b to the first component of the center of fibpr1(e)(b), and show e1eidA and ee1idB.

Exercise 65.8

★☆☆ Prove corollary 65.20(iii). Hint: by lemma 65.19(iv) it suffices to identify the underlying maps of idtoeqv(ua(e)1) and e1; use corollary 65.20(ii) with e:=e1 and cancel.

Univalence refutes the uniqueness of identity proofs

The groupoid fragment of corollary 54.36 cannot derive K; univalence refutes it outright in HoTT0. The refutation runs through 2 and its two self-equivalences.

Lemma 65.21 — Path spaces of

Let not:22 be defined by 2-recursion (definition 28.7) so that not(tt)ff and not(ff)tt.

  1. (tt=2ff)0 is inhabited.

  2. For every b:2 and every p:b=2b, p=reflb.

  3. not is an equivalence.

Proof of Lemma 65.21 — Path spaces of

Proof. We follow the encode–decode pattern (theorem 62.35). By double 2-recursion into U0 — large elimination, definition 29.1 — define code:22U0 with code(tt,tt)1,code(ff,ff)1,code(tt,ff)0,code(ff,tt)0, and c:b:2code(b,b) by induction with c(tt):=, c(ff):=. Set encodeb,b:(b=2b)code(b,b),encode(p):=trpcode(b,)(c(b)). (i) encodett,ff lands in code(tt,ff)0. (This internalizes theorem 29.14.)

(ii) Define decodeb,b:code(b,b)(b=2b) by double induction: decodett,tt:=λu.refltt, decodeff,ff:=λu.reflff, and rec0 in the off-diagonal cases. Identity induction shows decode(encode(p))=p for all p:b=2b: at preflb, encode(refl)c(b), and 2-induction on b reduces decode(c(b)) to reflb judgmentally. Now fix p:b=2b and induct on b. For btt: encode(p):1, so encode(p) by the η-rule of 1 (chapter 27), whence p=decode(encode(p))decode()refltt. The case bff is symmetric.

(iii) We show fibnot(b) contractible for each b, by induction on b; we treat btt, the other case being symmetric. The center is (ff,refltt), well typed since not(ff)tt. For the contraction, take (b,p) and induct on b. If bff then p:tt=2tt, so p=refl by (ii), and apq(ff,q) of that identification concludes. If btt then p:ff=2tt, and rec0 applied to (i) at p1 concludes. ◻

Theorem 65.22 — Univalence refutes UIP

Write isSet(X):=x:Xy:XisProp(x=Xy). If U0 is univalent, then isSet(U0)0 is inhabited. Consequently the theory HoTT0 of definition 65.6 becomes inconsistent upon adding either a UIP axiom for U0 or the rule K of definition 30.28; in particular univalence and equality reflection (definition 35.1) are jointly inconsistent (cf. theorem 35.9).

Proof of Theorem 65.22 — Univalence refutes UIP

Proof. Suppose h:isSet(U0). Let enot:22 be not with the witness of lemma 65.21(iii), and let id2 carry the witness of lemma 65.2(v). Put p:=ua(id2),q:=ua(enot):2=U02. Then h yields α:p=q, and aprtrr(XX)(tt)(α) gives trp(XX)(tt)=2trq(XX)(tt). By theorem 65.9(i), trp(XX)(tt)=id(tt)tt and trq(XX)(tt)=not(tt)ff. Concatenating, tt=2ff, and lemma 65.21(i) produces the element of 0.

For the consequences: a UIP axiom for U0 inhabits isSet(U0) directly; the rule K derives it; and equality reflection derives UIP by theorem 35.9(i). ◻

Corollary 65.23

In HoTT0 the universe U0 is not a set. In particular the type 2=U02 has two elements that cannot be identified: ua(id2) and ua(enot).

Proof of Corollary 65.23

Proof. An identification r:ua(id2)=ua(enot) would, by congruence of ptrp(XX)(tt), equate the identity action on tt with the negation action. By theorem 65.9, this gives tt=2ff, contradicting lemma 65.21(i). ◻

Proposition 193.24 — The two Boolean automorphisms

Evaluation at tt is an equivalence (22)2. Its inverse sends tt to id2 and ff to enot. Consequently, when U0 is univalent, (2=U02)2.

Proof of Proposition 193.24 — The two Boolean automorphisms

Proof. Let e:22. Induct on e(tt). If e(tt)=tt, then e(ff)=ff: the other Boolean value would contradict injectivity of the underlying equivalence and lemma 65.21(i). Function extensionality and Boolean induction therefore identify the underlying map of e with the identity. The equivalence witnesses are propositions by lemma 65.19(iii), so e=id2. If e(tt)=ff, repeat the Boolean induction with tt and ff exchanged; function extensionality gives e=enot. These two cases prove the inverse law for the displayed decoder; its other composite computes on both Boolean constructors. The last equivalence is the composite of this one with univalence (2=2)(22). ◻

Remark 65.24 — The tower does not stop

The Boolean automorphism proves exactly that U0 is not a set. It does not by itself determine the truncation level of U1 or of higher universes: that would require information about higher automorphism types. No iterated nontruncation claim is used below.

Remark 65.25 — Internal versus external refutation

The groupoid model proves that UIP is not derivable from the intensional fragment TG (corollary 54.36). In HoTT0, univalence proves the internal negation UIP0 (theorem 65.22). The semantic independence result and the internal refutation therefore have different hypotheses.

Exercise 65.9

★☆☆ Complete the characterization begun in lemma 65.21: show encode(decode(u))=u for all u:code(b,b), and conclude (b=2b)code(b,b).

Exercise 65.10

★☆☆ Show ua(enot)=refl20. Hint: transport tt and use theorem 65.9, lemma 65.21.

Exercise 65.11

★★☆ Reconstruct proposition 193.24. In each Boolean case, display the injectivity contradiction that fixes the image of ff before using function extensionality.

Propositional univalence

Restricting univalence to propositions yields a markedly weaker principle. An abstract univalent universe of propositions is compatible with UIP, but the ordinary set model does not make the concrete subuniverse U0prop univalent. For propositions, implications in both directions determine an equivalence; propositional univalence therefore identifies proposition codes from PQ, whereas full univalence identifies arbitrary types from AB.

Definition 65.26 — Propositions and universes of propositions

Using the predicate isProp fixed at the start of the chapter, write Uiprop:=X:UiisProp(X),AB:=(AB)×(BA). A universe of propositions is a pair of a type Ω and a map dec:ΩUiprop; it is univalent if x:Ωy:Ω(dec(x)dec(y))(x=Ωy) is inhabited (where dec(x) abbreviates the underlying type), and adequate if there is enc:UipropΩ with dec(enc(A))A for every A.

Lemma 65.27 — Propositions are sets

If isProp(X) is inhabited, then every path type x=Xy of X is a proposition, and it is contractible as soon as X is inhabited; in particular isSet(X).

Proof of Lemma 65.27 — Propositions are sets

Proof. Let h:isProp(X) and fix x:X. For any p:y=Xz, the dependent action apd (chapter 30) of the map h(x):w:X(x=Xw) on p gives trp(x=X)(h(x)(y))=h(x)(z), while transport in the family wx=Xw computes as post-concatenation: by identity induction on p, trp(x=X)(q)=qp. Hence h(x)(y)p=h(x)(z), so p=h(x)(y)1h(x)(z) by the groupoid laws (theorem 30.20). The right-hand side does not depend on p: any two elements of y=Xz are identified, i.e. the path type is a proposition. If X is inhabited then so is each y=Xz (by h), hence contractible by lemma 65.2(iii). ◻

Lemma 193.29 — Propositionality of being a proposition

Assume function extensionality. For every type X, the type isProp(X) is a proposition.

Proof of Lemma 193.29 — Propositionality of being a proposition

Proof. Let h,k:isProp(X). Function extensionality twice reduces h=k to h(x)(y)=k(x)(y) for arbitrary x,y:X. The witness h makes X a proposition, so lemma 65.27 makes the path type x=y a proposition. Hence its two elements h(x)(y) and k(x)(y) are equal. ◻

Proposition 65.28 — Univalence implies propositional univalence

Let Ui be univalent and let A,B:Ui be propositions with (f,g):AB. Then:

  1. f is an equivalence;

  2. A=UiB is inhabited, by ua of (i);

  3. granting theorem 65.18, the pair (Uiprop,id) is a univalent universe of propositions in the sense of definition 65.26.

Proof of Proposition 65.28 — Univalence implies propositional univalence

Proof. (i) Fix b:B; we show fibf(b) is an inhabited proposition, hence contractible (lemma 65.2(iii)). It is inhabited by (g(b),hB(f(g(b)))(b)), where hB:isProp(B). Given (a,p),(a,p):fibf(b), we have hA(a)(a):a=Aa, and by theorem 62.30 it remains to identify the transport of p with p inside f(a)=Bb — a path type of the inhabited proposition B, contractible by lemma 65.27, so lemma 65.2(ii) concludes. (ii) Apply ua. For (iii), apply theorem 62.30 to two pairs (A,hA),(B,hB):Uiprop. Part (ii) supplies the path A=B whenever the underlying propositions are interprovable. The remaining fiber equality compares the transported proof hA with hB; it is unique by lemma 193.29. Conversely a path of pairs gives maps both ways by transport. Thus the canonical comparison for the subuniverse is an equivalence. ◻

Proposition 65.29 — Propositional univalence is weaker

Work over the intensional base with universes.

  1. In the set model (definition 48.30), the statement that (U0prop,id) is univalent is interpreted by the empty set: the set model refutes it.

  2. Nevertheless, the base together with funext, UIP, and the existence of a univalent and adequate universe of propositions (definition 65.26) at every level is consistent relative to the set-model assumptions of convention 48.28.

Hence propositional univalence, in its abstract form, is compatible with UIP, while full univalence is not (theorem 65.22).

Proof of Proposition 65.29 — Propositional univalence is weaker

Proof. (i) In the set model, U0prop is interpreted as the set of all subsingleton sets in the first Grothendieck universe. The distinct singleton sets {} and {{}} are interprovable — there are functions both ways — but not equal, so the interpreted univalence statement has no elements.

(ii) Interpret the abstract universe of propositions by Ω:={,} with dec():={} and dec():=. Univalence holds by case analysis: interprovable values of dec force equal elements of Ω, since there is no function {}. Adequacy: send to and every singleton to . The set model validates funext and UIP (definition 48.30, corollary 90.7). Details in [AG26], §5.1. ◻

Remark 65.30 — The comparison

Each row names the theory in which its identity types are characterized.

principle characterizes = of with UIP set model
funext (theorem 65.18) Π-types consistent valid
UIP / K in TG (corollary 54.36) identity types valid
prop. univalence (abstract) Ω consistent valid
univalence (definition 65.6) Ui inconsistent refuted

Two structural differences explain why propositional univalence is so much simpler to state than definition 65.6: for propositions, AB is already equivalent to AB (proposition 65.28(i)), and a mere map (dec(x)dec(y))(x=Ωy) already forces the canonical comparison to be an equivalence. Indeed, the map back to identity fits into (x=Ωy) idtoeqv (dec(x)dec(y))(x=Ωy). The second composite is the identity on equivalences because equivalence witnesses are propositions; the induced retract on total spaces makes idtoeqv an equivalence. This is Licata’s reduction.

Resizing and the subobject classifier. Adequacy in definition 65.26 says that a single type Ω indexes, up to interprovability, the propositions of every Ui; iterated over levels this is the principle of propositional resizing, an impredicativity axiom. A univalent, adequate, resizing Ω is the type-theoretic form of the subobject classifier of an elementary topos [Jac99]. Resizing is independent of univalence; large classes of models of UA validate it, but it is not a theorem of HoTT0.

Exercise 65.12

★★☆ Assume function extensionality. Show that if A and B are propositions then AB and AB are propositions, and that (AB)(AB),e(e.to,e.from), is an equivalence.

Exercise 65.13

★☆☆ Prove proposition 65.28(iii): interprovable elements of Uiprop are identified as elements of the subuniverse. Hint: theorem 62.30 reduces the problem to (ii) and lemma 193.29.

The computation problem

Let ω:=trua(enot)(XX)(tt):2. The transport rule reduces only along reflexivity, so no root rule reduces ω; nevertheless theorem 65.9 proves ω=ff.

Proposition 65.31 — Failure of canonicity

Under the metatheoretic consistency assumption of theorem 65.7, consider the closed term ω above in HoTT0[0], with enot as in theorem 65.22. No root computation rule applies to ω, while the type ω=2ff is inhabited. Moreover ωtt. No claim that ωff is made without a normalization theorem for the full signature.

Proof of Proposition 65.31 — Failure of canonicity

Proof. By theorem 65.9(i) the type ω=2ff is inhabited by a closed term. If ωtt were derivable, conversion (definition 26.22) would make the same term inhabit tt=2ff, and lemma 65.21(i) would produce a closed term of 0, contradicting theorem 65.7. Finally, the only root rule for transport is its reflexivity equation, and ua(enot) is headed by the inert univalence constant rather than refl. Thus ω is root-stuck. Propositional equality with ff is compatible with either outcome of the unresolved judgmental comparison. ◻

If the intensional base had a sound and complete normalization function, the usual inert-constant argument would also separate ω from every constructor-headed Boolean. Replace each equation-free added constant by a variable; normalization then preserves its neutral head, which cannot equal a constructor-headed normal form. Chapter 49 proves closed-Boolean canonicity for its local Π/2 fragment and imports a normalization theorem for a separate cumulative signature. It proves no open normalization theorem even for the local fragment, and neither result covers the universe, Σ, N, and identity signature used here. This conditional diagnostic therefore gives no additional judgmental inequality in HoTT0[0].

Remark 65.32 — What is and is not lost

For every finite iterate in exercise 65.15, the transport theorem computes a propositional equality with its Boolean result. What fails is head reduction: extracting that result requires the propositional calculation rather than evaluation. Deciding the remaining judgmental comparisons requires normalization for the full HoTT0 signature.

Remark 65.33 — The way forward

Axiomatic univalence proves the propositional result ω=ff but has no head-reduction rule for ω. Any extension that makes this transport evaluate must add computation rules absent from HoTT0.

Exercise 65.14

★☆☆ Exhibit a closed term of ω=2ff in HoTT0, writing out the applications of construction 65.8 and theorem 65.9(i) involved.

Exercise 65.15

★★☆ Let ωn be the result of transporting tt along the n-fold concatenation ua(enot)ua(enot). Using corollary 65.20, prove ωn=2tt for even n and ωn=2ff for odd n.

Suggested first pass.

None of these problems is a prerequisite for a later chapter. Begin with exercise 193.16, then complete exercise 193.17.

Exercise 193.16

★★☆ Use the Boolean swap equivalence to construct the corresponding universe loop. Compute its action on both constructors from the ua transport law, and use the result to reproduce the contradiction with UIP.

Exercise 193.17

★★★ Practical project.univalence-transport-simulator Implement in Agda or Kappa a finite-set equivalence evaluator and the transport action assigned to its formal ua path. Preserve bijectivity and endpoint types. On the two-element set, identity must fix both values and swap must exchange them; composing swap twice must print identity. Mutation test: omit inverse verification and ensure a non-bijection is then accepted, so the correct suite catches the defect.

Bibliographic notes

The univalence axiom is due to Voevodsky (2009–2010), who formulated it after identifying the contractible-fibers notion of equivalence and who established its model in simplicial sets; the model was written up in detail by Kapulkin and Lumsdaine. Voevodsky attributed the word “univalent” in part to a Russian translation of Boardman and Vogt in which faithful was rendered as univalentnyj; see [AG26], Remark 5.2.4, for the story and for the reading of univalence as a not-quite universal property of the universe. Our presentation follows the HoTT Book [Uni13], §§2.10 and 4.9, and Rijke’s textbook [Rij25], whose “fundamental theorem of identity types” systematizes the retract arguments of §§ 65.165.3; the equivalent forms of proposition 65.10 appear there as the characterization of univalence, and the reduction of exercise 65.5 was observed by Licata. The proof that univalence implies function extensionality (theorem 65.18) is Voevodsky’s; we followed the route through weak function extensionality of [Uni13], §4.9, in Rijke’s streamlined form. The refutation of UIP (theorem 65.22) is folklore dating to the first days of the subject. The groupoid interpretation of Hofmann and Streicher [HS98] refutes UIP semantically. Its discrete universe in theorem 54.34 is not univalent; a univalent universe would have to retain equivalences as paths. Propositional univalence, its abstraction over universes of propositions, and the set-model comparison of proposition 65.29 follow [AG26], §5.1; the topos-theoretic reading of a univalent Ω as subobject classifier is classical [Jac99]. The computational deficiency of axiomatic univalence (§ 65.6) was recognized immediately and drove the designs of part V: observational equality [AM06, AMS07, PT22], the cubical theories in which univalence is a theorem [CCHM18, ABC^+21] with canonicity and normalization [Ang19, SA21], and the gluing methods by which such metatheorems are proved [Coq19, Ste21].

Search the book

Type to search the local edition.