Lemma idtoiso_relmonad_eq_from_relmonad_z_iso {C : precategory_data} {D : category} (H: is_univalent D) (J : functor C D) {R R': RelMonad J} (α : z_iso(C := category_RelMonad D J) R R') : idtoiso(C := category_RelMonad D J) (relmonad_eq_from_relmonad_z_iso H J α) = α. Proof. apply (z_iso_eq(C := category_RelMonad D J)). apply RelMonadMor_equiv. - apply D. - apply funextsec; intro c. etrans. { apply z_iso_from_is_relmonadmor_z_iso_p. } rewrite (z_iso_from_is_relmonadmor_z_iso_idtoiso D J (relmonad_eq_from_relmonad_z_iso H J α)). rewrite idtoiso_functorcat_compute_pointwise'. unfold relmonad_eq_from_relmonad_z_iso. unfold RelMonad_eq. rewrite pr1_pr1_relmonadmor_eq_from_relmonadmor_z_iso_idtoiso_aux. rewrite base_total2_paths. rewrite base_total2_paths. intermediate_path (pr1 (idtoiso (isotoid D H (functor_z_iso_pointwise_if_z_iso' C D _ _ (z_iso_from_is_relmonadmor_z_iso D J α) c)))). 2: { rewrite idtoiso_isotoid. apply idpath. } apply maponpaths. apply maponpaths. apply isotoid_functorcat_pointwise. Qed.
Require Import UniMath.Foundations.PartD. Require Import UniMath.Foundations.Propositions. Require Import UniMath.Foundations.Sets. Require Import UniMath.MoreFoundations.Tactics. Require Import UniMath.MoreFoundations.PartA. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Adjunctions.Core.