Definition bicat_of_cats_has_kleisli_ump_2 : has_kleisli_ump_2 m bicat_of_cats_has_kleisli_cocone. Proof. intros C' G₁ G₂ α p. assert (p' : ∏ (x : C), # (pr1 G₁) (kleisli_monad_nat_trans M x) · pr1 α x = pr1 α (M x) · # (pr1 G₂) (kleisli_monad_nat_trans M x)). { intro x. pose (q := nat_trans_eq_pointwise p x). cbn in q. rewrite !id_left, !id_right in q. exact q. } use iscontraprop1. - use invproofirrelevance. intros β₁ β₂. use subtypePath ; [ intro ; apply cellset_property | ]. exact (nat_trans_from_kleisli_cat_monad_unique M α (pr2 β₁) (pr2 β₂)). - simple refine (_ ,, _). + exact (nat_trans_from_kleisli_cat_monad M α p'). + exact (pre_whisker_nat_trans_from_kleisli_cat_monad M α p'). Defined.
Require Import UniMath.Foundations.All. 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.Core.Isos. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.Monads.Monads. Require Import UniMath.CategoryTheory.Monads.KleisliCategory. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.DisplayedBicats.DispBicat. Import DispBicat.Notations. Require Import UniMath.Bicategories.DisplayedBicats.Examples.MonadsLax. Require Import UniMath.Bicategories.Core.Examples.BicatOfCats. Require Import UniMath.Bicategories.Core.Examples.OpMorBicat. Require Import UniMath.Bicategories.Monads.Examples.MonadsInBicatOfCats. Require Import UniMath.Bicategories.Monads.Examples.MonadsInOp1Bicat. Require Import UniMath.Bicategories.Colimits.KleisliObjects.