Lemma is_functor_BinCoproduct_of_functors_data : is_functor BinCoproduct_of_functors_data. Proof. split; simpl; intros. - unfold functor_idax; intros; simpl in *. apply pathsinv0. apply BinCoproduct_endo_is_identity. + unfold BinCoproduct_of_functors_mor. rewrite BinCoproductOfArrowsIn1. rewrite functor_id. apply id_left. + unfold BinCoproduct_of_functors_mor. rewrite BinCoproductOfArrowsIn2. rewrite functor_id. apply id_left. - unfold functor_compax, BinCoproduct_of_functors_mor; intros; simpl in *. unfold BinCoproduct_of_functors_mor. do 2 rewrite functor_comp. rewrite <- BinCoproductOfArrows_comp. apply idpath. Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.Limits.Zero. Require Import UniMath.CategoryTheory.Limits.Terminal. Require Import UniMath.CategoryTheory.Limits.Graphs.Colimits. Require Import UniMath.CategoryTheory.Limits.Coproducts. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.whiskering. Require Import UniMath.CategoryTheory.ProductCategory.