What is the use of generators of a category?

An object $X$ is a generator of a category $\mathcal{C}$ if the functor $Hom_{\mathcal{C}}(X,\_) : \mathcal{C} \rightarrow Set$ is faithful.

I encountered the notion in the context of Morita-equivalence of rings, but I don't understand what its use is. Why is $X$ called a "generator"? What does it generate?

• See these related questions: [1] [2]. Jun 15 '14 at 10:08
• The terminology was "poorly chosen" (Maclane's words). A better name would be "separator" or "discriminator" (my word), because it helps discriminate one morphism from another Jun 15 '14 at 18:51

Generators don't generate the category. This explains why "generator" is an unfortunate terminology. A better one would be "separator". I've seen this suggestion in many places. This makes sense, because every two non-equal morphisms $f,g : A \to B$ may be separated by a morphism $i : X \to A$, i.e. $fi \neq gi$.

However, assume that our category has coproducts. Then, if $A$ is any object, then there is a canonical morphism $\bigoplus_{f \in \hom(X,A)} X \to A$ and this is an epimorphism - exactly because $X$ is a generator. This looks more like a generating set (remember that for example an $R$-module $M$ is generated by a subset $S$ if and only if $\bigoplus_{s \in S} R \to M$ is an epimorphism).

• I think it is in fact true that if a category is cocomplete then a generator is precisely an object generating it under colimits. Can you confirm? Jun 15 '14 at 16:26
• It is true for categories with coproducts in which every epimorphism is regular. Jun 15 '14 at 16:29

While I don't know the actual etymology, I interpret the word "generate" as generating elements of the category.

There is a notion of a "generalized element" of an object: a generalized element of $A$ is simply an arrow with target $A$. This is the "right" notion of element: for example, a morphism $f : A \to B$ is monic if and only if $f(x) = f(y) \implies x=y$ for all generalized elements $x,y$ of $A$.

However, allowing arbitrary objects as domains of a generalized element is unwieldy. $X$ is a generator if the class of generalized elements with domain $X$ has "enough" elements.

In the element language, $X$ is a generator is the same thing as saying that, for $f,g : A \to B$, $\left(\forall x: f(x) = g(x)\right) \implies f = g$ when $x$ ranges over all generalized elements of $A$ that come from $X$.

You can even think of replacing an object with its class of generalized elements... or just the class of generalized elements with domain $X$. This is actually the functor $\hom(X, -)$.

$X$ is a generator if and only if the functor $\hom(X, -)$ is faithful. We can think of this as saying that $X$ generates enough elements of the category to faithfully represent its structure.

(note that you can consider a whole class of objects rather than just a single object)

As a counterexample, $\mathbf{F}_p[x]$ doesn't generate $\mathbf{CRng}$: the image of $\hom(\mathbf{F}_p[x], -)$ is faithful on the subcategory of $\mathbf{F}_p$-algebras, but it collapses all other rings into the empty set.

• In the last paragraph, what is the subcategory generated by an object? Notice that $R$ is not a generator in the category of $R$-algebras. Initial objects are "never" generators. Jun 15 '14 at 10:27
• @Martin: Oh right, I meant $\mathbf{F}_p[x]$.
– user14972
Jun 15 '14 at 11:24