Lemma is_nat_trans_μ {C : category} (T : KleisliMonad C) : is_nat_trans (kleisli_functor T ∙ kleisli_functor T) (kleisli_functor T) (μ T). Proof. unfold is_nat_trans, μ. simpl. intros. rewrite (map_bind T), (bind_map T). now rewrite id_left, id_right. Defined.
Require Import UniMath.Foundations.PartD. Require Import UniMath.Foundations.Propositions. Require Import UniMath.Foundations.Sets. Require Import UniMath.MoreFoundations.Tactics. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.whiskering. Require Import UniMath.CategoryTheory.Monads.Monads. Require Import UniMath.CategoryTheory.Monads.RelativeMonads.