module Cat.Functor.Univalence where
Our previous results about paths between functors, componentwise invertibility, and general reasoning in univalent categories assemble into the following very straightforward proof that is univalent whenever is.
: is-category D → is-category Cat[ C , D ]
Functor-is-category {D = D} {C = C} d-cat .to-path {F} {G} im =
Functor-is-category (λ x → d-cat .to-path (isoⁿ→iso im x)) coh
Functor-path where
open Univalent d-cat using (Hom-pathp-iso ; pulll ; cancelr)
abstract
: ∀ {x y : C .Ob} (f : C .Hom x y)
coh → PathP (λ i → D .Hom (d-cat .to-path (isoⁿ→iso im x) i) (d-cat .to-path (isoⁿ→iso im y) i))
(F .F₁ f) (G .F₁ f)
= Hom-pathp-iso ( pulll (Isoⁿ.to im .is-natural _ _ _)
coh f (Isoⁿ.invl im ηₚ _))
∙ cancelr {D = D} d-cat .to-path-over p =
Functor-is-category _ _ (λ x → Hom-pathp-reflr-iso (Precategory.idr D (Isoⁿ.to p .η x)))
≅ⁿ-pathp where open Univalent d-cat