# Additive category

{{#invoke:Hatnote|hatnote}}
In mathematics, specifically in category theory, an **additive category** is a preadditive category **C** admitting all finitary biproducts.

## Definition

A category **C** is preadditive if all its hom-sets are Abelian groups and composition of morphisms is bilinear; in other words, **C** is enriched over the monoidal category of Abelian groups.

In a preadditive category, every finitary product (including the empty product, i.e., a final object) is necessarily a coproduct (or initial object in the case of an empty diagram), and hence a biproduct, and conversely every finitary coproduct is necessarily a product (this is a consequence of the definition, not a part of it).

Thus an additive category is equivalently described as a preadditive category admitting all finitary products, or a preadditive category admitting all finitary coproducts.

Note that the empty biproduct is necessarily a zero object in the category, and a category admitting all finitary biproducts is often called **semiadditive**. As shown below, every semiadditive category has a natural addition, and so we can alternatively define an additive category to be a semiadditive category having the property that every morphism has an additive inverse.

### Generalization

More generally, one also considers additive [[preadditive category#R-linear categories|Template:Mvar-linear categories]] for a commutative ring Template:Mvar. These are a categories enriched over the monoidal category of [[module category|Template:Mvar-modules]] and admitting all finitary biproducts.

## Examples

The original example of an additive category is the category of abelian groups **Ab**. The zero object is the trivial group, the addition of morphisms is given point-wise, and biproducts are given by direct sums.

More generally, every module category over a ring Template:Mvar is additive, and so in particular, the category of vector spaces over a field Template:Mvar is additive.

The algebra of matrices over a ring, thought of as a category as described below, is also additive.

## Internal characterisation of the addition law

Let **C** be a semiadditive category, so a category having all finitary biproducts. Then every hom-set has an addition, endowing it with the structure of an abelian monoid, and such that the composition of morphisms is bilinear.

Moreover, if **C** is additive, then the two additions on hom-sets must agree. In particular, a semiadditive category is additive if and only if every morphism has an additive inverse.

This shows that the addition law for an additive category is *internal* to that category.^{[1]}

To define the addition law, we will use the convention that for a biproduct, *p*_{k} will denote the projection morphisms, and *i*_{k} will denote the injection morphisms.

We first observe that for each object Template:Mvar there is a

*diagonal morphism*∆:*A*→*A*⊕*A*satisfying*p*_{k}∘ ∆ = 1_{A}for*k*= 1, 2, and a*codiagonal morphism*∇:*A*⊕*A*→*A*satisfying ∇ ∘*i*_{k}= 1_{A}for*k*= 1, 2.

Next, given two morphisms α_{k}: *A* → *B*, there exists a unique morphism α_{1} ⊕ α_{2}: *A* ⊕ *A* → *B* ⊕ *B* such that *p*_{l} ∘ (α_{1} ⊕ α_{2}) ∘ *i*_{k} equals α_{k} if *k* = *l*, and 0 otherwise.

We can therefore define α_{1} + α_{2} := ∇ ∘ (α_{1} ⊕ α_{2}) ∘ ∆.

This addition is both commutative and associative. The associativity can be seen by considering the composition

We have α + 0 = α, using that α ⊕ 0 = *i*_{1} ∘ α ∘ *p*_{1}.

It is also bilinear, using for example that ∆ ∘ β = (β ⊕ β) ∘ ∆ and that (α_{1} ⊕ α_{2}) ∘ (β_{1} ⊕ β_{2}) = (α_{1} ∘ β_{1}) ⊕ (α_{2} ∘ β_{2}).

We remark that for a biproduct *A* ⊕ *B* we have *i*_{1} ∘ *p*_{1} + *i*_{2} ∘ *p*_{2} = 1. Using this, we can represent any morphism *A* ⊕ *B* → *C* ⊕ *D* as a matrix.

## Matrix representation of morphisms

Given objects *A*_{1}, … , *A*_{n} and *B*_{1}, … , *B*_{m} in an additive category, we can represent morphisms *f*: *A*_{1} ⊕ ⋅⋅⋅ ⊕ *A*_{n} → *B*_{1} ⊕ ⋅⋅⋅ ⊕ *B*_{m} as Template:Mvar-by-Template:Mvar matrices

Using that ∑_{k} *i*_{k} ∘ *p*_{k} = 1, it follows that addition and composition of matrices obey the usual rules for matrix addition and matrix multiplication.

Thus additive categories can be seen as the most general context in which the algebra of matrices makes sense.

Recall that the morphisms from a single object Template:Mvar to itself form the endomorphism ring End(*A*).
If we denote the Template:Mvar-fold product of Template:Mvar with itself by *A*^{n}, then morphisms from *A*^{n} to *A*^{m} are *m*-by-*n* matrices with entries from the ring End(*A*).

Conversely, given any ring Template:Mvar, we can form a category **Mat**(*R*) by taking objects *A*_{n} indexed by the set of natural numbers (including zero) and letting the hom-set of morphisms from *A*_{n} to *A*_{m} be the set of Template:Mvar-by-Template:Mvar matrices over Template:Mvar, and where composition is given by matrix multiplication. Then **Mat**(*R*) is an additive category, and *A*_{n} equals the Template:Mvar-fold power (*A*_{1})^{n}.

This construction should be compared with the result that a ring is a preadditive category with just one object, shown here.

If we interpret the object *A*_{n} as the left module *R*^{n}, then this *matrix category* becomes a subcategory of the category of left modules over Template:Mvar.

This may be confusing in the special case where Template:Mvar or Template:Mvar is zero, because we usually don't think of matrices with 0 rows or 0 columns. This concept makes sense, however: such matrices have no entries and so are completely determined by their size. While these matrices are rather degenerate, they do need to be included to get an additive category, since an additive category must have a zero object.

Thinking about such matrices can be useful in one way, though: they highlight the fact that given any objects Template:Mvar and Template:Mvar in an additive category, there is exactly one morphism from Template:Mvar to 0 (just as there is exactly one 0-by-1 matrix with entries in End(*A*)) and exactly one morphism from 0 to Template:Mvar (just as there is exactly one 1-by-0 matrix with entries in End(*B*)) – this is just what it means to say that 0 is a zero object. Furthermore, the zero morphism from Template:Mvar to Template:Mvar is the composition of these morphisms, as can be calculated by multiplying the degenerate matrices.

## Additive functors

Recall that a functor *F*: **C** → **D** between preadditive categories is *additive* if it is an abelian group homomorphism on each hom-set in **C**. If the categories are additive, though, then a functor is additive if and only if it preserves all biproduct diagrams.

That is, if Template:Mvar is a biproduct of *A*_{1}, … , *A*_{n} in **C** with projection morphisms *p*_{k} and injection morphisms *k*_{j}, then *F*(*B*) should be a biproduct of *F*(*A*_{1}), … , *F*(*A*_{n}) in **D** with projection morphisms *F*(*p*_{k}) and injection morphisms *F*(*i*_{k}).

Almost all functors studied between additive categories are additive. In fact, it is a theorem that all adjoint functors between additive categories must be additive functors (see here), and most interesting functors studied in all of category theory are adjoints.

### Generalization

When considering functors between Template:Mvar-linear additive categories, one usually restricts to [[preadditive category#R-linear categories|Template:Mvar-linear functors]], so those functors giving an Template:Mvar-module homomorphism on each hom-set.

## Special cases

- A
*pre-abelian category*is an additive category in which every morphism has a kernel and a cokernel. - An
*abelian category*is a pre-abelian category such that every monomorphism and epimorphism is normal.

Many commonly studied additive categories are in fact abelian categories; for example, **Ab** is an abelian category. The free abelian groups provide an example of a category that is additive but not abelian.^{[2]}

## References

- Nicolae Popescu; 1973;
*Abelian Categories with Applications to Rings and Modules*; Academic Press, Inc. (out of print) goes over all of this very slowly