I'm currently delving into category theory and came across two concepts that appear similar: presheaves and contravariant Hom-functors. Both of these constructs are associated with the mapping from $\mathbb{C}^{op}$ to Set, which underlines their apparent similarity.

Both a presheaf and a contravariant Hom-functor $Hom(\_, A)$ have the form of $F: \mathbb{C}^{op} \rightarrow Set$, and Wikipedia states that a contravariant Hom-functor is a presheaf, meanwhile other pages states that presheaf that is naturally isomorphic to the $Hom(\_, A)$.

The situation is similar with copresheaves and covariant Hom-functor $Hom(A,\_)$, which both mapping from $\mathbb{C}$ to $Set$.

What is it that sets a presheaf and a contravariant Hom-functor apart, given that both can be seen as contravariant functors from $\mathbb{C}^{op}$ to $Set$?

Despite this understanding, I find myself somewhat muddled when trying to pin down the differences between a general presheaf and a contravariant Hom-functor. Also both Wikipedia and nLab mentioned that,

A functor $F : C → Set$ that is naturally isomorphic to $Hom(A, \_)$ for some $A$ in $C$ is called a representable functor

Functors of the form $C^{op}→Set$ are called presheaves on $C$, and functors naturally isomorphic to hom(-,C) are called representable functors or representable presheaves on $C$.

These actually made me more confused. Could anyone provide a clearer or more intuitive way to understand this distinction? Is there any functor that takes $C → Set$ is not a Hom-functor? Also, is a presheaf/Hom-functor itself a $Set$? I really can't imagine that.

  • 3
    $\begingroup$ A presheaf is exactly the same as a contravariant functor. A Hom-functor is a special kind of functor. They (and everything isomorphic to any of them) are also called representable functors or representable presheaves. $\endgroup$
    – Tzimmo
    Aug 1, 2023 at 15:47

1 Answer 1


For an example of a presheaf which is not representable, let $\mathscr{C} = \mathbf{Grp}$ be the category of groups and let $F:\mathscr{C}^{\text{op}} \to \mathbf{Set}$ be the functor which sends a group to the empty set $\emptyset$ and sends a morphism $f:G \to H$ in $\mathbf{Grp}^{\text{op}}$ to $\operatorname{id}_{\emptyset}$. Then for this to be a representable presheaf you would need to be able to find a group $G$ such that for any group $X$ there is an isomorphism $$ \emptyset = F(X) \cong \mathbf{Grp}(X,G) $$ which is natural in $\mathbf{Grp}^{\text{op}}$. However, as every pair of groups $X$ and $Y$ have the trivial map $X \to \lbrace \ast \rbrace \xrightarrow{\ast \mapsto 1_Y} Y$ (and so there is a map $Y \to \lbrace \ast \rbrace \to X$ in the opposite category) we have that $\mathbf{Grp}(X,Y) \ne \emptyset$ for all groups $X$ and $Y$. Consequently it cannot be the case that $F$ is representable.

Addenda: I think what may help you in your confusion is writing down some examples of presheaves and hom functors in order to build your intuition a bit. The trick is that while a presheaf $F$ is not a set (it is a functor valued in the category $\mathbf{Set}$ of sets), for any object $X$ of your base category $\mathscr{C}$ the value $F(X)$ is a set. However, $F$ comes with more information: it also has functions $F(f):F(X) \to F(Y)$ whenever $f:X \to Y$ is a morphism in $\mathscr{C}$. A nice way to think about what a presheaf is comes down to having a tool with which you can use sets to study and understand $\mathscr{C}$.

By the way: A handy trick to try and build non-representable presheaves is to use constant presheaves, i.e., presheaves $F$ with the property that there is a set $S$ for which $F(X) = S$ for all objects $X$ and $F(f) = \operatorname{id}_S$ for all morphisms $f$. Then for $F$ to be representable you need to have an object $Y$ such that $\mathscr{C}(X,Y) \cong S$ for all objects $X$, which is a big ask!

  • $\begingroup$ Thank you for the clarification. For the exercise, I think since $id_{S}$ is unique, but for any $X \neq Y$, there are more than 1 morphism in $\mathscr{C}(X,Y)$, so $F$ is not presentable. $\endgroup$
    – whymgang
    Aug 3, 2023 at 12:30
  • $\begingroup$ @whymgang I'm not quite sure what you mean by the exercise, but if you mean the paragraph I was just suggesting a general strategy for finding non-representable presheaves. Determining if something is representable or not will generically depend heavily on both the category $\mathscr{C}$ you're studying and the set $S$ you feed it. For instance, if you want $S = \lbrace 0 \rbrace$ then the constant presheaf at $S$ is representable if and only if $\mathscr{C}$ has a terminal object. Also remember that you want an isomorphism with $S$ not equality. $\endgroup$
    – Geoff
    Aug 3, 2023 at 14:17
  • $\begingroup$ Also what is $\ast$ mean in your first example $X \to \lbrace \ast \rbrace \xrightarrow{\ast \mapsto 1_Y} Y$, can we just say $X \to Y$ always exists? $\endgroup$
    – whymgang
    Aug 4, 2023 at 1:29
  • $\begingroup$ So if $\mathscr{C}$is a field or empty set that contains no initial or terminal objects, and $\mathbf{S}$ is a constant , then $[\mathscr{C}^{op},\mathbf{S}]$ is not representable right? $\endgroup$
    – whymgang
    Aug 4, 2023 at 1:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .