Proposition monad_to_hset_equalizer_struct_laws : hset_equalizer_struct_laws monad_to_hset_equalizer_struct_data. Proof. split. - intros X Y f g hX hY Mf Mg. apply idpath. - intros X Y f g hX hY Mf Mg W hW k Mk q. use funextsec. intro x. use subtypePath. { intro. apply setproperty. } cbn -[Monad] in *. refine (eqtohomot Mk x @ _). apply maponpaths. refine (!_). exact (!(eqtohomot (functor_comp M _ _) _)). 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.