Proposition functor_to_kleisli_incl_nat_trans_enrichment : nat_trans_enrichment (functor_to_kleisli_cat_incl_nat_trans M) kleisli_incl_enrichment (functor_comp_enrichment (Left_Kleisli_functor_enrichment EM) functor_to_kleisli_cat_enrichment). Proof. use nat_trans_enrichment_via_comp. intros x y. use (dialgebra_enrichment_mor_eq_of_mor V HV EM (functor_id_enrichment E)). rewrite !assoc'. rewrite kleisli_cat_enrichment_precomp_arr. rewrite kleisli_cat_enrichment_postcomp_arr. rewrite !assoc ; cbn. rewrite precomp_arr_id, postcomp_arr_id. rewrite !id_right. rewrite !assoc'. rewrite functor_to_kleisli_cat_enrichment_data_incl. rewrite free_alg_enrichment_mor_incl. unfold functor_to_kleisli_cat_enrichment_mor. rewrite !assoc. rewrite <- functor_enrichment_postcomp_arr. rewrite !assoc'. rewrite <- postcomp_arr_comp. etrans. { do 2 apply maponpaths. exact (@Monad_law2 _ M y). } rewrite postcomp_arr_id. apply id_right. Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Subcategory.Core. Require Import UniMath.CategoryTheory.Subcategory.Full. Require Import UniMath.CategoryTheory.Categories.Dialgebras. Require Import UniMath.CategoryTheory.Categories.EilenbergMoore. Require Import UniMath.CategoryTheory.Categories.KleisliCategory. Require Import UniMath.CategoryTheory.EnrichedCats.Enrichment. Require Import UniMath.CategoryTheory.EnrichedCats.EnrichmentFunctor. Require Import UniMath.CategoryTheory.EnrichedCats.EnrichmentTransformation. Require Import UniMath.CategoryTheory.EnrichedCats.EnrichmentMonad. Require Import UniMath.CategoryTheory.EnrichedCats.Examples.DialgebraEnriched. Require Import UniMath.CategoryTheory.EnrichedCats.Examples.EilenbergMooreEnriched. Require Import UniMath.CategoryTheory.EnrichedCats.Examples.FullSubEnriched. Require Import UniMath.CategoryTheory.EnrichedCats.Examples.ImageEnriched. Require Import UniMath.CategoryTheory.EnrichedCats.Examples.KleisliEnriched. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monads.Monads. Require Import UniMath.CategoryTheory.Monads.KleisliCategory. Require Import UniMath.CategoryTheory.Limits.Equalizers.