The dual concept to that of kernel is that of
cokernel. That is, the kernel of a morphism is its cokernel in the
opposite category, and vice versa. As mentioned above, a kernel is a type of binary equaliser, or
difference kernel. Conversely, in a
preadditive category, every binary equaliser can be constructed as a kernel. To be specific, the equaliser of the morphisms
f and
g is the kernel of the
difference g −
f. In symbols: :eq (
f,
g) = ker (
g −
f). It is because of this fact that binary equalisers are called "difference kernels", even in non-preadditive categories where morphisms cannot be subtracted. Every kernel, like any other equaliser, is a
monomorphism. Conversely, a monomorphism is called
normal if it is the kernel of some morphism. A category is called
normal if every monomorphism is normal.
Abelian categories, in particular, are always normal. In this situation, the kernel of the
cokernel of any morphism (which always exists in an abelian category) turns out to be the
image of that morphism; in symbols: :im
f = ker coker
f (in an abelian category) When
m is a monomorphism, it must be its own image; thus, not only are abelian categories normal, so that every monomorphism is a kernel, but we also know
which morphism the monomorphism is a kernel of, to wit, its cokernel. In symbols: :
m = ker (coker
m) (for monomorphisms in an abelian category) ==Relationship to algebraic kernels==