Documentation

Mathlib.CategoryTheory.Limits.Shapes.DisjointCoproduct

Disjoint coproducts #

Defines disjoint coproducts: coproducts where the intersection is initial and the coprojections are monic. Shows that a category with disjoint coproducts is InitialMonoClass.

TODO #

class CategoryTheory.Limits.CoproductDisjoint {C : Type u} [Category.{v, u} C] {ι : Type u_1} (X : ιC) :

We say the coproduct of the family Xᵢ is disjoint, if whenever we have a pullback diagram of the form

Z  ⟶ X₁
↓    ↓
X₂ ⟶ ∐ X

Z is initial.

Instances
    theorem CategoryTheory.Limits.CoproductDisjoint.of_cofan {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} {c : Cofan X} (hc : IsColimit c) [∀ (i : ι), Mono (c.inj i)] (s : {i j : ι} → i jPullbackCone (c.inj i) (c.inj j)) (hs : {i j : ι} → (hij : i j) → IsLimit (s hij)) (H : {i j : ι} → (hij : i j) → IsInitial (s hij).pt) :
    theorem CategoryTheory.Limits.CoproductDisjoint.of_hasCoproduct {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [HasCoproduct X] [∀ (i : ι), Mono (Sigma.ι X i)] (s : {i j : ι} → i jPullbackCone (Sigma.ι X i) (Sigma.ι X j)) (hs : {i j : ι} → (hij : i j) → IsLimit (s hij)) (H : {i j : ι} → (hij : i j) → IsInitial (s hij).pt) :
    theorem CategoryTheory.Mono.of_coproductDisjoint {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [Limits.CoproductDisjoint X] {c : Limits.Cofan X} (hc : Limits.IsColimit c) (i : ι) :
    Mono (c.inj i)
    noncomputable def CategoryTheory.Limits.IsInitial.ofCoproductDisjointOfIsColimitOfIsLimit {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [CoproductDisjoint X] {i j : ι} (hij : i j) {c : Cofan X} (hc : IsColimit c) {s : PullbackCone (c.inj i) (c.inj j)} (hs : IsLimit s) :

    If i ≠ j and Xᵢ ← Y → Xⱼ is a pullback diagram over Z, where Z is the coproduct of the Xᵢ, then Y is initial.

    Equations
      Instances For
        noncomputable def CategoryTheory.Limits.IsInitial.ofCoproductDisjoint {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [CoproductDisjoint X] {i j : ι} (hij : i j) [HasCoproduct X] [HasPullback (Sigma.ι X i) (Sigma.ι X j)] :

        If i ≠ j, the pullback Xᵢ ×[∐ X] Xⱼ is initial.

        Equations
          Instances For
            noncomputable def CategoryTheory.Limits.IsInitial.ofCoproductDisjointOfIsColimit {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [CoproductDisjoint X] {i j : ι} (hij : i j) {Z : C} {f : (i : ι) → X i Z} [HasPullback (f i) (f j)] (hc : IsColimit (Cofan.mk Z f)) :
            IsInitial (pullback (f i) (f j))

            If i ≠ j, the pullback Xᵢ ×[Z] Xⱼ is initial, if Z is the coproduct of the Xᵢ.

            Equations
              Instances For
                noncomputable def CategoryTheory.Limits.IsInitial.ofCoproductDisjointOfIsLimit {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [CoproductDisjoint X] {i j : ι} (hij : i j) [HasCoproduct X] {s : PullbackCone (Sigma.ι X i) (Sigma.ι X j)} (hs : IsLimit s) :

                If i ≠ j and Xᵢ ← Y → Xⱼ is a pullback diagram over ∐ X, Y is initial.

                Equations
                  Instances For
                    noncomputable def CategoryTheory.Limits.IsInitial.ofCoproductDisjointOfCommSq {C : Type u} [Category.{v, u} C] {ι : Type u_1} {X : ιC} [CoproductDisjoint X] {i j : ι} (hij : i j) [HasStrictInitialObjects C] {c : Cofan X} (hc : IsColimit c) {Z : C} (fst : Z X i) (snd : Z X j) (h : CategoryStruct.comp fst (c.inj i) = CategoryStruct.comp snd (c.inj j)) [HasPullback (c.inj i) (c.inj j)] :

                    If C has strict initial objects and there is a commutative square Xᵢ ← Z → Xⱼ over ∐ X, then Z is initial.

                    Equations
                      Instances For
                        @[reducible, inline]

                        The binary coproduct of X and Y is disjoint if the coproduct of the family {X, Y} is disjoint.

                        Equations
                          Instances For

                            If X ← Z → Y is a pullback diagram over W, where W is the coproduct of X and Y, then Z is initial.

                            Equations
                              Instances For

                                The pullback X ×[W] Y is initial, if W is the coproduct of X and Y.

                                Equations
                                  Instances For

                                    If X ← Z → Y is a pullback diagram over X ⨿ Y, Z is initial.

                                    Equations
                                      Instances For

                                        C has disjoint coproducts if every coproduct is disjoint.

                                        Instances
                                          @[reducible, inline]

                                          C has disjoint binary coproducts if every binary coproduct is disjoint.

                                          Equations
                                            Instances For

                                              If C has disjoint coproducts, any morphism out of initial is mono. Note it isn't true in general that C has strict initial objects, for instance consider the category of types and partial functions.