CategoryEquivalence
structure CategoryEquivalence[O1, M1, O2, M2] {
forward: Functor[O1, M1, O2, M2]
backward: Functor[O2, M2, O1, M1]
unit_fwd: NaturalTransformation[O1, M1, O1, M1]
unit_bwd: NaturalTransformation[O1, M1, O1, M1]
counit_fwd: NaturalTransformation[O2, M2, O2, M2]
counit_bwd: NaturalTransformation[O2, M2, O2, M2]
} constraint {
is_category_equivalence(forward, backward, unit_fwd, unit_bwd, counit_fwd, counit_bwd)
}
An equivalence of categories: a pair of functors with unit/counit natural isomorphisms.
backward
CategoryEquivalence.backward: CategoryEquivalence[O1, M1, O2, M2] -> Functor[O2, M2, O1, M1]
The backward functor.
counit_bwd
CategoryEquivalence.counit_bwd: CategoryEquivalence[O1, M1, O2, M2] -> NaturalTransformation[O2, M2, O2, M2]
The backward direction of the counit natural isomorphism 1_D ≅ F ∘ G.
counit_fwd
CategoryEquivalence.counit_fwd: CategoryEquivalence[O1, M1, O2, M2] -> NaturalTransformation[O2, M2, O2, M2]
The forward direction of the counit natural isomorphism F ∘ G ≅ 1_D.
forward
CategoryEquivalence.forward: CategoryEquivalence[O1, M1, O2, M2] -> Functor[O1, M1, O2, M2]
The forward functor.
unit_bwd
CategoryEquivalence.unit_bwd: CategoryEquivalence[O1, M1, O2, M2] -> NaturalTransformation[O1, M1, O1, M1]
The backward direction of the unit natural isomorphism G ∘ F ≅ 1_C.
unit_fwd
CategoryEquivalence.unit_fwd: CategoryEquivalence[O1, M1, O2, M2] -> NaturalTransformation[O1, M1, O1, M1]
The forward direction of the unit natural isomorphism 1_C ≅ G ∘ F.