Yoneda lemma



The Yoneda lemma says that the set of morphisms from a representable presheaf y(c)y(c) into an arbitrary presheaf XX is in natural bijection with the set X(c)X(c) assigned by XX to the representing object cc.

The Yoneda lemma is an elementary but deep and central result in category theory and in particular in sheaf and topos theory. It is essential background behind the central concepts of representable functors, universal constructions, and universal elements?.

Statement and proof


(functor underlying the Yoneda embedding)

For π’ž\mathcal{C} a locally small category we write

[C op,Set]≔Func(C op,Set) [C^{op}, Set] \coloneqq Func(C^{op}, Set)

for the functor category out of the opposite category of π’ž\mathcal{C} into Set.

This is also called the category of presheaves on π’ž\mathcal{C}. Other notation used for it includes Set C opSet^{C^{op}} or Hom(C op,Set))Hom(C^{op},Set)).

There is a functor

C ⟢y [C op,Set] c ↦ Hom π’ž(βˆ’,c) \array{ C &\overset{y}{\longrightarrow}& [C^op,Set] \\ c &\mapsto& Hom_{\mathcal{C}}(-,c) }

(called the Yoneda embedding for reasons explained below) from π’ž\mathcal{C} to its category of presheaves, which sends each object to the hom-functor into that object, also called the presheaf represented by cc.


(Yoneda embedding is adjunct of hom-functor)

The Yoneda embedding functor y:π’žβ†’[π’ž op,Set]y \;\colon\; \mathcal{C} \to [\mathcal{C}^{op}, Set] from Def. 1 is equivalently the adjunct of the hom-functor

Hom π’ž:π’ž opΓ—π’žβŸΆSet Hom_{\mathcal{C}} \;\colon\; \mathcal{C}^{op} \times \mathcal{C} \longrightarrow Set

under the product category/functor category adjunction

Hom(C opΓ—C,Set)→≃Hom(C,[C op,Set]) Hom(C^{op} \times C, Set) \stackrel{\simeq}{\to} Hom(C, [C^{op}, Set])

in the closed symmetric monoidal category of categories.


(Yoneda lemma)

Let π’ž\mathcal{C} be a locally small category, with category of presheaves denoted [π’ž op,Set][\mathcal{C}^{op},Set], according to Def. 1.

For X∈[π’ž op,Set]X \in [\mathcal{C}^{op}, Set] any presheaf, there is a canonical isomorphism

Hom [C op,Set](y(c),X)≃X(c) Hom_{[C^op,Set]}(y(c),X) \;\simeq\; X(c)

between the hom-set of presheaf homomorphisms from the representable presheaf y(c)y(c) to XX, and the value of XX at cc.

This is the standard notation used mostly in pure category theory and enriched category theory. In other parts of the literature it is customary to denote the presheaf represented by cc as h ch_c. In that case the above is often written

Hom(h c,X)≃X(c) Hom(h_c, X) \simeq X(c)


Nat(h c,X)≃X(c) Nat(h_c, X) \simeq X(c)

to emphasize that the morphisms of presheaves are natural transformations of the corresponding functors.


The proof is by chasing the element Id c∈C(c,c)Id_c \in C(c, c) around both legs of a naturality square for a natural transformation Ξ·:C(βˆ’,c)β†’X\eta: C(-, c) \to X (hence a homomorphism of presheaves):

C(c,c) β†’Ξ· c X(c) Id c ↦ Ξ· c(Id c) =def ΞΎ C(f,c)↓ ↓ X(f) ↓ ↓ X(f) C(b,c) β†’Ξ· b X(b) f ↦ Ξ· b(f) \array{ C(c, c) & \stackrel{\eta_c}{\to} & X(c) & & & & Id_c & \mapsto & \eta_c(Id_c) & \stackrel{def}{=} & \xi \\ _\mathllap{C(f, c)} \downarrow & & \downarrow _\mathrlap{X(f)} & & & & \downarrow & & \downarrow _\mathrlap{X(f)} & & \\ C(b, c) & \underset{\eta_b}{\to} & X(b) & & & & f & \mapsto & \eta_b(f) & & }

What this diagram shows is that the entire transformation Ξ·:C(βˆ’,c)β†’X\eta: C(-, c) \to X is completely determined from the single value ξ≔η c(Id c)∈X(c)\xi \coloneqq \eta_c(Id_c) \in X(c), because for each object bb of CC, the component Ξ· b:C(b,c)β†’X(b)\eta_b: C(b, c) \to X(b) must take an element f∈C(b,c)f \in C(b, c) (i.e., a morphism f:bβ†’cf: b \to c) to X(f)(ΞΎ)X(f)(\xi), according to the commutativity of this diagram.

The crucial point is that the naturality condition on any natural transformation Ξ·:C(βˆ’,c)β‡’X\eta : C(-,c) \Rightarrow X is sufficient to ensure that Ξ·\eta is already entirely fixed by the value Ξ· c(Id c)∈X(c)\eta_c(Id_c) \in X(c) of its component Ξ· c:C(c,c)β†’X(c)\eta_c : C(c,c) \to X(c) on the identity morphism Id cId_c. And every such value extends to a natural transformation Ξ·\eta.

More in detail, the bijection is established by the map

[C op,Set](C(βˆ’,c),X)β†’| cSet(C(c,c),X(c))β†’ev Id cX(c) [C^{op}, Set](C(-,c),X) \stackrel{|_{c}}{\to} Set(C(c,c), X(c)) \stackrel{ev_{Id_c}}{\to} X(c)

where the first step is taking the component of a natural transformation at c∈Cc \in C and the second step is evaluation at Id c∈C(c,c)Id_c \in C(c,c).

The inverse of this map takes f∈X(c)f \in X(c) to the natural transformation η f\eta^f with components

Ξ· d f:=X(βˆ’)(f):C(d,c)β†’X(d). \eta^f_d := X(-)(f) : C(d,c) \to X(d) \,.


The Yoneda lemma has the following direct consequences. As the Yoneda lemma itself, these are as easily established as they are useful and important.

corollary I: Yoneda embedding

The Yoneda lemma implies that the Yoneda embedding functor Y:Cβ†’[C op,Set]Y : C \to [C^op,Set] really is an embedding in that it is a full and faithful functor, because for c,d∈Cc,d \in C it naturally induces the isomorphism of Hom-sets.

[C op,Set](C(βˆ’,c),C(βˆ’,d))≃(C(βˆ’,d))(c)=C(c,d) [C^{op},Set](C(-,c),C(-,d)) \simeq (C(-,d))(c) = C(c,d)

corollary II: uniqueness of representing objects

Since the Yoneda embedding is a full and faithful functor, an isomorphism of representable presheaves Y(c)≃Y(d)Y(c) \simeq Y(d) must come from an isomorphism of the representing objects c≃dc \simeq d:

Y(c)≃Y(d)⇔c≃d Y(c) \simeq Y(d) \;\; \Leftrightarrow \;\; c \simeq d

corollary III: universality of representing objects

A presheaf X:C opβ†’SetX : C^{op} \to Set is representable precisely if the comma category (Y,const X)(Y,const_X) has a terminal object. If a terminal object is (d,f:Y(d)β†’X)≃(d,f∈X(d))(d, f : Y(d) \to X) \simeq (d, f \in X(d)) then X≃Y(d)X \simeq Y(d).

This follows from unwrapping the definition of morphisms in the comma category (Y,const X)(Y,const_X) and applying the Yoneda lemma to find

(Y,const X)((c,f∈X(c)),(d,g∈X(d)))≃{u∈C(c,d):X(u)(g)=f}. (Y,const_X)((c,f \in X(c)), (d, g \in X(d))) \simeq \{ u \in C(c,d) : X(u)(g) = f \} \,.

Hence (Y,const X)((c,f∈X(c),(d,g∈X(d)))≃pt(Y,const_X)((c,f \in X(c), (d, g \in X(d))) \simeq pt says precisely that X(βˆ’)(f):C(c,d)β†’X(c)X(-)(f) : C(c,d) \to X(c) is a bijection.


For emphasis, here is the interpretation of these three corollaries in words:

  • corollary I says that the interpretation of presheaves on CC as generalized objects probeable by objects cc of CC is consistent: the probes of XX by cc are indeed the maps of generalized objects from cc into XX;

  • corollary II says that probes by objects of CC are sufficient to distinguish objects of CC: two objects of CC are the same if they have the same probes by other objects of CC.

  • corollary III characterizes representable functors by a universal property and is hence the bridge between the notion of representable functor and universal constructions.


The Yoneda lemma tends to carry over to all important generalizations of the context of categories:

Necessity of naturality

The assumption of naturality is necessary for the Yoneda lemma to hold. A simple counter-example is given by a category with two objects AA and BB, in which Hom(A,A)=Hom(A,B)=Hom(B,B)=β„€ β‰₯0Hom(A,A) = Hom(A,B) = Hom(B,B) = \mathbb{Z}_{\geq 0}, the set of integers greater than or equal to 00, in which Hom(B,A)=β„€ β‰₯1Hom(B,A) = \mathbb{Z}_{\geq 1}, the set of integers greater than or equal to 11, and in which composition is addition. Here it is certainly the case that Hom(A,βˆ’)Hom(A,-) is isomorphic to Hom(B,βˆ’)Hom(B,-) for any choice of βˆ’-, but AA and BB are not isomorphic (composition with any arrow Bβ†’AB \rightarrow A is greater than or equal to 11, so cannot have an inverse, since 00 is the identity on AA and BB).

A finite counter-example is given by the category with two objects AA and BB, in which Hom(A,A)=Hom(A,B)=Hom(B,B)={0,1}Hom(A,A) = Hom(A,B) = Hom(B,B) = \{0, 1\}, in which Hom(B,A)={0,2}Hom(B,A) = \{0, 2\}, and composition is multiplication modulo 2. Here, again, it is certainly the case that Hom(A,βˆ’)Hom(A,-) is isomorphic to Hom(B,βˆ’)Hom(B,-) for any choice of βˆ’-, but AA and BB are not isomorphic (composition with any arrow Bβ†’AB \rightarrow A is 00, so cannot have an inverse, since 11 is the identity on AA and BB).

The Yoneda lemma in semicategories

An interesting phenomenon arises in the case of semicategories i.e. β€œcategories” (possibly) lacking identity morphisms:

the Yoneda lemma fails in general, since its validity in a semicategory 𝒒\mathcal{G} implies that 𝒒\mathcal{G} is in fact already a category because the Yoneda lemma permits to embed 𝒒\mathcal{G} into PrSh(𝒒)PrSh(\mathcal{G}) and the latter is always a category, the embedding then implying that 𝒒\mathcal{G} is itself a category!

But for regular semicategories β„›\mathcal{R} there is a unity of opposites in the category of all semipresheaves on β„›\mathcal{R} between the so called regular presheaves that are colimits of representables and presheaves satisfying the Yoneda lemma, whence the Yoneda lemma holds dialectically for regular presheaves!

For some of the details see at regular semicategory and the references therein.



The term Yoneda lemma originated in an interview of Nobuo Yoneda by Saunders Mac Lane at Paris Gare du Nord:

In Categories for the Working Mathematician MacLane writes that this happened in 1954.

Reviews and expositions include

A discussion of the Yoneda lemma from the point of view of universal algebra is in

  • Vaughan Pratt, The Yoneda lemma without category theory: algebra and applications (pdf).

Last revised on June 5, 2018 at 10:42:28. See the history of this page for a list of all contributions to it.