Monadic adjunctions🔗

An adjunction between functors and is monadic if the induced comparison functor (where the right-hand side is the Eilenberg-Moore category of the monad of the adjunction) is an equivalence of categories.

module
  Cat.Functor.Adjoint.Monadic
  {o₁ h₁ o₂ h₂ : _}
  {C : Precategory o₁ h₁}
  {D : Precategory o₂ h₂}
  {L : Functor C D} {R : Functor D C}
  (L⊣R : L  R)
  where

The composition of R.₁ with the adjunction counit natural transformation gives R an Algebra structure, thus extending R to a functor

Comparison-EM : Functor D (Eilenberg-Moore R∘L)
Comparison-EM .F₀ x = R.₀ x , alg where
  alg : Algebra-on R∘L (R.₀ x)
  alg .Algebra-on.ν = R.₁ (adj.counit.ε _)
  alg .Algebra-on.ν-unit = adj.zag
  alg .Algebra-on.ν-mult = R.weave (sym $ adj.counit.is-natural _ _ _)
Construction of the functorial action of Comparison-EM
Comparison-EM .F₁ x .fst = R.₁ x
Comparison-EM .F₁ x .snd = R.weave (sym (adj.counit.is-natural _ _ _))
Comparison-EM .F-id    = ext R.F-id
Comparison-EM .F-∘ f g = ext (R.F-∘ _ _)

By construction, the composition of the comparison functor with the forgetful functor is equal to

Forget∘Comparison≡R : Forget-EM F∘ Comparison-EM  R
Forget∘Comparison≡R = Functor-path  _  refl)  _  refl)

To summarise, we have the following triangle:

An adjunction is monadic if Comparison-EM is an equivalence of categories, thus exhibiting as the category of

is-monadic : Type _
is-monadic = is-equivalence Comparison-EM

We also say that the right adjoint is a monadic functor.

Monadic functors create limits🔗

By the description of limits in categories of algebras, Forget-EM creates limits. Furthermore, if the adjunction is monadic, then Comparison-EM is an equivalence of categories, so it also creates limits. Since this property is closed under composition, monadic functors creates limits.

  monadic→creates-limits
    :  {oj ℓj} {J : Precategory oj ℓj}  creates-limits-of J R
  monadic→creates-limits = subst (creates-limits-of _) Forget∘Comparison≡R $
    F∘-creates-limits (equivalence→creates-limits monadic)
      (Forget-EM-creates-limits R∘L)