4.9 Univalence implies function extensionality
In the last section of this chapter we include a proof that the univalence axiom implies function
extensionality. Thus, in this section we work without the function extensionality axiom.
The proof consists of two steps. First we show
in Theorem 4.9.4 (http://planetmath.org/49univalenceimpliesfunctionextensionality#Thmprethm1) that the univalence
axiom implies a weak form of function extensionality, defined in Definition 4.9.1 (http://planetmath.org/49univalenceimpliesfunctionextensionality#Thmpredefn1) below. The
principle of weak function extensionality in turn implies the usual function extensionality,
and it does so without the univalence axiom (Theorem 4.9.5 (http://planetmath.org/49univalenceimpliesfunctionextensionality#Thmprethm2)).
Definition 4.9.1.
The weak function extensionality principle asserts that there is a function
(βx:Aπππ’ππππ(P(x)))βπππ’ππππ(βx:AP(x)) |
for any family P:AβU of types over any type A.
The following lemma is easy to prove using function extensionality; the point here is that it also follows from univalence without assuming function extensionality separately.
Lemma 4.9.2.
Assuming U is univalent, for any A,B,X:U and any e:AβB, there is an equivalence
(XβA)β(XβB) |
of which the underlying map is given by post-composition with the underlying function of e.
Proof.
As in the proof of Lemma 4.1.1 (http://planetmath.org/41quasiinverses#Thmprelem1), we may assume that e=ππ½πππΎππ(p) for some p:A=B.
Then by path induction, we may assume p is ππΎπΏπ
A, so that e=ππ½A.
But in this case, post-composition with e is the identity
, hence an equivalence.
β
Corollary 4.9.3.
Let P:AβU be a family of contractible types, i.e. β(x:A)isContr(P(x)). Then the projection pr1:(β(x:A)P(x))βA is an equivalence. Assuming U is univalent, it follows immediately that precomposition with pr1 gives an equivalence
Ξ±:(Aββx:AP(x))β(AβA). |
Proof.
By Lemma 4.8.1 (http://planetmath.org/48theobjectclassifier#Thmprelem1), for ππ1:β(x:A)P(X)βA and x:A we have an equivalence
πΏππ»ππ1(x)βP(x). |
Therefore ππ1 is an equivalence whenever each P(x) is contractible. The assertion is now a consequence of Lemma 4.9.2 (http://planetmath.org/49univalenceimpliesfunctionextensionality#Thmprelem1). β
In particular, the homotopy fiber of the above equivalence at ππ½A is contractible. Therefore, we can show that univalence implies weak function extensionality by showing that the dependent function type β(x:A)P(x) is a retract of πΏππ»Ξ±(ππ½A).
Theorem 4.9.4.
In a univalent universe U, suppose that P:AβU is a family of contractible types and let Ξ± be the function of Corollary 4.9.3 (http://planetmath.org/49univalenceimpliesfunctionextensionality#Thmprecor1). Then β(x:A)P(x) is a retract of fibΞ±(idA). As a consequence, β(x:A)P(x) is contractible. In other words, the univalence axiom implies the weak function extensionality principle.
Proof.
Define the functions
Ο | :β(x:A)P(x)βπΏππ»Ξ±(ππ½A), | |||
Ο(f) | :β‘(Ξ»x.(x,f(x)),ππΎπΏπ ππ½A), | |||
and | ||||
Ο | :πΏππ»Ξ±(ππ½A)ββ(x:A)P(x), | |||
Ο(g,p) | :β‘Ξ»x.p*(ππ2(g(x))). |
Then Ο(Ο(f))=Ξ»x.f(x), which is f, by the uniqueness principle for dependent function types. β
We now show that weak function extensionality implies the usual function extensionality. Recall from (2.9.2) (http://planetmath.org/29pitypesandthefunctionextensionalityaxiom#S0.E2) the function ππΊπππ π(f,g):(f=g)β(fβΌg) which converts equality of functions to homotopy. In the proof that follows, the univalence axiom is not used.
Theorem 4.9.5.
Weak function extensionality implies the function extensionality Axiom 2.9.3 (http://planetmath.org/29pitypesandthefunctionextensionalityaxiom#Thmpreaxiom1).
Proof.
We want to show that
β(A:π°)β(P:Aβπ°)β(f,g:β(x:A)P(x))πππΎππππ(ππΊπππ π(f,g)). |
Since a fiberwise map induces an equivalence on total spaces if and only if it is fiberwise an equivalence by Theorem 4.7.7 (http://planetmath.org/47closurepropertiesofequivalences#Thmprethm4), it suffices to show that the function of type
(βg:β(x:A)P(x)(f=g))ββg:β(x:A)P(x)(fβΌg) |
induced by Ξ»(g:β(x:A)P(x)).ππΊπππ π(f,g) is an equivalence. Since the type on the left is contractible by Lemma 3.11.8 (http://planetmath.org/311contractibility#Thmprelem5), it suffices to show that the type on the right:
β(g:β(x:A)P(x))β(x:A)f(x)=g(x) | (4.9.6) |
is contractible.
Now Theorem 2.15.7 (http://planetmath.org/215universalproperties#Thmprethm3) says that this is equivalent to
β(x:A)β(u:P(x))f(x)=u. | (4.9.7) |
The proof of Theorem 2.15.7 (http://planetmath.org/215universalproperties#Thmprethm3) uses function extensionality, but only for one of the composites.
Thus, without assuming function extensionality, we can conclude that (4.9.6) is a retract of (4.9.7).
And (4.9.7) is a product of contractible types, which is contractible by the weak function extensionality principle; hence (4.9.6) is also contractible.
β
Title | 4.9 Univalence implies function extensionality |
\metatable |