Strict bicategories #
A bicategory is called Strict
if the left unitors, the right unitors, and the associators are
isomorphisms given by equalities.
Implementation notes #
In the literature of category theory, a strict bicategory (usually called a strict 2-category) is
often defined as a bicategory whose left unitors, right unitors, and associators are identities.
We cannot use this definition directly here since the types of 2-morphisms depend on 1-morphisms.
For this reason, we use eqToIso
, which gives isomorphisms from equalities, instead of
identities.
A bicategory is called Strict
if the left unitors, the right unitors, and the associators are
isomorphisms given by equalities.
- id_comp : ∀ {a b : B} (f : a ⟶ b), CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.id a) f = f
Identity morphisms are left identities for composition.
- comp_id : ∀ {a b : B} (f : a ⟶ b), CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.id b) = f
Identity morphisms are right identities for composition.
- assoc : ∀ {a b c d : B} (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d), CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g) h = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h)
Composition in a bicategory is associative.
- leftUnitor_eqToIso : ∀ {a b : B} (f : a ⟶ b), CategoryTheory.Bicategory.leftUnitor f = CategoryTheory.eqToIso ⋯
The left unitors are given by equalities
- rightUnitor_eqToIso : ∀ {a b : B} (f : a ⟶ b), CategoryTheory.Bicategory.rightUnitor f = CategoryTheory.eqToIso ⋯
The right unitors are given by equalities
- associator_eqToIso : ∀ {a b c d : B} (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d), CategoryTheory.Bicategory.associator f g h = CategoryTheory.eqToIso ⋯
The associators are given by equalities
Instances
Category structure on a strict bicategory