Adjunctions in bicategories #
For 1-morphisms f : a ⟶ b
and g : b ⟶ a
in a bicategory, an adjunction between f
and g
consists of a pair of 2-morphism η : 𝟙 a ⟶ f ≫ g
and ε : g ≫ f ⟶ 𝟙 b
satisfying the triangle
identities. The 2-morphism η
is called the unit and ε
is called the counit.
Main definitions #
Bicategory.Adjunction
: adjunctions between two 1-morphisms.Bicategory.Equivalence
: adjoint equivalences between two objects.Bicategory.mkOfAdjointifyCounit
: construct an adjoint equivalence from 2-isomorphismsη : 𝟙 a ≅ f ≫ g
andε : g ≫ f ≅ 𝟙 b
, by upgradingε
to a counit.
Implementation notes #
The computation of 2-morphisms in the proof is done using calc
blocks. Typically,
the LHS and the RHS in each step of calc
are related by simple rewriting up to associators
and unitors. So the proof for each step should be of the form rw [...]; coherence
. In practice,
our proofs look like rw [...]; simp [bicategoricalComp]; coherence
. The simp
is not strictly
necessary, but it speeds up the proof and allow us to avoid increasing the maxHeartbeats
.
The speedup is probably due to reducing the length of the expression e.g. by absorbing
identity maps or applying the pentagon relation. Such a hack may not be necessary if the
coherence tactic is improved. One possible way would be to perform such a simplification in the
preprocessing of the coherence tactic.
TODO #
Bicategory.mkOfAdjointifyUnit
: construct an adjoint equivalence from 2-isomorphismsη : 𝟙 a ≅ f ≫ g
andε : g ≫ f ≅ 𝟙 b
, by upgradingη
to a unit.
The 2-morphism defined by the following pasting diagram:
a ------ ▸ a
\ η ◥ \
f \ g / \ f
◢ / ε ◢
b ------ ▸ b
Equations
Instances For
The 2-morphism defined by the following pasting diagram:
a ------ ▸ a
◥ \ η ◥
g / \ f / g
/ ε ◢ /
b ------ ▸ b
Equations
Instances For
Adjunction between two 1-morphisms.
The unit of an adjunction.
- counit : CategoryTheory.CategoryStruct.comp g f ⟶ CategoryTheory.CategoryStruct.id b
The counit of an adjunction.
- left_triangle : CategoryTheory.Bicategory.leftZigzag self.unit self.counit = CategoryTheory.CategoryStruct.comp (CategoryTheory.Bicategory.leftUnitor f).hom (CategoryTheory.Bicategory.rightUnitor f).inv
The composition of the unit and the counit is equal to the identity up to unitors.
- right_triangle : CategoryTheory.Bicategory.rightZigzag self.unit self.counit = CategoryTheory.CategoryStruct.comp (CategoryTheory.Bicategory.rightUnitor g).hom (CategoryTheory.Bicategory.leftUnitor g).inv
The composition of the unit and the counit is equal to the identity up to unitors.
Instances For
The composition of the unit and the counit is equal to the identity up to unitors.
The composition of the unit and the counit is equal to the identity up to unitors.
Adjunction between two 1-morphisms.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Adjunction between identities.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- CategoryTheory.Bicategory.Adjunction.instInhabitedId = { default := CategoryTheory.Bicategory.Adjunction.id a }
Auxiliary definition for adjunction.comp
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Auxiliary definition for adjunction.comp
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Composition of adjunctions.
Equations
- adj₁.comp adj₂ = { unit := adj₁.compUnit adj₂, counit := adj₁.compCounit adj₂, left_triangle := ⋯, right_triangle := ⋯ }
Instances For
The isomorphism version of leftZigzag
.
Equations
Instances For
The isomorphism version of rightZigzag
.
Equations
Instances For
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
An auxiliary definition for mkOfAdjointifyCounit
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Adjoint equivalences between two objects.
- hom : a ⟶ b
A 1-morphism in one direction.
- inv : b ⟶ a
A 1-morphism in the other direction.
- unit : CategoryTheory.CategoryStruct.id a ≅ CategoryTheory.CategoryStruct.comp self.hom self.inv
- counit : CategoryTheory.CategoryStruct.comp self.inv self.hom ≅ CategoryTheory.CategoryStruct.id b
- left_triangle : CategoryTheory.Bicategory.leftZigzagIso self.unit self.counit = CategoryTheory.Bicategory.leftUnitor self.hom ≪≫ (CategoryTheory.Bicategory.rightUnitor self.hom).symm
The composition of the unit and the counit is equal to the identity up to unitors.
Instances For
The composition of the unit and the counit is equal to the identity up to unitors.
Adjoint equivalences between two objects.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The identity 1-morphism is an equivalence.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- CategoryTheory.Bicategory.Equivalence.instInhabited = { default := CategoryTheory.Bicategory.Equivalence.id a }
Construct an adjoint equivalence from 2-isomorphisms by upgrading ε
to a counit.
Equations
- CategoryTheory.Bicategory.Equivalence.mkOfAdjointifyCounit η ε = { hom := f, inv := g, unit := η, counit := CategoryTheory.Bicategory.adjointifyCounit η ε, left_triangle := ⋯ }
Instances For
A structure giving a chosen right adjoint of a 1-morphism left
.
- right : b ⟶ a
The right adjoint to
left
. - adj : CategoryTheory.Bicategory.Adjunction left self.right
Instances For
The existence of a right adjoint of f
.
- mk' :: (
- nonempty : Nonempty (CategoryTheory.Bicategory.RightAdjoint left)
- )
Instances
Use the axiom of choice to extract a right adjoint from an IsLeftAdjoint
instance.
Equations
Instances For
The right adjoint of a 1-morphism.
Equations
Instances For
Evidence that f⁺⁺
is a right adjoint of f
.
Equations
Instances For
A structure giving a chosen left adjoint of a 1-morphism right
.
- left : a ⟶ b
The left adjoint to
right
. - adj : CategoryTheory.Bicategory.Adjunction self.left right
Instances For
The existence of a left adjoint of f
.
- mk' :: (
- nonempty : Nonempty (CategoryTheory.Bicategory.LeftAdjoint right)
- )
Instances
Use the axiom of choice to extract a left adjoint from an IsRightAdjoint
instance.
Equations
Instances For
The left adjoint of a 1-morphism.
Equations
Instances For
Evidence that f⁺
is a left adjoint of f
.