Module docstring
{"# Adjunctions between functors
F ⊣ G represents the data of an adjunction between two functors
F : C ⥤ D and G : D ⥤ C. F is the left adjoint and G is the right adjoint.
We provide various useful constructors:
* mkOfHomEquiv
* mk': construct an adjunction from the data of a hom set equivalence, unit and counit natural
transformations together with proofs of the equalities homEquiv_unit and homEquiv_counit
relating them to each other.
* leftAdjointOfEquiv / rightAdjointOfEquiv
construct a left/right adjoint of a given functor given the action on objects and
the relevant equivalence of morphism spaces.
* adjunctionOfEquivLeft / adjunctionOfEquivRight witness that these constructions
give adjunctions.
There are also typeclasses IsLeftAdjoint / IsRightAdjoint, which asserts the
existence of a adjoint functor. Given [F.IsLeftAdjoint], a chosen right
adjoint can be obtained as F.rightAdjoint.
Adjunction.comp composes adjunctions.
toEquivalence upgrades an adjunction to an equivalence,
given witnesses that the unit and counit are pointwise isomorphisms.
Conversely Equivalence.toAdjunction recovers the underlying adjunction from an equivalence.
Overview of the directory CategoryTheory.Adjunction
- Adjoint lifting theorems are in the directory
Lifting. - The file
AdjointFunctorTheoremsproves the adjoint functor theorems. - The file
Commashows that for a functorG : D ⥤ Cthe data of an initial object in eachStructuredArrowcategory onGis equivalent to a left adjoint toG, as well as the dual. - The file
Evaluationshows that products and coproducts are adjoint to evaluation of functors. - The file
FullyFaithfulcharacterizes when adjoints are full or faithful in terms of the unit and counit. - The file
Limitsproves that left adjoints preserve colimits and right adjoints preserve limits. - The file
Matesestablishes the bijection between the 2-cellsL₁ R₁ C --→ D C ←-- D G ↓ ↗ ↓ H G ↓ ↘ ↓ H E --→ F E ←-- F L₂ R₂whereL₁ ⊣ R₁andL₂ ⊣ R₂. Specializing to a pair of adjointsL₁ L₂ : C ⥤ D,R₁ R₂ : D ⥤ C, it provides equivalences(L₂ ⟶ L₁) ≃ (R₁ ⟶ R₂)and(L₂ ≅ L₁) ≃ (R₁ ≅ R₂). - The file
Oppositescontains constructions to relate adjunctions of functors to adjunctions of their opposites. - The file
Reflectivedefines reflective functors, i.e. fully faithful right adjoints. Note that many facts about reflective functors are proved in the earlier fileFullyFaithful. - The file
Restrictdefines the restriction of an adjunction along fully faithful functors. - The file
Tripleproves that in an adjoint triple, the left adjoint is fully faithful if and only if the right adjoint is. - The file
Uniqueproves uniqueness of adjoints. - The file
Whiskeringproves that functorsF : D ⥤ EandG : E ⥤ Dwith an adjunctionF ⊣ G, induce adjunctions between the functor categoriesC ⥤ DandC ⥤ E, and the functor categoriesE ⥤ CandD ⥤ C.
Other files related to adjunctions
- The file
CategoryTheory.Monad.Adjunctiondevelops the basic relationship between adjunctions and (co)monads. There it is also shown that given an adjunctionL ⊣ Rand an isomorphismL ⋙ R ≅ 𝟭 C, the unit is an isomorphism, and similarly for the counit. "}