A comonad is a triple where:

  • is an endofunctor
  • (counit)
  • (comultiplication)

Satisfying:

  1. Coassociativity:
  2. Counit: