In category theory, the concept of an injective cogenerator is drawn from examples such as Pontryagin duality. Generators are objects which cover other objects as an approximation, and (dually) cogenerators are objects which envelope other objects as an approximation. When working with unfamiliar algebraic objects, one can use these to approximate with the more familiar.
More precisely:
Assuming one has a category like that of abelian groups, one can in fact form direct sums of copies of G until the morphism
is surjective; and one can form direct products of C until the morphism
is injective.
For example, the integers are a generator of the category of abelian groups (since every abelian group is a quotient of a free abelian group). This is the origin of the term generator. The approximation here is normally described as generators and relations.
As an example of a cogenerator in the same category, we have Q/Z, the rationals modulo the integers, which is a divisible abelian group. Given any abelian group A, there is an isomorphic copy of A contained inside the product of |A| copies of Q/Z. This approximation is close to what is called the divisible envelope - the true envelope is subject to a minimality condition.
Finding a generator of an abelian category allows one to express every object as a quotient of a direct sum of copies of the generator. Finding a cogenerator allows one to express every object as a subobject of a direct product of copies of the cogenerator. One is often interested in projective generators (even finitely generated projective generators, called progenerators) and minimal injective cogenerators. Both examples above have these extra properties.
The cogenerator Q/Z is useful in the study of modules over general rings. If H is a left module over the ring R, one forms the (algebraic) character module H* consisting of all abelian group homomorphisms from H to Q/Z. H* is then a right R-module. Q/Z being a cogenerator says precisely that H* is 0 if and only if H is 0. Even more is true: the * operation takes a homomorphism