fact: Definition mkComMonoidLaws (mon_eqv: Proper (eqv ==> eqv ==> eqv) mon2) (monA: forall x y z, mon2 x (mon2 y z) ≡ mon2 (mon2 x y) z) (monC : forall x y, mon2 x y ≡ mon2 y x) (monU: forall x, mon2 x mon0 ≡ x) := ComMonoidLaws (MonoidLaws mon_eqv monA monU (monUl_of_com monU monC)) monC.
imports: HB(structures) Coq(RelationClasses Morphisms Relation_Definitions) mathcomp(all_ssreflect)