proposition: Proposition monad_to_hset_cartesian_struct_laws : hset_cartesian_struct_laws monad_to_hset_cartesian_struct_data.
proof: Proof. split4. - intros X f ; cbn. apply idpath. - intros X Y f g ; cbn. apply idpath. - intros X Y f g ; cbn. apply idpath. - intros W X Y fW fX fY g₁ g₂ Mg₁ Mg₂ ; cbn -[Monad] in *. use funextsec. intro x. use pathsdirprod ; cbn. + refine (eqtohomot Mg₁ _ @ _). apply maponpaths. refine (!_). etrans. { refine (!_). apply (eqtohomot (functor_comp M _ _)). } apply idpath. + refine (eqtohomot Mg₂ _ @ _). apply maponpaths. refine (!_). etrans. { refine (!_). apply (eqtohomot (functor_comp M _ _)). } apply idpath. Qed.
imports: UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Adjunctions.Core UniMath.CategoryTheory.Categories.HSET.All UniMath.CategoryTheory.Limits.BinProducts UniMath.CategoryTheory.Limits.BinCoproducts UniMath.CategoryTheory.Limits.Equalizers UniMath.CategoryTheory.Limits.Coequalizers UniMath.CategoryTheory.Limits.Products UniMath.CategoryTheory.Limits.Preservation UniMath.CategoryTheory.DisplayedCats.Core UniMath.CategoryTheory.DisplayedCats.Structures.CartesianStructure UniMath.CategoryTheory.DisplayedCats.Structures.StructureLimitsAndColimits UniMath.CategoryTheory.Monads.Monads