Lifting.UnivalentWildCategory
Martin Escardo December 2018. The lifting of a type forms a univalent wild-โ-category with hom types l โ m, which is a partial order if the type is a set (wild because we are not giving coherence data).{-# OPTIONS --safe --without-K #-} open import MLTT.Spartan module Lifting.UnivalentWildCategory (๐ฃ : Universe) {๐ค : Universe} (X : ๐ค ฬ ) where open import Lifting.IdentityViaSIP ๐ฃ open import Lifting.Construction ๐ฃ open import UF.Base open import UF.Equiv open import UF.Equiv-FunExt open import UF.EquivalenceExamples open import UF.FunExt open import UF.Lower-FunExt open import UF.Sets open import UF.Subsingletons open import UF.Subsingletons-FunExt open import UF.UA-FunExt open import UF.UnivalenceWe define l โ m to mean that if l is defined then so is m with the same value. Here the suffix "-pr" standands for preservation (and also for projection!)._โ_ : ๐ X โ ๐ X โ ๐ค โ ๐ฃ ฬ l โ m = ฮฃ f ๊ (is-defined l โ is-defined m) , value l โผ value m โ f def-pr : (l m : ๐ X) โ l โ m โ (is-defined l โ is-defined m) def-pr l m = prโ val-pr : (l m : ๐ X) (ฮฑ : l โ m) โ value l โผ value m โ (def-pr l m ฮฑ) val-pr l m = prโ dom : {l m : ๐ X} โ l โ m โ ๐ X dom {l} {m} ฮฑ = l cod : {l m : ๐ X} โ l โ m โ ๐ X cod {l} {m} ฮฑ = m ๐-id : (l : ๐ X) โ l โ l ๐-id l = id , (ฮป x โ refl) ๐-Id-to-arrow : (l m : ๐ X) โ l ๏ผ m โ l โ m ๐-Id-to-arrow l l refl = ๐-id l ๐-comp : (l m n : ๐ X) โ l โ m โ m โ n โ l โ n ๐-comp l m n (f , ฮด) (g , ฮต) = g โ f , (ฮป p โ ฮด p โ ฮต (f p)) ๐-comp-unit-right : (l m : ๐ X) (ฮฑ : l โ m) โ ๐-comp l m m ฮฑ (๐-id m) ๏ผ ฮฑ ๐-comp-unit-right l m ฮฑ = refl ๐-comp-unit-left : funext ๐ฃ ๐ค โ (l m : ๐ X) (ฮฑ : l โ m) โ ๐-comp l l m (๐-id l) ฮฑ ๏ผ ฮฑ ๐-comp-unit-left fe l m ฮฑ = to-ฮฃ-๏ผ (refl , dfunext fe ฮป p โ refl-left-neutral) ๐-comp-assoc : funext ๐ฃ ๐ค โ {l m n o : ๐ X} (ฮฑ : l โ m) (ฮฒ : m โ n) (ฮณ : n โ o) โ ๐-comp l n o (๐-comp l m n ฮฑ ฮฒ) ฮณ ๏ผ ๐-comp l m o ฮฑ (๐-comp m n o ฮฒ ฮณ) ๐-comp-assoc fe (f , ฮด) (g , ฮต) (h , ฮถ) = to-ฮฃ-๏ผ (refl , dfunext fe (ฮป p โ โassoc (ฮด p) (ฮต (f p)) (ฮถ (g (f p)))))Thus, the associativity law in this wild-โ-category is that of function composition in the first component (where it hence holds definitionally) and that of path composition in the first component. (Hence this wild-โ-category should qualify as an โ-category, with all coherence laws satisfied automatically, except that there is at present no definition of โ-category in univalent type theory.) If X is a set, then _โ_ is a partial order:โ-prop-valued : funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ is-set X โ (l m : ๐ X) โ is-prop (l โ m) โ-prop-valued fe fe' s l m (f , ฮด) (g , ฮต) = to-ฮฃ-๏ผ (dfunext fe (ฮป p โ being-defined-is-prop m (f p) (g p)) , ฮ -is-prop fe' (ฮป d โ s) _ ฮต)TODO. This order is directed complete (easy). We should also do least fixed points of continuous maps. This TODO was implemented by Tom de Jong in the file DomainTheory.Lifting.LiftingSet.lagda. Next we show that for any l : ๐ X, fiber ฮท l โ is-defined l, using the fact that the fiber is a proposition by virtue of ฮท being an embedding.โ-anti-lemma : propext ๐ฃ โ funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ {l m : ๐ X} โ l โ m โ (is-defined m โ is-defined l) โ l ๏ผ m โ-anti-lemma pe fe fe' {Q , ฯ , j} {P , ฯ , i} (f , ฮด) g = e where ฮต : (p : P) โ ฯ (g p) ๏ผ ฯ p ฮต p = ฮด (g p) โ ap ฯ (i (f (g p)) p) a : Q ๏ผ P a = pe j i f g b : Idtofun (a โปยน) ๏ผ g b = dfunext fe (ฮป p โ j (Idtofun (a โปยน) p) (g p)) c : transport (ฮป - โ (- โ X) ร is-prop -) a (ฯ , j) ๏ผ[ (P โ X) ร is-prop P ] (transport (ฮป - โ - โ X) a ฯ , transport is-prop a j) c = transport-ร (ฮป - โ - โ X) is-prop a d = prโ (transport (ฮป - โ (- โ X) ร is-prop -) a (ฯ , j)) ๏ผโจ I โฉ transport (ฮป - โ - โ X) a ฯ ๏ผโจ II โฉ ฯ โ Idtofun (a โปยน) ๏ผโจ III โฉ ฯ โ g ๏ผโจ IV โฉ ฯ โ where I = ap prโ c II = transport-is-pre-comp a ฯ III = ap (ฮป - โ ฯ โ -) b IV = dfunext fe' ฮต e : Q , ฯ , j ๏ผ P , ฯ , i e = to-ฮฃ-๏ผ (a , to-ร-๏ผ d (being-prop-is-prop fe _ i)) โ-anti : propext ๐ฃ โ funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ {l m : ๐ X} โ (l โ m) ร (m โ l) โ l ๏ผ m โ-anti pe fe fe' ((f , ฮด) , (g , ฮต)) = โ-anti-lemma pe fe fe' (f , ฮด) gWe can now establish the promised fact:open import Lifting.EmbeddingDirectly ๐ฃ ฮท-fiber-same-as-is-defined : propext ๐ฃ โ funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ funext ๐ค (๐ฃ โบ โ ๐ค) โ (l : ๐ X) โ (ฮฃ x ๊ X , ฮท x ๏ผ l) โ is-defined l ฮท-fiber-same-as-is-defined pe fe fe' fe'' l = qinveq (f l) (g l , gf , fg) where f : (l : ๐ X) โ fiber ฮท l โ is-defined l f (๐ , .(ฮป _ โ x) , ๐-is-prop) (x , refl) = โ g : (l : ๐ X) โ is-defined l โ fiber ฮท l g (P , ฯ , i) p = ฯ p , โ-anti pe fe fe' (a , b) where a : ฮท (ฯ p) โ (P , ฯ , i) a = (ฮป _ โ p) , (ฮป _ โ refl) b : (P , ฯ , i) โ ฮท (ฯ p) b = (ฮป _ โ โ) , (ฮป q โ ap ฯ (i q p)) fg : (d : is-defined l) โ f l (g l d) ๏ผ d fg d = being-defined-is-prop l (f l (g l d)) d gf : (z : fiber ฮท l) โ g l (f l z) ๏ผ z gf z = ฮท-is-embedding pe fe fe' fe'' l (g l (f l z)) zThey can't be equal, in the absence of cumulativity (and propositional resizing), as the lhs lives in a universe higher than the rhs, and equality is well-typed only for elements of the same type (here of the same universe). This can be seen by adding type annotations to the formulation of the above equivalence:private ฮท-fiber-same-as-is-defined' : propext ๐ฃ โ funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ funext ๐ค (๐ฃ โบ โ ๐ค) โ (l : ๐ X) โ (fiber ฮท l โถ ๐ฃ โบ โ ๐ค ฬ ) โ (is-defined l โถ ๐ฃ ฬ ) ฮท-fiber-same-as-is-defined' = ฮท-fiber-same-as-is-definedFor no choice of universes ๐ค and ๐ฃ can we have ๐ฃ โบ โ ๐ค to coincide with ๐ฃ. However, for some dominances other than is-prop, it is possible to have the equality between the fiber of l and the definedness of l. The following simplified proof of โ-anti uses the SIP via the construction of _โยท_ in another module:โ-anti-sip : is-univalent ๐ฃ โ funext ๐ฃ ๐ค โ {l m : ๐ X} โ (l โ m) ร (m โ l) โ l ๏ผ m โ-anti-sip ua fe {Q , ฯ , j} {P , ฯ , i} ((f , ฮด) , (g , ฮต)) = โ ๐-Idยท ua fe (Q , ฯ , j) (P , ฯ , i) โโปยน ฮณ where e : Q โ P e = f , ((g , (ฮป p โ i (f (g p)) p)) , (g , (ฮป q โ j (g (f q)) q))) ฮณ : (Q , ฯ , j) โยท (P , ฯ , i) ฮณ = e , ฮดCould the map (anti l m) be an equivalence? No. We instead have an equivalence (l โ m) ร (m โ l) โ (l ๏ผ m) ร (l ๏ผ m), reflecting the fact that there are two candidate proofs for the equality.to-โยท : (l m : ๐ X) โ (l โ m) ร (is-defined m โ is-defined l) โ (l โยท m) to-โยท (Q , ฯ , j) (P , ฯ , i) ((f , ฮด) , g) = (f , ((g , (ฮป p โ i (f (g p)) p)) , (g , (ฮป q โ j (g (f q)) q)))) , ฮด from-โยท : (l m : ๐ X) โ (l โยท m) โ (l โ m) ร (is-defined m โ is-defined l) from-โยท l m (f , g) = (โ f โ , g) , โ f โโปยน from-to-โยท : (l m : ๐ X) โ from-โยท l m โ to-โยท l m โผ id from-to-โยท l m e = refl to-from : funext ๐ฃ ๐ฃ โ (l m : ๐ X) โ to-โยท l m โ from-โยท l m โผ id to-from fe l m ๐@((f , ฮด) , g) = b where ฮด' : is-equiv f ฮด' = โ is-defined-โยท l m (to-โยท l m (from-โยท l m ๐)) โ-is-equiv a : ฮด' ๏ผ ฮด a = being-equiv-is-prop'' fe f ฮด' ฮด b : (f , ฮด') , g ๏ผ (f , ฮด) , g b = ap (ฮป - โ (f , -) , g) a โ-anti-equiv-lemma'' : funext ๐ฃ ๐ฃ โ (l m : ๐ X) โ is-equiv (to-โยท l m) โ-anti-equiv-lemma'' fe l m = qinvs-are-equivs (to-โยท l m) (from-โยท l m , from-to-โยท l m , to-from fe l m) โ-anti-equiv-lemma' : funext ๐ฃ ๐ฃ โ (l m : ๐ X) โ (l โ m) ร (is-defined m โ is-defined l) โ (l โยท m) โ-anti-equiv-lemma' fe l m = to-โยท l m , โ-anti-equiv-lemma'' fe l m โ-anti-equiv-lemma : is-univalent ๐ฃ โ funext ๐ฃ ๐ค โ (l m : ๐ X) โ (l โ m) ร (is-defined m โ is-defined l) โ (l ๏ผ m) โ-anti-equiv-lemma ua fe l m = (โ-anti-equiv-lemma' (univalence-gives-funext ua) l m) โ (โ-sym (๐-Idยท ua fe l m)) โ-anti-equiv : is-univalent ๐ฃ โ funext ๐ฃ ๐ค โ (l m : ๐ X) โ (l โ m) ร (m โ l) โ (l ๏ผ m) ร (m ๏ผ l) โ-anti-equiv ua fe l m = ฮณ โ (ร-cong (โ-anti-equiv-lemma ua fe l m) (โ-anti-equiv-lemma ua fe m l)) where A = (l โ m) ร (m โ l) B = ((l โ m) ร (is-defined m โ is-defined l)) ร ((m โ l) ร (is-defined l โ is-defined m)) ฮณ : A โ B ฮณ = qinveq u (v , vu , uv) where u : A โ B u ((f , ฮด) , (g , ฮต)) = ((f , ฮด) , g) , ((g , ฮต) , f) v : B โ A v (((f , ฮด) , h) , ((g , ฮต) , k)) = (f , ฮด) , (g , ฮต) vu : (a : A) โ v (u a) ๏ผ a vu a = refl uv : (b : B) โ u (v b) ๏ผ b uv (((f , ฮด) , h) , ((g , ฮต) , k)) = t where r : g ๏ผ h r = dfunext (univalence-gives-funext ua) (ฮป p โ being-defined-is-prop l (g p) (h p)) s : f ๏ผ k s = dfunext (univalence-gives-funext ua) (ฮป p โ being-defined-is-prop m (f p) (k p)) t : ((f , ฮด) , g) , (g , ฮต) , f ๏ผ ((f , ฮด) , h) , (g , ฮต) , k t = apโ (ฮป -โ -โ โ ((f , ฮด) , -โ) , (g , ฮต) , -โ) r sNext we show that (l โ m) โ (is-defined l โ l ๏ผ m), so that elements of l โ m can be seen as partial elements of the identity type l ๏ผ m. We begin with the following auxiliary construction, which shows that the type l โ m is modal for the open modality induced by the proposition "is-defined l" (and gave me a headache):โ-open : funext ๐ฃ ๐ฃ โ funext ๐ฃ (๐ฃ โ ๐ค) โ (l m : ๐ X) โ (l โ m) โ (is-defined l โ l โ m) โ-open fe fe'' (Q , ฯ , j) (P , ฯ , i) = qinveq ฯ (ฯ , ฯฯ , ฯฯ) where l = (Q , ฯ , j) m = (P , ฯ , i) ฯ : l โ m โ (is-defined l โ l โ m) ฯ ฮฑ d = ฮฑ ฯ : (is-defined l โ l โ m) โ l โ m ฯ h = (ฮป d โ def-pr l m (h d) d) , (ฮป d โ val-pr l m (h d) d) ฯฯ : ฯ โ ฯ โผ id ฯฯ ฮฑ = refl ฯ-lemma : (h : is-defined l โ l โ m) (q : is-defined l) โ ฯ h ๏ผ h q ฯ-lemma h q = ฮณ where remark : h q ๏ผ def-pr l m (h q) , val-pr l m (h q) remark = refl k : (d : Q) โ def-pr l m (h d) d ๏ผ def-pr l m (h q) d k d = ap (ฮป - โ def-pr l m (h -) d) (j d q) a : (ฮป d โ def-pr l m (h d) d) ๏ผ def-pr l m (h q) a = dfunext fe k u : (d : Q) {f g : Q โ P} (k : f โผ g) โ ap (ฮป (- : Q โ P) โ ฯ (- d)) (dfunext fe k) ๏ผ ap ฯ (k d) u d {f} {g} k = ap-funext f g ฯ k fe d v : (d : Q) โ val-pr l m (h d) d โ ap (ฮป - โ ฯ (- d)) a ๏ผ val-pr l m (h q) d v d = val-pr l m (h d) d โ ap (ฮป - โ ฯ (- d)) a ๏ผโจ I โฉ val-pr l m (h d) d โ ap ฯ (ap (ฮป - โ def-pr l m (h -) d) (j d q)) ๏ผโจ II โฉ val-pr l m (h d) d โ ap (ฮป - โ ฯ (def-pr l m (h -) d)) (j d q) ๏ผโจ III โฉ ap (ฮป _ โ ฯ d) (j d q) โ val-pr l m (h q) d ๏ผโจ IV โฉ refl โ val-pr l m (h q) d ๏ผโจ V โฉ val-pr l m (h q) d โ where I = ap (ฮป - โ val-pr l m (h d) d โ -) (u d k) II = ap (ฮป - โ val-pr l m (h d) d โ -) (ap-ap (ฮป - โ def-pr l m (h -) d) ฯ (j d q)) III = homotopies-are-natural (ฮป _ โ ฯ d) (ฮป - โ ฯ (def-pr l m (h -) d)) (ฮป - โ val-pr l m (h -) d) {d} {q} {j d q} IV = ap (ฮป - โ - โ val-pr l m (h q) d) (ap-const (ฯ d) (j d q)) V = refl-left-neutral t : {f g : Q โ P} (r : f ๏ผ g) (h : ฯ โผ ฯ โ f) โ transport (ฮป - โ ฯ โผ ฯ โ -) r h ๏ผ ฮป q โ h q โ ap (ฮป - โ ฯ (- q)) r t refl h = refl b = transport (ฮป - โ ฯ โผ ฯ โ -) a (ฮป d โ val-pr l m (h d) d) ๏ผโจ I โฉ (ฮป d โ val-pr l m (h d) d โ ap (ฮป - โ ฯ (- d)) a) ๏ผโจ II โฉ val-pr l m (h q) โ where I = t a (ฮป d โ val-pr l m (h d) d) II = dfunext (lower-funext ๐ฃ ๐ฃ fe'') v ฮณ : (ฮป d โ def-pr l m (h d) d) , (ฮป d โ val-pr l m (h d) d) ๏ผ h q ฮณ = to-ฮฃ-๏ผ (a , b) ฯฯ : ฯ โ ฯ โผ id ฯฯ h = dfunext fe'' (ฯ-lemma h)Using this we have the following, as promised:โ-in-terms-of-๏ผ : is-univalent ๐ฃ โ funext ๐ฃ (๐ฃ โบ โ ๐ค) โ (l m : ๐ X) โ (l โ m) โ (is-defined l โ l ๏ผ m) โ-in-terms-of-๏ผ ua feโบ l m = l โ m โโจ a โฉ (is-defined l โ l โ m) โโจ b โฉ ((is-defined l โ l โ m) ร ๐) โโจ c โฉ (is-defined l โ l โ m) ร (is-defined l โ is-defined m โ is-defined l) โโจ d โฉ (is-defined l โ (l โ m) ร (is-defined m โ is-defined l)) โโจ e โฉ (is-defined l โ l ๏ผ m) โ where fe : funext ๐ฃ ๐ฃ fe = univalence-gives-funext ua s : (is-defined l โ is-defined m โ is-defined l) โ ๐ {๐ค} s = singleton-โ-๐ ((ฮป d e โ d) , ฮ -is-prop fe (ฮป d โ ฮ -is-prop fe (ฮป e โ being-defined-is-prop l)) (ฮป d e โ d)) a = โ-open fe (lower-funext ๐ฃ ((๐ฃ โบ) โ ๐ค) feโบ) l m b = โ-sym ๐-rneutral c = ร-cong (โ-refl _) (โ-sym s) d = โ-sym ฮ ฮฃ-distr-โ e = โcong feโบ (lower-funext ๐ฃ ((๐ฃ โบ) โ ๐ค) feโบ) (โ-refl (is-defined l)) (โ-anti-equiv-lemma ua (lower-funext ๐ฃ ((๐ฃ โบ) โ ๐ค) feโบ) l m)And we also get the promised map l โ m โ ๐ (l ๏ผ m) that regards elements of hom-type l โ m as partial element of identity the type l ๏ผ m. (Conjectural conjecture: this map is an embedding.) TODO. This map should be an embedding.โ-lift : is-univalent ๐ฃ โ funext ๐ฃ (๐ฃ โบ โ ๐ค) โ (l m : ๐ X) โ l โ m โ ๐ (l ๏ผ m) โ-lift ua fe l m ฮฑ = is-defined l , โ โ-in-terms-of-๏ผ ua fe l m โ ฮฑ , being-defined-is-prop lWe now show that the wild-โ-category ๐ X is univalent if the universe ๐ฃ is univalent and we have enough function extensionality for ๐ฃ and ๐ค.๐-pre-comp-with : (l m : ๐ X) โ l โ m โ (n : ๐ X) โ m โ n โ l โ n ๐-pre-comp-with l m ฮฑ n = ๐-comp l m n ฮฑ is-๐-equiv : (l m : ๐ X) โ l โ m โ ๐ฃ โบ โ ๐ค ฬ is-๐-equiv l m ฮฑ = (n : ๐ X) โ is-equiv (๐-pre-comp-with l m ฮฑ n) being-๐-equiv-is-prop : funext (๐ฃ โบ โ ๐ค) (๐ฃ โ ๐ค) โ (l m : ๐ X) (ฮฑ : l โ m) โ is-prop (is-๐-equiv l m ฮฑ) being-๐-equiv-is-prop fe l m ฮฑ = ฮ -is-prop fe (ฮป n โ being-equiv-is-prop'' (lower-funext (๐ฃ โบ) ๐ค fe) (๐-pre-comp-with l m ฮฑ n)) is-๐-equivโ : (l m : ๐ X) (ฮฑ : l โ m) โ is-๐-equiv l m ฮฑ โ is-equiv (def-pr l m ฮฑ) is-๐-equivโ l m ฮฑ e = qinvs-are-equivs (def-pr l m ฮฑ) (def-pr m l ฮฒ , (ฮป p โ being-defined-is-prop l (def-pr m l ฮฒ (def-pr l m ฮฑ p)) p) , (ฮป q โ being-defined-is-prop m (def-pr l m ฮฑ (def-pr m l ฮฒ q)) q)) where u : m โ l โ l โ l u = ๐-pre-comp-with l m ฮฑ l ฮฒ : m โ l ฮฒ = inverse u (e l) (๐-id l) is-๐-equivโ : propext ๐ฃ โ funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ (l m : ๐ X) (ฮฑ : l โ m) โ is-equiv (def-pr l m ฮฑ) โ is-๐-equiv l m ฮฑ is-๐-equivโ pe fe fe' l m ฮฑ e = ฮณ where r : l ๏ผ m r = โ-anti-lemma pe fe fe' ฮฑ (inverse (def-pr l m ฮฑ) e) ฯ : (l n : ๐ X) (ฮฑ : l โ l) โ def-pr l l ฮฑ ๏ผ id โ ฮฃ ฮด ๊ ((q : is-defined l) โ value l q ๏ผ value l q) , ๐-pre-comp-with l l ฮฑ n โผ ฮป ฮฒ โ (def-pr l n ฮฒ , (ฮป q โ ฮด q โ val-pr l n ฮฒ q)) ฯ l n (.id , ฮด) refl = ฮด , ฮป ฮฒ โ refl ฯ : (l : ๐ X) (ฮฑ : l โ l) โ is-equiv (def-pr l l ฮฑ) โ is-๐-equiv l l ฮฑ ฯ l ฮฑ e n = equiv-closed-under-โผ u (๐-pre-comp-with l l ฮฑ n) i h where s : def-pr l l ฮฑ ๏ผ id s = dfunext fe (ฮป q โ being-defined-is-prop l (def-pr l l ฮฑ q) q) ฮด : (q : is-defined l) โ value l q ๏ผ value l q ฮด = prโ (ฯ l n ฮฑ s) u : l โ n โ l โ n u ฮฒ = def-pr l n ฮฒ , ฮป q โ ฮด q โ val-pr l n ฮฒ q h : ๐-pre-comp-with l l ฮฑ n โผ u h = prโ (ฯ l n ฮฑ s) v : l โ n โ l โ n v ฮณ = def-pr l n ฮณ , (ฮป p โ (ฮด p)โปยน โ val-pr l n ฮณ p) vu : v โ u โผ id vu (g , ฮต) = to-ฮฃ-๏ผ (refl , dfunext fe' a) where a : (q : is-defined l) โ (ฮด q)โปยน โ (ฮด q โ ฮต q) ๏ผ ฮต q a q = (ฮด q)โปยน โ (ฮด q โ ฮต q) ๏ผโจ I โฉ ((ฮด q)โปยน โ ฮด q) โ ฮต q ๏ผโจ II โฉ refl โ ฮต q ๏ผโจ III โฉ ฮต q โ where I = (โassoc ((ฮด q)โปยน) (ฮด q) (ฮต q))โปยน II = ap (ฮป - โ - โ ฮต q) ((sym-is-inverse (ฮด q))โปยน) III = refl-left-neutral uv : u โ v โผ id uv (g , ฮต) = to-ฮฃ-๏ผ (refl , dfunext fe' a) where a : (q : is-defined l) โ ฮด q โ ((ฮด q)โปยน โ ฮต q) ๏ผ ฮต q a q = ฮด q โ ((ฮด q)โปยน โ ฮต q) ๏ผโจ I โฉ (ฮด q โ ((ฮด q)โปยน)) โ ฮต q ๏ผโจ II โฉ refl โ ฮต q ๏ผโจ III โฉ ฮต q โ where I = (โassoc (ฮด q) ((ฮด q)โปยน) (ฮต q))โปยน II = ap (ฮป - โ - โ ฮต q) ((sym-is-inverse' (ฮด q))โปยน) III = refl-left-neutral i : is-equiv u i = qinvs-are-equivs u (v , vu , uv) ฯ : (l m : ๐ X) โ l ๏ผ m โ (ฮฑ : l โ m) โ is-equiv (def-pr l m ฮฑ) โ is-๐-equiv l m ฮฑ ฯ l .l refl = ฯ l ฮณ : is-๐-equiv l m ฮฑ ฮณ = ฯ l m r ฮฑ eWith this and Yoneda we can now easily derive the univalence of the wild-โ-category ๐ X. The univalence of ๐ฃ is more than we need in the following. Propositional extensionality for propositions in ๐ฃ suffices, but the way we proved this using a general SIP relies on univalence (we could prove a specialized version of the SIP, but this is probably not worth the trouble (we'll see)).module univalence-of-๐ (ua : is-univalent ๐ฃ) (fe : Fun-Ext) where pe : propext ๐ฃ pe = univalence-gives-propext ua is-๐-equiv-charac : (l m : ๐ X) (ฮฑ : l โ m) โ is-๐-equiv l m ฮฑ โ (is-defined m โ is-defined l) is-๐-equiv-charac l m ฮฑ = is-๐-equiv l m ฮฑ โโจ a โฉ is-equiv (def-pr l m ฮฑ) โโจ b โฉ (is-defined m โ is-defined l) โ where a = logically-equivalent-props-are-equivalent (being-๐-equiv-is-prop fe l m ฮฑ) (being-equiv-is-prop'' fe (def-pr l m ฮฑ)) (is-๐-equivโ l m ฮฑ) (is-๐-equivโ pe fe fe l m ฮฑ) b = logically-equivalent-props-are-equivalent (being-equiv-is-prop'' fe (def-pr l m ฮฑ)) (ฮ -is-prop fe (ฮป p โ being-defined-is-prop l)) (inverse (def-pr l m ฮฑ)) (ฮป g โ qinvs-are-equivs (def-pr l m ฮฑ) (g , (ฮป q โ being-defined-is-prop l (g (def-pr l m ฮฑ q)) q) , (ฮป p โ being-defined-is-prop m (def-pr l m ฮฑ (g p)) p))) _โโจ๐โฉ_ : ๐ X โ ๐ X โ ๐ฃ โบ โ ๐ค ฬ l โโจ๐โฉ m = ฮฃ ฮฑ ๊ l โ m , is-๐-equiv l m ฮฑ โโจ๐โฉ-charac : (l m : ๐ X) โ (l โโจ๐โฉ m) โ (l โ m) ร (is-defined m โ is-defined l) โโจ๐โฉ-charac l m = ฮฃ-cong (is-๐-equiv-charac l m) โโจ๐โฉ-is-Id : (l m : ๐ X) โ (l โโจ๐โฉ m) โ (l ๏ผ m) โโจ๐โฉ-is-Id l m = (โโจ๐โฉ-charac l m) โ (โ-anti-equiv-lemma ua fe l m) ๐-is-univalent' : (l : ๐ X) โ โ! m ๊ ๐ X , (l โโจ๐โฉ m) ๐-is-univalent' l = equiv-to-singleton e (singleton-types-are-singletons l) where e : (ฮฃ m ๊ ๐ X , l โโจ๐โฉ m) โ (ฮฃ m ๊ ๐ X , l ๏ผ m) e = ฮฃ-cong (โโจ๐โฉ-is-Id l) ๐-id-is-๐-equiv : (l : ๐ X) โ is-๐-equiv l l (๐-id l) ๐-id-is-๐-equiv l n = (id , h) , (id , h) where h : ๐-pre-comp-with l l (๐-id l) n โผ id h (f , ฮด) = to-ฮฃ-๏ผ (refl , dfunext fe (ฮป p โ refl-left-neutral)) ๐-refl : (l : ๐ X) โ l โโจ๐โฉ l ๐-refl l = ๐-id l , ๐-id-is-๐-equiv l Id-to-๐-eq : (l m : ๐ X) โ l ๏ผ m โ l โโจ๐โฉ m Id-to-๐-eq l m r = transport (l โโจ๐โฉ_) r (๐-refl l) ๐-is-univalent : (l m : ๐ X) โ is-equiv (Id-to-๐-eq l m) ๐-is-univalent l = universality-equiv l (๐-refl l) (central-point-is-universal (l โโจ๐โฉ_) (l , ๐-refl l) (singletons-are-props (๐-is-univalent' l) (l , ๐-refl l))) where open import UF.YonedaThis completes the main goal of the module. We have yet another equivalence, using the above techniques:ฮท-maximal' : (x : X) (l : ๐ X) โ ฮท x โ l โ l โ ฮท x ฮท-maximal' x (P , ฯ , i) (f , ฮด) = (ฮป p โ โ) , (ฮป p โ ap ฯ (i p (f โ)) โ (ฮด โ)โปยน) ฮท-maximal : propext ๐ฃ โ funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ (x : X) (l : ๐ X) โ ฮท x โ l โ ฮท x ๏ผ l ฮท-maximal pe fe fe' x l a = โ-anti pe fe fe' (a , ฮท-maximal' x l a) โฅ-least : (l : ๐ X) โ โฅ โ l โฅ-least l = unique-from-๐ , ฮป z โ unique-from-๐ z โฅ-initial : funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ (l : ๐ X) โ is-singleton (โฅ โ l) โฅ-initial fe fe' l = โฅ-least l , (ฮป ฮฑ โ to-ฮฃ-๏ผ (dfunext fe (ฮป z โ unique-from-๐ z) , dfunext fe'(ฮป z โ unique-from-๐ z))) ฮท-๏ผ-gives-โ : {x y : X} โ x ๏ผ y โ ฮท x โ ฮท y ฮท-๏ผ-gives-โ {x} {y} p = id , (ฮป d โ p) ฮท-โ-gives-๏ผ : {x y : X} โ ฮท x โ ฮท y โ x ๏ผ y ฮท-โ-gives-๏ผ (f , ฮด) = ฮด โ ฮท-๏ผ-gives-โ-is-equiv : funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ {x y : X} โ is-equiv (ฮท-๏ผ-gives-โ {x} {y}) ฮท-๏ผ-gives-โ-is-equiv fe fe' {x} {y} = qinvs-are-equivs ฮท-๏ผ-gives-โ (ฮท-โ-gives-๏ผ , ฮฑ , ฮฒ) where ฮฑ : {x y : X} (p : x ๏ผ y) โ ฮท-โ-gives-๏ผ (ฮท-๏ผ-gives-โ p) ๏ผ p ฮฑ p = refl ฮฒ : {x y : X} (q : ฮท x โ ฮท y) โ ฮท-๏ผ-gives-โ (ฮท-โ-gives-๏ผ q) ๏ผ q ฮฒ (f , ฮด) = to-ร-๏ผ (dfunext fe (ฮป x โ ๐-is-prop x (f x))) (dfunext fe' (ฮป x โ ap ฮด (๐-is-prop โ x))) Id-via-lifting : funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ {x y : X} โ (x ๏ผ y) โ (ฮท x โ ฮท y) Id-via-lifting fe fe' = ฮท-๏ผ-gives-โ , ฮท-๏ผ-gives-โ-is-equiv fe fe'Added 13th March 2024.ฮท-image : funext ๐ฃ ๐ฃ โ funext ๐ฃ ๐ค โ propext ๐ฃ โ {X : ๐ค ฬ } โ ยฌ (ฮฃ l ๊ ๐ X , (l โ โฅ) ร ((x : X) โ l โ ฮท x)) ฮท-image fe fe' pe ((P , ฯ , P-is-prop) , ฮฝ , f) = no-props-other-than-๐-or-๐ pe (P , P-is-prop , g , h) where g : ยฌ (P ๏ผ ๐) g e = ฮฝ (to-ฮฃ-๏ผ (e , to-subtype-๏ผ (ฮป _ โ being-prop-is-prop fe) (dfunext fe' (ฮป x โ ๐-elim x)))) h : ยฌ (P ๏ผ ๐) h refl = f (ฯ โ) (to-ฮฃ-๏ผ (refl , to-subtype-๏ผ (ฮป _ โ being-prop-is-prop fe) (dfunext fe' (ฮป โ โ refl)))) ฮท-bounded : (y : ๐ X) (x x' : X) โ ฮท x โ y โ ฮท x' โ y โ x ๏ผ x' ฮท-bounded y@(P , ฯ , P-is-prop) x x' (p , e) (p' , e') = x ๏ผโจ e โ โฉ ฯ (p โ) ๏ผโจ ap ฯ (P-is-prop (p โ) (p' โ)) โฉ ฯ (p' โ) ๏ผโจ (e' โ)โปยน โฉ x' โTODO. Monad algebras should also be univalent wild-โ-categories.