Just as an additive category is an -category with with two additional properties, an abelian category is an additive category with yet another two additional properties. Once again, let's state the definition up front and then fill in the details:
Definition of an abelian category
An abelian category is an additive category satisfying the following conditions:
Every morphism has a kernel and a cokernel.
Every monomorphism is a kernel and every epimorphism is a cokernel.
We will define kernels and cokernels below, but for now we note the following facts:
The existence of kernels (and binary products) implies has all finite limits, while the existence of cokernels (and binary coproducts) implies the existence of all finite colimits.
The second condition is strong. It implies that any morphism that is both monomorphism and epimorphism is an isomorphism.
(We should probably prove these two facts at some point.)
Examples of abelian categories
The categories and (and many others) are abelian, with the usual kernels and cokernels.
If is an abelian category, then so is any functor category . See page 199 in Mac Lane's Categories for the Working Mathematician for the short proof.
Examples of non-abelian additive categories
The category of even-dimensional vector spaces over a field is additive but not abelian, since linear transformations with odd rank do not have kernels in that category.
The category of finitely-generated modules over a non-Noetherian ring (such as ) is also additive but not abelian.
Kernels and Cokernels
At some point I will add the motivation for this general definition, but for now I will just slap down the definition:
Definition of kernel
Let be a category with a null object. A kernel of a morphism is an equalizer of the morphisms . In other words, it is a morphism such that and every with factors uniquely through :
Since is an equalizer, the morphism is a monomorphism (i.e., left cancellable). It is thus common to think of the kernel as a subobject of , although technically subobjects of are equivalence classes of monomorphisms.
Example in
In , a kernel of a group morphism is the inclusion , where is the usual kernel.
Example in -categories
In any preadditive category, all equalizers are kernels. This is because the hom-sets are abelian group, so for arrows and we have exactly when . The arrow can therefore be described either as an equalizer of and , or as a kernel of . This is why we usually deal with kernels (and not equalizers) in , , etc.
If we dualize the notion of kernel we obtain the notion of cokernel:
Definition of cokernel
Let be a category with a null object. A cokernel of a morphism is a coequalizer of the morphisms . In other words, it is a morphism such that and every with factors uniquely through :