Documentation

Mathlib.CategoryTheory.Limits.Shapes.BinaryBiproducts

Binary biproducts #

We introduce the notion of binary biproducts.

These are slightly unusual relative to the other shapes in the library, as they are simultaneously limits and colimits. (Zero objects are similar; they are "biterminal".)

For results about biproducts in preadditive categories see CategoryTheory.Preadditive.Biproducts.

In a category with zero morphisms, we model the (binary) biproduct of P Q : C using a BinaryBicone, which has a cone point X, and morphisms fst : X ⟶ P, snd : X ⟶ Q, inl : P ⟶ X and inr : X ⟶ Q, such that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q. Such a BinaryBicone is a biproduct if the cone is a limit cone, and the cocone is a colimit cocone.

structure CategoryTheory.Limits.BinaryBicone {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] (P Q : C) :
Type (max uC uC')

A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • pt : C

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • fst : self.pt P

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • snd : self.pt Q

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • inl : P self.pt

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • inr : Q self.pt

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • inl_snd : CategoryStruct.comp self.inl self.snd = 0

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • inr_fst : CategoryStruct.comp self.inr self.fst = 0

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

  • A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

Instances For
    @[simp]

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

    @[simp]

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

    @[simp]

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

    @[simp]

    A binary bicone for a pair of objects P Q : C consists of the cone point X, maps from X to both P and Q, and maps from both P and Q to X, so that inlfst = 𝟙 P, inlsnd = 0, inrfst = 0, and inrsnd = 𝟙 Q

    A binary bicone morphism between two binary bicones for the same diagram is a morphism of the binary bicone points which commutes with the cone and cocone legs.

    Instances For
      @[simp]

      The triangle consisting of the two natural transformations and hom commutes

      @[simp]

      The triangle consisting of the two natural transformations and hom commutes

      @[simp]

      The triangle consisting of the two natural transformations and hom commutes

      @[simp]

      The triangle consisting of the two natural transformations and hom commutes

      @[implicit_reducible]

      The category of binary bicones on a given diagram.

      Equations
      • One or more equations did not get rendered due to their size.
      theorem CategoryTheory.Limits.BinaryBiconeMorphism.ext {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {P Q : C} {c c' : BinaryBicone P Q} (f g : c c') (w : f.hom = g.hom) :
      f = g
      theorem CategoryTheory.Limits.BinaryBiconeMorphism.ext_iff {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {P Q : C} {c c' : BinaryBicone P Q} {f g : c c'} :
      f = g f.hom = g.hom
      def CategoryTheory.Limits.BinaryBicones.ext {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {P Q : C} {c c' : BinaryBicone P Q} (φ : c.pt c'.pt) (winl : CategoryStruct.comp c.inl φ.hom = c'.inl := by cat_disch) (winr : CategoryStruct.comp c.inr φ.hom = c'.inr := by cat_disch) (wfst : CategoryStruct.comp φ.hom c'.fst = c.fst := by cat_disch) (wsnd : CategoryStruct.comp φ.hom c'.snd = c.snd := by cat_disch) :
      c c'

      To give an isomorphism between cocones, it suffices to give an isomorphism between their vertices which commutes with the cocone maps.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem CategoryTheory.Limits.BinaryBicones.ext_inv_hom {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {P Q : C} {c c' : BinaryBicone P Q} (φ : c.pt c'.pt) (winl : CategoryStruct.comp c.inl φ.hom = c'.inl := by cat_disch) (winr : CategoryStruct.comp c.inr φ.hom = c'.inr := by cat_disch) (wfst : CategoryStruct.comp φ.hom c'.fst = c.fst := by cat_disch) (wsnd : CategoryStruct.comp φ.hom c'.snd = c.snd := by cat_disch) :
        (ext φ winl winr wfst wsnd).inv.hom = φ.inv
        @[simp]
        theorem CategoryTheory.Limits.BinaryBicones.ext_hom_hom {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {P Q : C} {c c' : BinaryBicone P Q} (φ : c.pt c'.pt) (winl : CategoryStruct.comp c.inl φ.hom = c'.inl := by cat_disch) (winr : CategoryStruct.comp c.inr φ.hom = c'.inr := by cat_disch) (wfst : CategoryStruct.comp φ.hom c'.fst = c.fst := by cat_disch) (wsnd : CategoryStruct.comp φ.hom c'.snd = c.snd := by cat_disch) :
        (ext φ winl winr wfst wsnd).hom.hom = φ.hom

        A functor F : C ⥤ D sends binary bicones for P and Q to binary bicones for G.obj P and G.obj Q functorially.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          @[simp]

          Extract the cone from a binary bicone.

          Equations
          Instances For

            Extract the cocone from a binary bicone.

            Equations
            Instances For

              The retract of a binary bicone c given by c.inl and c.fst.

              Equations
              Instances For

                The retract of a binary bicone c given by c.inr and c.snd.

                Equations
                Instances For

                  Convert a BinaryBicone into a Bicone over a pair.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[reducible, inline]

                    A shorthand for toBiconeFunctor.obj

                    Equations
                    Instances For

                      A binary bicone is a limit cone if and only if the corresponding bicone is a limit cone.

                      Equations
                      Instances For

                        Convert a Bicone over a function on WalkingPair to a BinaryBicone.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          @[reducible, inline]

                          A shorthand for toBinaryBiconeFunctor.obj

                          Equations
                          Instances For

                            A bicone over a pair is a limit cone if and only if the corresponding binary bicone is a limit cone.

                            Equations
                            Instances For
                              structure CategoryTheory.Limits.BinaryBicone.IsBilimit {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {P Q : C} (b : BinaryBicone P Q) :
                              Type (max uC uC')

                              Structure witnessing that a binary bicone is a limit cone and a limit cocone.

                              • isLimit : IsLimit b.toCone

                                Structure witnessing that a binary bicone is a limit cone and a limit cocone.

                              • isColimit : IsColimit b.toCocone

                                Structure witnessing that a binary bicone is a limit cone and a limit cocone.

                              Instances For

                                A binary bicone is a bilimit bicone if and only if the corresponding bicone is a bilimit.

                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For

                                  A bicone over a pair is a bilimit bicone if and only if the corresponding binary bicone is a bilimit.

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For

                                    A bicone over P Q : C, which is both a limit cone and a colimit cocone.

                                    • bicone : BinaryBicone P Q

                                      A bicone over P Q : C, which is both a limit cone and a colimit cocone.

                                    • isBilimit : self.bicone.IsBilimit

                                      A bicone over P Q : C, which is both a limit cone and a colimit cocone.

                                    Instances For

                                      HasBinaryBiproduct P Q expresses the mere existence of a bicone which is simultaneously a limit and a colimit of the diagram pair P Q.

                                      Instances

                                        A bicone for P Q which is both a limit cone and a colimit cocone.

                                        Equations
                                        Instances For

                                          HasBinaryBiproducts C represents the existence of a bicone which is simultaneously a limit and a colimit of the diagram pair P Q, for every P Q : C.

                                          Instances

                                            A category with finite biproducts has binary biproducts.

                                            This is not an instance as typically in concrete categories there will be an alternative construction with nicer definitional properties.

                                            noncomputable def CategoryTheory.Limits.biprodIso {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] (X Y : C) [HasBinaryBiproduct X Y] :
                                            X Y X ⨿ Y

                                            The isomorphism between the specified binary product and the specified binary coproduct for a pair for a binary biproduct.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              @[reducible, inline]
                                              noncomputable abbrev CategoryTheory.Limits.biprod {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] (X Y : C) [HasBinaryBiproduct X Y] :
                                              C

                                              An arbitrary choice of biproduct of a pair of objects.

                                              Equations
                                              Instances For

                                                An arbitrary choice of biproduct of a pair of objects.

                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For
                                                  @[reducible, inline]
                                                  noncomputable abbrev CategoryTheory.Limits.biprod.fst {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {X Y : C} [HasBinaryBiproduct X Y] :
                                                  X Y X

                                                  The projection onto the first summand of a binary biproduct.

                                                  Equations
                                                  Instances For
                                                    @[reducible, inline]
                                                    noncomputable abbrev CategoryTheory.Limits.biprod.snd {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {X Y : C} [HasBinaryBiproduct X Y] :
                                                    X Y Y

                                                    The projection onto the second summand of a binary biproduct.

                                                    Equations
                                                    Instances For
                                                      @[reducible, inline]
                                                      noncomputable abbrev CategoryTheory.Limits.biprod.inl {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {X Y : C} [HasBinaryBiproduct X Y] :
                                                      X X Y

                                                      The inclusion into the first summand of a binary biproduct.

                                                      Equations
                                                      Instances For
                                                        @[reducible, inline]
                                                        noncomputable abbrev CategoryTheory.Limits.biprod.inr {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {X Y : C} [HasBinaryBiproduct X Y] :
                                                        Y X Y

                                                        The inclusion into the second summand of a binary biproduct.

                                                        Equations
                                                        Instances For
                                                          @[reducible, inline]
                                                          noncomputable abbrev CategoryTheory.Limits.biprod.lift {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y : C} [HasBinaryBiproduct X Y] (f : W X) (g : W Y) :
                                                          W X Y

                                                          Given a pair of maps into the summands of a binary biproduct, we obtain a map into the binary biproduct.

                                                          Equations
                                                          Instances For
                                                            @[reducible, inline]
                                                            noncomputable abbrev CategoryTheory.Limits.biprod.desc {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y : C} [HasBinaryBiproduct X Y] (f : X W) (g : Y W) :
                                                            X Y W

                                                            Given a pair of maps out of the summands of a binary biproduct, we obtain a map out of the binary biproduct.

                                                            Equations
                                                            Instances For
                                                              @[simp]
                                                              @[simp]
                                                              @[simp]
                                                              @[simp]
                                                              @[reducible, inline]
                                                              noncomputable abbrev CategoryTheory.Limits.biprod.map {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] (f : W Y) (g : X Z) :
                                                              W X Y Z

                                                              Given a pair of maps between the summands of a pair of binary biproducts, we obtain a map between the binary biproducts.

                                                              Equations
                                                              • One or more equations did not get rendered due to their size.
                                                              Instances For
                                                                @[reducible, inline]
                                                                noncomputable abbrev CategoryTheory.Limits.biprod.map' {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] (f : W Y) (g : X Z) :
                                                                W X Y Z

                                                                An alternative to biprod.map constructed via colimits. This construction only exists in order to show it is equal to biprod.map.

                                                                Equations
                                                                Instances For

                                                                  The canonical isomorphism between the chosen biproduct and the chosen product.

                                                                  Equations
                                                                  Instances For

                                                                    The canonical isomorphism between the chosen biproduct and the chosen coproduct.

                                                                    Equations
                                                                    • One or more equations did not get rendered due to their size.
                                                                    Instances For
                                                                      theorem CategoryTheory.Limits.biprod.map_eq_map' {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] (f : W Y) (g : X Z) :
                                                                      map f g = map' f g
                                                                      noncomputable def CategoryTheory.Limits.biprod.mapIso {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] (f : W Y) (g : X Z) :
                                                                      W X Y Z

                                                                      Given a pair of isomorphisms between the summands of a pair of binary biproducts, we obtain an isomorphism between the binary biproducts.

                                                                      Equations
                                                                      Instances For
                                                                        @[simp]
                                                                        theorem CategoryTheory.Limits.biprod.mapIso_inv {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] (f : W Y) (g : X Z) :
                                                                        (mapIso f g).inv = map f.inv g.inv
                                                                        @[simp]
                                                                        theorem CategoryTheory.Limits.biprod.mapIso_hom {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] (f : W Y) (g : X Z) :
                                                                        (mapIso f g).hom = map f.hom g.hom
                                                                        noncomputable def CategoryTheory.Limits.biprod.uniqueUpToIso {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] (X Y : C) [HasBinaryBiproduct X Y] {b : BinaryBicone X Y} (hb : b.IsBilimit) :
                                                                        b.pt X Y

                                                                        Binary biproducts are unique up to isomorphism. This already follows because bilimits are limits, but in the case of biproducts we can give an isomorphism with particularly nice definitional properties, namely that biprod.lift b.fst b.snd and biprod.desc b.inl b.inr are inverses of each other.

                                                                        Equations
                                                                        • One or more equations did not get rendered due to their size.
                                                                        Instances For
                                                                          instance CategoryTheory.Limits.biprod.map_epi {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} (f : W Y) (g : X Z) [Epi f] [Epi g] [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] :
                                                                          Epi (map f g)
                                                                          instance CategoryTheory.Limits.prod.map_epi {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} (f : W Y) (g : X Z) [Epi f] [Epi g] [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] :
                                                                          Epi (map f g)
                                                                          instance CategoryTheory.Limits.biprod.map_mono {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} (f : W Y) (g : X Z) [Mono f] [Mono g] [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] :
                                                                          Mono (map f g)
                                                                          instance CategoryTheory.Limits.coprod.map_mono {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {W X Y Z : C} (f : W Y) (g : X Z) [Mono f] [Mono g] [HasBinaryBiproduct W X] [HasBinaryBiproduct Y Z] :
                                                                          Mono (map f g)

                                                                          A kernel fork for the kernel of BinaryBicone.fst. It consists of the morphism BinaryBicone.inr.

                                                                          Equations
                                                                          Instances For

                                                                            A kernel fork for the kernel of BinaryBicone.snd. It consists of the morphism BinaryBicone.inl.

                                                                            Equations
                                                                            Instances For

                                                                              A cokernel cofork for the cokernel of BinaryBicone.inl. It consists of the morphism BinaryBicone.snd.

                                                                              Equations
                                                                              Instances For

                                                                                A cokernel cofork for the cokernel of BinaryBicone.inr. It consists of the morphism BinaryBicone.fst.

                                                                                Equations
                                                                                Instances For

                                                                                  The fork defined in BinaryBicone.fstKernelFork is indeed a kernel.

                                                                                  Equations
                                                                                  • One or more equations did not get rendered due to their size.
                                                                                  Instances For

                                                                                    The fork defined in BinaryBicone.sndKernelFork is indeed a kernel.

                                                                                    Equations
                                                                                    • One or more equations did not get rendered due to their size.
                                                                                    Instances For

                                                                                      The cofork defined in BinaryBicone.inlCokernelCofork is indeed a cokernel.

                                                                                      Equations
                                                                                      • One or more equations did not get rendered due to their size.
                                                                                      Instances For

                                                                                        The cofork defined in BinaryBicone.inrCokernelCofork is indeed a cokernel.

                                                                                        Equations
                                                                                        • One or more equations did not get rendered due to their size.
                                                                                        Instances For

                                                                                          The kernel of biprod.fst : X ⊞ Y ⟶ X is Y.

                                                                                          Equations
                                                                                          • One or more equations did not get rendered due to their size.
                                                                                          Instances For

                                                                                            The kernel of biprod.snd : X ⊞ Y ⟶ Y is X.

                                                                                            Equations
                                                                                            • One or more equations did not get rendered due to their size.
                                                                                            Instances For

                                                                                              The cokernel of biprod.inl : X ⟶ X ⊞ Y is Y.

                                                                                              Equations
                                                                                              • One or more equations did not get rendered due to their size.
                                                                                              Instances For

                                                                                                The cokernel of biprod.inr : Y ⟶ X ⊞ Y is X.

                                                                                                Equations
                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                Instances For
                                                                                                  noncomputable def CategoryTheory.Limits.isoBiprodZero {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {X Y : C} [HasBinaryBiproduct X Y] (hY : IsZero Y) :
                                                                                                  X X Y

                                                                                                  If Y is a zero object, X ≅ X ⊞ Y for any X.

                                                                                                  Equations
                                                                                                  Instances For
                                                                                                    noncomputable def CategoryTheory.Limits.isoZeroBiprod {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] {X Y : C} [HasBinaryBiproduct X Y] (hY : IsZero X) :
                                                                                                    Y X Y

                                                                                                    If X is a zero object, Y ≅ X ⊞ Y for any Y.

                                                                                                    Equations
                                                                                                    Instances For

                                                                                                      The braiding isomorphism which swaps a binary biproduct.

                                                                                                      Equations
                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                      Instances For

                                                                                                        An alternative formula for the braiding isomorphism which swaps a binary biproduct, using the fact that the biproduct is a coproduct.

                                                                                                        Equations
                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                        Instances For

                                                                                                          The braiding isomorphism can be passed through a map by swapping the order.

                                                                                                          The braiding isomorphism can be passed through a map by swapping the order.

                                                                                                          The braiding isomorphism is symmetric.

                                                                                                          The braiding isomorphism is symmetric.

                                                                                                          noncomputable def CategoryTheory.Limits.biprod.associator {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] [HasBinaryBiproducts C] (P Q R : C) :
                                                                                                          (P Q) R P Q R

                                                                                                          The associator isomorphism which associates a binary biproduct.

                                                                                                          Equations
                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                          Instances For
                                                                                                            theorem CategoryTheory.Limits.biprod.associator_natural {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] [HasBinaryBiproducts C] {U V W X Y Z : C} (f : U X) (g : V Y) (h : W Z) :

                                                                                                            The associator isomorphism can be passed through a map by swapping the order.

                                                                                                            theorem CategoryTheory.Limits.biprod.associator_natural_assoc {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] [HasBinaryBiproducts C] {U V W X Y Z : C} (f : U X) (g : V Y) (h : W Z) {Z✝ : C} (h✝ : X Y Z Z✝) :

                                                                                                            The associator isomorphism can be passed through a map by swapping the order.

                                                                                                            theorem CategoryTheory.Limits.biprod.associator_inv_natural {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] [HasBinaryBiproducts C] {U V W X Y Z : C} (f : U X) (g : V Y) (h : W Z) :

                                                                                                            The associator isomorphism can be passed through a map by swapping the order.

                                                                                                            theorem CategoryTheory.Limits.biprod.associator_inv_natural_assoc {C : Type uC} [Category.{uC', uC} C] [HasZeroMorphisms C] [HasBinaryBiproducts C] {U V W X Y Z : C} (f : U X) (g : V Y) (h : W Z) {Z✝ : C} (h✝ : (X Y) Z Z✝) :

                                                                                                            The associator isomorphism can be passed through a map by swapping the order.

                                                                                                            An object is indecomposable if it cannot be written as the biproduct of two nonzero objects.

                                                                                                            Equations
                                                                                                            Instances For

                                                                                                              If

                                                                                                              (f 0)
                                                                                                              (0 g)
                                                                                                              

                                                                                                              is invertible, then f is invertible.

                                                                                                              If

                                                                                                              (f 0)
                                                                                                              (0 g)
                                                                                                              

                                                                                                              is invertible, then g is invertible.