From Wikipedia, the free encyclopedia
Jump to: navigation, search

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.[1] The biproduct is a generalization of finite direct sums of modules.


Let C be a category with zero objects.

Given objects A1,...,An in C, their biproduct is an object A1 ⊕ ··· ⊕ An together with morphisms

  • pk: A1 ⊕ ··· ⊕ AnAk in C (the projection morphisms)
  • ik: AkA1 ⊕ ··· ⊕ An (the injection morphisms)


  • pkik = 1Ak, the identity morphism of Ak
  • plik = 0, the zero morphism AkAl, for kl.

and such that

  • (A1 ⊕ ··· ⊕ An,pk) is a product for the Ak
  • (A1 ⊕ ··· ⊕ An,ik) is a coproduct for the Ak.

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. Since our category C has a zero object, the empty biproduct exists and is isomorphic to the zero object.


In the category of abelian groups, biproducts always exist and are given by the direct sum.[2] Note that 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.[3] 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. Note also that this category does not have a zero object.

Block matrix algebra relies upon biproducts in categories of matrices.[4]


If the biproduct AB exists for all pairs of objects A and B in the category C, then all finite biproducts exist.

If the product A1 × A2 and coproduct A1A2 both exist for some pair of objects Ai, then there is a unique morphism f: A1A2A1 × A2 such that

  • pkfik = 1Ak
  • plfik = 0 for kl.

It follows that the biproduct A1A2 exists if and only if f is an isomorphism.

If C is a preadditive category, then every finite product is a biproduct, and every finite coproduct is a biproduct. For example, if A1 × A2 exists, then there are unique morphisms ik: AkA1 × A2 such that

  • pkik = 1Ak
  • plik = 0 for kl.

To see that A1 × A2 is now also a coproduct, and hence a biproduct, suppose we have morphisms fk: AkX for some object X. Define f := f1p1 + f2p2. Then f: A1 × A2X is a morphism and fik = fk.

Note also that in this case we always have

  • i1p1 + i2p2 = 1A1 × A2.

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


  1. ^ Borceux, 4-5
  2. ^ Borceux, 8
  3. ^ Borceux, 7
  4. ^ H.D. Macedo, J.N. Oliveira, 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.