This is an archived version pinned as of the submission of my master's thesis. An up-to-date version may be found online.
Essentially injective functors between precategories
module category-theory.essentially-injective-functors-precategories where
Imports
open import category-theory.functors-precategories open import category-theory.isomorphisms-in-precategories open import category-theory.precategories open import foundation.dependent-pair-types open import foundation.universe-levels
Idea
A functor F : C → D
between
precategories is essentially injective
if every pair of objects that are mapped to
isomorphic objects in D
are isomorphic in C
.
Definitions
The type of proofs of being essentially injective
module _ {l1 l2 l3 l4 : Level} (C : Precategory l1 l2) (D : Precategory l3 l4) (F : functor-Precategory C D) where is-essentially-injective-functor-Precategory : UU (l1 ⊔ l2 ⊔ l4) is-essentially-injective-functor-Precategory = (x y : obj-Precategory C) → iso-Precategory D ( obj-functor-Precategory C D F x) ( obj-functor-Precategory C D F y) → iso-Precategory C x y
The type of essentially injective functors
essentially-injective-functor-Precategory : {l1 l2 l3 l4 : Level} (C : Precategory l1 l2) (D : Precategory l3 l4) → UU (l1 ⊔ l2 ⊔ l3 ⊔ l4) essentially-injective-functor-Precategory C D = Σ ( functor-Precategory C D) ( is-essentially-injective-functor-Precategory C D) module _ {l1 l2 l3 l4 : Level} (C : Precategory l1 l2) (D : Precategory l3 l4) (F : essentially-injective-functor-Precategory C D) where functor-essentially-injective-functor-Precategory : functor-Precategory C D functor-essentially-injective-functor-Precategory = pr1 F is-essentially-injective-essentially-injective-functor-Precategory : is-essentially-injective-functor-Precategory C D ( functor-essentially-injective-functor-Precategory) is-essentially-injective-essentially-injective-functor-Precategory = pr2 F obj-essentially-injective-functor-Precategory : obj-Precategory C → obj-Precategory D obj-essentially-injective-functor-Precategory = obj-functor-Precategory C D ( functor-essentially-injective-functor-Precategory) hom-essentially-injective-functor-Precategory : {x y : obj-Precategory C} → hom-Precategory C x y → hom-Precategory D ( obj-essentially-injective-functor-Precategory x) ( obj-essentially-injective-functor-Precategory y) hom-essentially-injective-functor-Precategory = hom-functor-Precategory C D ( functor-essentially-injective-functor-Precategory)