{{Short description|Object that is both a product and coproduct}} {{about|biproducts in mathematics|an incidental product from a process|By-product}}

In category theory and its applications to mathematics, a '''biproduct''' of a finite collection of objects, in a category with zero objects, is both a product and a coproduct. In a preadditive category the notions of product and coproduct coincide for finite collections of objects.<ref>Borceux, 4-5</ref> The biproduct is a generalization of finite direct sums of modules.

==Definition==

Let '''C''' be a category with zero morphisms. Given a finite (possibly empty) collection of objects ''A''<sub>1</sub>, ..., ''A''<sub>''n''</sub> in '''C''', their ''biproduct'' is an object <math display="inline">A_1 \oplus \dots \oplus A_n</math> in '''C''' together with morphisms

*<math display="inline">p_k \!: A_1 \oplus \dots \oplus A_n \to A_k</math> in '''C''' (the ''projection morphisms'') *<math display="inline">i_k \!: A_k \to A_1 \oplus \dots \oplus A_n</math> (the ''embedding morphisms'') satisfying *<math display="inline">p_k \circ i_k = 1_{A_k}</math>, the identity morphism of <math>A_k,</math> and *<math display="inline">p_l \circ i_k = 0</math>, the zero morphism <math>A_k \to A_l,</math> for <math>k \neq l,</math> and such that *<math display="inline">\left( A_1 \oplus \dots \oplus A_n, p_k \right)</math> is a product for the <math display="inline">A_k,</math> and *<math display="inline">\left( A_1 \oplus \dots \oplus A_n, i_k \right)</math> is a coproduct for the <math display="inline">A_k.</math>

If '''C''' is preadditive and the first two conditions hold, then each of the last two conditions is equivalent to <math display="inline">i_1 \circ p_1 + \dots + i_n\circ p_n = 1_{A_1 \oplus \dots \oplus A_n}</math> when ''n'' > 0.<ref>Saunders Mac Lane, ''Categories for the Working Mathematician'', Second Edition, page 194.</ref> An empty, or nullary, product is always a terminal object in the category, and the empty coproduct is always an initial object in the category. Thus an empty, or nullary, biproduct is always a zero object.

==Examples==

In the category of abelian groups, biproducts always exist and are given by the direct sum.<ref>Borceux, 8</ref> The zero object is the trivial group.

Similarly, biproducts exist in the category of vector spaces over a field. The biproduct is again the direct sum, and the zero object is the trivial vector space.

More generally, biproducts exist in the category of modules over a ring.

On the other hand, biproducts do not exist in the category of groups.<ref>Borceux, 7</ref> Here, the product is the direct product, but the coproduct is the free product.

Also, biproducts do not exist in the category of sets. For, the product is given by the Cartesian product, whereas the coproduct is given by the disjoint union. This category does not have a zero object.

Block matrix algebra relies upon biproducts in categories of matrices.<ref>H.D. Macedo, J.N. Oliveira, [https://hal.inria.fr/hal-00919866 Typing linear algebra: A biproduct-oriented approach], Science of Computer Programming, Volume 78, Issue 11, 1 November 2013, Pages 2160-2191, {{issn|0167-6423}}, {{doi|10.1016/j.scico.2012.07.012}}.</ref>

==Properties==

If the biproduct <math display="inline">A \oplus B</math> exists for all pairs of objects ''A'' and ''B'' in the category '''C''', and '''C''' has a zero object, then all finite biproducts exist, making '''C''' both a Cartesian monoidal category and a co-Cartesian monoidal category.

If '''C''' is a preadditive category, then every finite product is a biproduct, and every finite coproduct is a biproduct. For example, if <math display="inline">A_1 \times A_2</math> exists, then there are unique morphisms <math display="inline">i_k: A_k \to A_1 \times A_2</math> such that

*<math>p_k \circ i_k = 1_{A_k},\ (k = 1, 2)</math> *<math>p_l \circ i_k = 0 </math> for <math display="inline">k \neq l.</math>

To see that <math display="inline">A_1 \times A_2</math> is now also a coproduct, and hence a biproduct, suppose we have morphisms <math display="inline">f_k: A_k \to X,\ k=1,2</math> for some object <math display="inline">X</math>. Define <math display="inline">f := f_1 \circ p_1 + f_2 \circ p_2.</math> Then <math display="inline">f</math> is a morphism from <math display="inline">A_1 \times A_2</math> to <math display="inline">X</math>, and <math display="inline">f \circ i_k = f_k</math> for <math display="inline">k = 1, 2</math>.

In this case, <math display="inline">i_1 \circ p_1 + i_2 \circ p_2 = 1_{A_1 \times A_2}</math>.

An additive category is a preadditive category in which all finite biproducts exist. In particular, biproducts always exist in abelian categories.

==References== {{reflist}} *{{cite book|last1=Borceux|first1=Francis|title=Handbook of Categorical Algebra 2: Categories and Structures|date=2008|publisher=Cambridge University Press|isbn=978-0-521-06122-3}}{{rp|at=Section 1.2}}

Category:Additive categories Category:Limits (category theory)