proposition: Lemma isaprop_BinCoproduct : isaprop (BinCoproduct a b).
proof: Proof. apply invproofirrelevance. intros CC CC'. apply subtypePath. + intros. intro. do 3 (apply impred; intro); apply isapropiscontr. + apply (total2_paths_f (isotoid _ H (z_iso_from_BinCoproduct_to_BinCoproduct _ CC CC'))). rewrite transportf_dirprod. rewrite transportf_isotoid'. simpl. rewrite transportf_isotoid'. destruct CC as [CC bla]. destruct CC' as [CC' bla']; simpl in *. destruct CC as [CC [CC1 CC2]]. destruct CC' as [CC' [CC1' CC2']]; simpl in *. unfold from_BinCoproduct_to_BinCoproduct. rewrite BinCoproductIn1Commutes. rewrite BinCoproductIn2Commutes. apply idpath. Qed.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Core.Univalence UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.PrecategoryBinProduct UniMath.CategoryTheory.Limits.Zero UniMath.CategoryTheory.Limits.Terminal UniMath.CategoryTheory.Limits.Graphs.Colimits UniMath.CategoryTheory.Limits.Coproducts UniMath.CategoryTheory.FunctorCategory UniMath.CategoryTheory.whiskering UniMath.CategoryTheory.ProductCategory