Lemma coprod_antidistributor_nat_left (a : A) (cs1 cs2 : power_category I C) (g : power_category I C ⟦ cs1, cs2 ⟧) : bifunctor_coprod_antidistributor a cs1 · a ⊗^{F}_{l} #(coproduct_functor I CPC) g = #(coproduct_functor I CPD) (#(family_functor I (fun _ => leftwhiskering_functor F a)) g) · bifunctor_coprod_antidistributor a cs2. Proof. etrans. { apply postcompWithCoproductArrow. } etrans. 2: { apply pathsinv0, precompWithCoproductArrow. } apply maponpaths. apply funextsec; intro i. etrans. { apply pathsinv0, (functor_comp (leftwhiskering_functor F a)). } etrans. 2: { cbn. apply (functor_comp (leftwhiskering_functor F a)). } apply maponpaths. apply CoproductInCommutes. Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.Isos. Require Import  UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Limits.BinCoproducts. Require Import UniMath.CategoryTheory.Limits.Coproducts. Require Import UniMath.CategoryTheory.ProductCategory. Import BifunctorNotations. Import BifunctorNotations. Section FunctorsFromProductCategory. Import BifunctorNotations. End FunctorsFromProductCategory. Import BifunctorNotations. Import BifunctorNotations. Import BifunctorNotations.