Homotopies of natural transformations in large precategories
module category-theory.homotopies-natural-transformations-large-precategories where
Imports
open import category-theory.functors-large-precategories open import category-theory.large-precategories open import category-theory.natural-transformations-large-precategories open import foundation.homotopies open import foundation.identity-types open import foundation.universe-levels
Idea
Two natural transformations α β : F ⇒ G
are homotopic if for every object x
there is an identity Id (α x) (β x)
.
In UUω
the usual identity type is not available. If it were, we would be able
to characterize the identity type of natural transformations from F
to G
as
the type of homotopies of natural transformations.
Definitions
Homotopies of natural transformations
module _ {αC αD γF γG : Level → Level} {βC βD : Level → Level → Level} {C : Large-Precategory αC βC} {D : Large-Precategory αD βD} {F : functor-Large-Precategory C D γF} {G : functor-Large-Precategory C D γG} where htpy-natural-transformation-Large-Precategory : (α β : natural-transformation-Large-Precategory F G) → UUω htpy-natural-transformation-Large-Precategory α β = { l : Level} (X : obj-Large-Precategory C l) → ( obj-natural-transformation-Large-Precategory α X) = ( obj-natural-transformation-Large-Precategory β X)
The reflexivity homotopy
module _ {αC αD γF γG : Level → Level} {βC βD : Level → Level → Level} {C : Large-Precategory αC βC} {D : Large-Precategory αD βD} {F : functor-Large-Precategory C D γF} {G : functor-Large-Precategory C D γG} where refl-htpy-natural-transformation-Large-Precategory : (α : natural-transformation-Large-Precategory F G) → htpy-natural-transformation-Large-Precategory α α refl-htpy-natural-transformation-Large-Precategory α = refl-htpy
Concatenation of homotopies
A homotopy from α
to β
can be concatenated with a homotopy from β
to γ
to form a homotopy from α
to γ
. The concatenation is associative.
concat-htpy-natural-transformation-Large-Precategory : (α β γ : natural-transformation-Large-Precategory F G) → htpy-natural-transformation-Large-Precategory α β → htpy-natural-transformation-Large-Precategory β γ → htpy-natural-transformation-Large-Precategory α γ concat-htpy-natural-transformation-Large-Precategory α β γ H K X = H X ∙ K X associative-concat-htpy-natural-transformation-Large-Precategory : (α β γ δ : natural-transformation-Large-Precategory F G) (H : htpy-natural-transformation-Large-Precategory α β) (K : htpy-natural-transformation-Large-Precategory β γ) (L : htpy-natural-transformation-Large-Precategory γ δ) → {l : Level} (X : obj-Large-Precategory C l) → ( concat-htpy-natural-transformation-Large-Precategory α γ δ ( concat-htpy-natural-transformation-Large-Precategory α β γ H K) ( L) ( X)) = ( concat-htpy-natural-transformation-Large-Precategory α β δ ( H) ( concat-htpy-natural-transformation-Large-Precategory β γ δ K L) ( X)) associative-concat-htpy-natural-transformation-Large-Precategory α β γ δ H K L X = assoc (H X) (K X) (L X)