The category $\mathsf{Ab}$ of abelian groups and their homomorphisms is an example of a preadditive category. In a preadditive category, the notions of (finitary) product and coproduct coincide, i.e. $$A \times B \cong A + B \cong A \oplus B$$ where $\oplus$ denotes the biproduct of $A$ and $B$.

In an arbitrary category, the biproduct is defined as follows: $X$ is a biproduct of $A$ and $B$ if there exist maps $$A \overset{\pi_A}{\underset{\iota_A}{\leftrightarrows}} X \overset{\pi_B}{\underset{\iota_B}{\rightleftarrows}} B$$ making $(A \overset{\pi_A}{\leftarrow} X \overset{\pi_B}{\rightarrow} B)$ into a product and $(A \overset{\iota_A}{\rightarrow} X \overset{\iota_B}{\leftarrow} B)$ into a coproduct.

Now, preadditive categories have an additive structure on their homsets. For example, in $\mathsf{Ab}$, if $f, g : A \rightrightarrows B$ are homomorphisms between abelian groups $(A,+)$ and $(B,+)$ then we can obtain another homomorphism $f+g : A \to B$ defined by $$(f+g)(a)=f(a)+g(a)$$ Then the binary operation $+$ gives $\text{Hom}_{\mathsf{Ab}}(A,B)$ an abelian group structure. The identity element is the zero map $0 : A \to B$, which is a zero morphism in the category theoretic sense.

There is a result which states that $(A \overset{\pi_A}{\underset{\iota_A}{\leftrightarrows}} X \overset{\pi_B}{\underset{\iota_B}{\rightleftarrows}} B)$ is a biproduct if and only if all of the following are satisfied:

  • $\pi_A \circ \iota_A = \text{id}_A$ and $\pi_B \circ \iota_B = \text{id}_B$
  • $\pi_B \circ \iota_A = 0 : A \to B$ and $\pi_A \circ \iota_B = 0 : B \to A$
  • $\iota_A \circ \pi_A + \iota_B \circ \pi_B = \text{id}_X$

This hints at why it works in $\mathsf{Ab}$ but not in $\mathsf{Grp}$: in $\mathsf{Grp}$ we don't have additive structure on homsets like $\mathsf{Ab}$ does. [And, indeed, the coproduct of two groups in $\mathsf{Grp}$ is the free product; in $\mathsf{Ab}$ it is the direct sum $\equiv$ Cartesian product.]

It's worth trying to prove the above result and work through the proof with a (more) concrete example.


P.S. Thanks Alexander Thumm for reminding me about preadditive categories.

Edit: See comments.


Let $\mathcal A = \text{AbGrp}$. It will be important later that $\mathcal A$ has a zero object $0$ and zero morphisms.

The key property is that every hom-set $\mathcal A(A,B)$ is an abgroup. Let $f_1, f_2 : A \longrightarrow B$ then define $f_1 + f_2 : A \longrightarrow B$ simply by $(f_1 + f_2)(a) = f_1(a) + f_2(a)$, it's easy to see this is a group homomorphism. Furthermore, in $\mathcal A$, composition distributes: We have the identities $g(f_1+f_2) = gf_1 + gf_2$ and $(g_1+g_2)f = g_1f + g_2f$.

That doesn't happen in $\mathcal G = \text{Grp}$ suppose we let $(f_1 \star f_2)(a) = f_1(a) \star f_2(a)$, then $v$ isn't a group homomorphism because $(f_1 \star f_2)(a \cdot b) = f_1(a) \star f_1(b) \star f_2(a) \star f_2(b)$ is not in general equal to $(f_1 \star f_2)(a) \star (f_1 \star f_2)(b) = f_1(a) \star f_2(a) \star f_1(b) \star f_2(b)$.


Now let me introduce the biproduct $A \oplus B$ which is an object with maps

  • $\pi_1 : A \oplus B \longrightarrow A$
  • $\pi_2 : A \oplus B \longrightarrow B$
  • $\iota_1 : A \longrightarrow A \oplus B$
  • $\iota_2 : B \longrightarrow A \oplus B$

satisfying the identities

  • $\pi_1 \iota_1 = 1_A$
  • $\pi_2 \iota_2 = 1_B$
  • $\pi_2 \iota_1 = 0$
  • $\pi_1 \iota_2 = 0$
  • $\iota_1 \pi_1 + \iota_2 \pi_2 = 1_C$

notice that this definition is self dual.


Lemma $C$ is the product of $A$ and $B$ iff it is the* biproduct of $A$ and $B$. (we haven't show biproducts unique but they are).

proof sketch: ($\Rightarrow$) You can construct $\iota_1, \iota_2$ using the equations and you can prove the last identity by showing first $\pi_1 (\iota_1 \pi_1 + \iota_2 \pi_2) = pi_1$ then $\pi_2 (\iota_1 \pi_1 + \iota_2 \pi_2) = pi_2$ . ($\Leftarrow$) One just needs to show that the biproduct has the universal property of products (the uniqueness of a universal map).

Corollary (by duality) $C$ is the coproduct of $A$ and $B$ iff it is the* biproduct of $A$ and $B$.

Corollary Products and Coproducts coincide.


The properties of $\mathcal A$ we used are called a preadditive category but I tried make this as elementary as possible so just note that $\mathcal A$ is one example and $\mathcal G$ is not.

We have not yet seen why products and coproducts in $\mathcal G$ do not coincide...