proposition: Lemma binop_equiv_iso_is_equiv (A B : BINOP) : isweq (binop_equiv_iso A B).
proof: Proof. apply (isweq_iso _ (binop_iso_equiv A B)). intros x. apply subtypePath. intros y. apply isapropisbinopfun. unfold binop_equiv_iso, binop_iso_equiv. cbn. use total2_paths_f. cbn. apply idpath. apply isapropisweq. intros y. unfold binop_equiv_iso, binop_iso_equiv. cbn. use total2_paths_f. cbn. unfold make_binopfun. cbn. apply subtypePath. intros x. apply isapropisbinopfun. apply idpath. apply proofirrelevance. apply (isaprop_is_z_isomorphism(C:=BINOP)). Qed.
imports: UniMath.Foundations.PartD UniMath.Foundations.Propositions UniMath.Foundations.Sets UniMath.Foundations.UnivalenceAxiom UniMath.Algebra.BinaryOperations UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.Univalence UniMath.CategoryTheory.Core.Functors