Lemma algebra_as_coequalizer_ump_eq_lem_1 : # M hX · pr1 g = μ M X · pr1 g. Proof. refine (_ @ maponpaths pr1 (!p) @ _). - refine (maponpaths (λ z, z · _) _). simpl. rewrite (functor_comp M). refine (_ @ assoc (#M hX) _ _). refine (!(id_right _) @ _). apply maponpaths. refine (!_). apply Monad_law2. - refine (maponpaths (λ z, z · _) _). refine (_ @ id_left _). refine (maponpaths (λ z, z · _) _). apply functor_id. Qed.
Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Adjunctions.Core. Require Import UniMath.CategoryTheory.Categories.HSET.All. Require Import UniMath.CategoryTheory.Limits.BinProducts. Require Import UniMath.CategoryTheory.Limits.BinCoproducts. Require Import UniMath.CategoryTheory.Limits.Equalizers. Require Import UniMath.CategoryTheory.Limits.Coequalizers. Require Import UniMath.CategoryTheory.Limits.Products. Require Import UniMath.CategoryTheory.Limits.Preservation. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Structures.CartesianStructure. Require Import UniMath.CategoryTheory.DisplayedCats.Structures.StructureLimitsAndColimits. Require Import UniMath.CategoryTheory.Monads.Monads.