Documentation

Mathlib.CategoryTheory.Monad.Coequalizer

Special coequalizers associated to a monad #

Associated to a monad T : C ⥤ C we have important coequalizer constructions: Any algebra is a coequalizer (in the category of algebras) of free algebras. Furthermore, this coequalizer is reflexive. In C, this cofork diagram is a split coequalizer (in particular, it is still a coequalizer). This split coequalizer is known as the Beck coequalizer (as it features heavily in Beck's monadicity theorem).

This file has been adapted to Mathlib.CategoryTheory.Monad.Equalizer. Please try to keep them in sync.

Show that any algebra is a coequalizer of free algebras.

def CategoryTheory.Monad.FreeCoequalizer.topMap {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T : CategoryTheory.Monad C} (X : T.Algebra) :
T.free.obj (T.obj X.A) T.free.obj X.A

The top map in the coequalizer diagram we will construct.

Equations
Instances For
def CategoryTheory.Monad.FreeCoequalizer.bottomMap {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T : CategoryTheory.Monad C} (X : T.Algebra) :
T.free.obj (T.obj X.A) T.free.obj X.A

The bottom map in the coequalizer diagram we will construct.

Equations
Instances For

The cofork map in the coequalizer diagram we will construct.

Equations

The cofork constructed is a colimit. This shows that any algebra is a (reflexive) coequalizer of free algebras.

Equations
  • One or more equations did not get rendered due to their size.

The Beck cofork is a split coequalizer.

Equations
  • One or more equations did not get rendered due to their size.

This is the Beck cofork. It is a split coequalizer, in particular a coequalizer.

Equations