proposition: Lemma Coproducts_slice_precat (x : C) : Coproducts I (C / x).
proof: Proof. intros a. use make_Coproduct. + exists (CoproductObject _ _ (BC (λ i, pr1 (a i)))). apply CoproductArrow; intro i; apply (pr2 (a i)). + intro i; use tpair; simpl. - apply (CoproductIn I C (BC (λ i, pr1 (a i))) i). - abstract (rewrite (CoproductInCommutes I C _ (BC (λ i, pr1 (a i)))); apply idpath). + intros c f. use unique_exists. - exists (CoproductArrow _ _ _ (λ i, pr1 (f i))). abstract (simpl; apply pathsinv0, CoproductArrowUnique; intro i; rewrite assoc, (CoproductInCommutes _ _ _ (BC (λ i, pr1 (a i)))), (pr2 (f i)); apply idpath). - abstract (intros i; apply eq_mor_slicecat, (CoproductInCommutes _ _ _ (BC (λ i0 : I, pr1 (a i0))))). - abstract (intros y; apply impred; intro i; apply has_homsets_slice_precat). - abstract (simpl; intros y Hy; apply eq_mor_slicecat, CoproductArrowUnique; intros i; apply (maponpaths pr1 (Hy i))). Defined.
imports: UniMath.Foundations.PartD UniMath.Foundations.Propositions UniMath.Foundations.Sets UniMath.MoreFoundations.Tactics UniMath.MoreFoundations.Univalence UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Core.Univalence UniMath.CategoryTheory.FunctorCategory UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Limits.Graphs.Limits UniMath.CategoryTheory.Limits.Graphs.Colimits UniMath.CategoryTheory.Limits.Pullbacks UniMath.CategoryTheory.Limits.BinProducts UniMath.CategoryTheory.Limits.BinCoproducts UniMath.CategoryTheory.Limits.Coproducts UniMath.CategoryTheory.Limits.Initial UniMath.CategoryTheory.Limits.Terminal UniMath.CategoryTheory.Adjunctions.Core UniMath.CategoryTheory.exponentials UniMath.CategoryTheory.Monics UniMath.CategoryTheory.Epis