Cokernel
In mathematics, the cokernel of a morphism f : X → Y (e.g. a homomorphism between groups or a bounded linear operator between Hilbert spaces) is an object Q and a morphism q : Y → Q such that the composition q f is zero, and furthermore Q is, in a sense, the "most general" object with this property. Often the map q is understood, and Q itself is called the cokernel of f.
Cokernels are dual to the kernels of category theory, hence the name.
In many situations in abstract algebra, such as for abelian groups, vector spaces or modules, the cokernel of the homomorphism f : X → Y is the quotient of Y by the image of f. In topological settings, such as with bounded linear operators between Hilbert spaces, one typically has to take the closure of the image before passing to the quotient.
Formal definition
One can define the cokernel in the general framework of category theory. In order for the definition to make sense the category in question must have zero morphisms. The cokernel of a morphism f : X → Y is defined as the coequalizer of f and the zero morphism 0XY : X → Y.
Explicitly, this means the following. The cokernel of f : X → Y is an object Q together with a morphism q : Y → Q such that the diagram
commutes. Moreover the morphism q must be universal for this diagram, i.e. any other such q′: Y → Q′ can be obtained by composing q with a unique morphism u : Q → Q′:
As with all universal constructions the cokernel, if it exists, is unique up to a unique isomorphism, or more precisely: if q : Y → Q and q‘ : Y → Q‘ are two cokernels of f : X → Y, then there exists a unique isomorphism u : Q → Q‘ with q‘ = u q.
Like all coequalizers, the cokernel q : Y → Q is necessarily an epimorphism. Conversely an epimorphism is called normal (or conormal) if it is the cokernel of some morphism. A category is called conormal if every epimorphism is normal (e.g. the category of groups is conormal).
Examples
In the category of groups, the cokernel of a group homomorphism f : G → H is the quotient of H by the normal closure of the image of f. In the case of abelian groups, since every subgroup is normal, the cokernel is just H modulo the image of f:
- coker(f) = H / im(f).
Special cases
In a preadditive category, it makes sense to add and subtract morphisms. In such a category, the coequalizer of two morphisms f and g (if it exists) is just the cokernel of their difference:
- coeq(f, g) = coker(g - f)
In a pre-abelian category (a special kind of preadditive category) the existence of kernels and cokernels is guaranteed. In such categories the image and coimage of a morphism f are given by
- im(f) = ker(coker f)
- coim(f) = coker(ker f)
Abelian categories are even better behaved with respect to cokernels. In particular, every abelian category is conormal (and normal as well). That is, every epimorphism e : A → B can be written as the cokernel of some morphism. Specifically, e is the cokernel of its own kernel:
- e = coker(ker e)