advanced34 min studyLesson 534 in Mathematics

The Yoneda lemma and fully faithful functors

Recover natural transformations from identity arrows and track the variance of represented presheaves.

On this page

What you’ll understand

  • Construct the Yoneda bijection for a contravariant set-valued functor.
  • Prove the reconstruction formula satisfies naturality.
  • Count natural transformations between represented presheaves using full faithfulness.

The Yoneda lemma says that a compatible rule on all arrows into an object is already determined by its value on that object's identity. Its strength comes from the compatibility assumption: it converts infinitely many possible component values into one datum. We use the presheaf convention consistently, so the represented functor has arrows into its representing object. A small group category and a three-point order will make both the reconstruction and its variance visible.

Evaluation at the identity loses no information

Assume C\mathcal C is small and P:Cop→SetP:\mathcal C^{\mathrm{op}}\to\mathbf{Set} is a presheaf. Put hA=C(−,A)h_A=\mathcal C(-,A). Yoneda gives a bijection between natural transformations hA⇒Ph_A\Rightarrow P and elements of P(A)P(A). It sends a transformation to its component at AA evaluated on the identity arrow. The smallness assumption ensures that the functor category has set-sized Hom collections without further universe bookkeeping; the lemma itself also admits a locally small formulation.

Given a∈P(A)a\in P(A), reconstruct the component at XX by sending f:X→Af:X\to A to P(f)(a)P(f)(a). The direction is correct because P(f):P(A)→P(X)P(f):P(A)\to P(X) reverses the arrow. Naturality of any proposed transformation applied to the arrow ff forces exactly this formula. Hence no second transformation can have the same value on the identity, and every choice of that value produces a transformation once the naturality check is made.

Nat⁡(hA,P)≅P(A),η⟼ηA(idA),ηX(f)=P(f)(a).\operatorname{Nat}(h_A,P)\cong P(A),\qquad \eta\longmapsto\eta_A(\mathrm{id}_A),\qquad \eta_X(f)=P(f)(a).
The reconstruction formula fixes the direction of every map in the presheaf convention.↔ Scroll wide equations horizontally.

Naturality in the probes and in the data

For an arrow g:Y→Xg:Y\to X, the presheaf law gives P(g)P(f)=P(f∘g)P(g)P(f)=P(f\circ g). Applying this identity to aa proves that the reconstruction commutes with precomposition of probe arrows. Evaluation and reconstruction are inverses because identities act trivially and because the original naturality square determines each component. This is a proof of the bijection, rather than an inference from a coincidental count in finite examples.

The bijection is also natural in PP and in AA. A natural transformation β:P⇒Q\beta:P\Rightarrow Q carries the chosen element to βA(a)\beta_A(a), matching composition with β\beta. An arrow u:A→Bu:A\to B induces postcomposition hA⇒hBh_A\Rightarrow h_B; precomposing a transformation out of hBh_B then corresponds to applying P(u):P(B)→P(A)P(u):P(B)\to P(A). These directions explain why changing the representing object can reverse arrows in a Hom expression.

P(g)ηX(f)=P(g)P(f)(a)=P(f∘g)(a)=ηY(f∘g).P(g)\eta_X(f)=P(g)P(f)(a)=P(f\circ g)(a)=\eta_Y(f\circ g).
Naturality follows from contravariant functoriality, with the composite f after g.↔ Scroll wide equations horizontally.

The Yoneda embedding remembers every arrow

The assignment A↦hAA\mapsto h_A extends covariantly to a functor y:C→[Cop,Set]y:\mathcal C\to[\mathcal C^{\mathrm{op}},\mathbf{Set}] by postcomposition. Taking P=hBP=h_B in Yoneda identifies natural transformations hA⇒hBh_A\Rightarrow h_B with arrows A→BA\to B. Thus yy is full and faithful: it gives a bijection on every Hom set. Faithfulness detects equality of arrows, while fullness says every transformation between these represented presheaves comes from an original arrow.

Full faithfulness does not say that every presheaf is represented. It also does not force distinct but isomorphic source objects to become unequal in every possible presentation. Instead it recovers the entire arrow structure between the chosen represented objects. Using covariant representables C(A,−)\mathcal C(A,-) would reverse the direction of the corresponding embedding. Writing the presheaf convention explicitly prevents a false answer even in a tiny ordered example.

C(A,B)≅Nat⁡(C(−,A),C(−,B)).\mathcal C(A,B)\cong\operatorname{Nat}(\mathcal C(-,A),\mathcal C(-,B)).
A natural transformation between these represented presheaves corresponds to an arrow in the same direction as the representing objects.↔ Scroll wide equations horizontally.

Four transformations from a regular three-cycle

Let C\mathcal C have one object and arrows Z/3Z\mathbb Z/3\mathbb Z under addition. Let the presheaf PP have values {0,1,2,∗}\{0,1,2,*\}, with P(g)P(g) adding gg modulo three to the numerical elements and fixing ∗*. Count the transformations from the representable presheaf to PP.

  1. The representable has the three arrows as its elements; precomposition by gg adds gg. Because the group is abelian, the stated maps satisfy the contravariant composition law as well as the identity law.

  2. Choose the value aa of a transformation on the identity residue zero. Reconstruction sends a residue gg to P(g)(a)P(g)(a). For the three numerical choices of aa, this is one of the three translations of the cycle.

  3. For a=∗a=*, reconstruction is the constant map to the fixed element. All four maps satisfy equivariance with every group arrow, and Yoneda rules out any others. No map is a natural isomorphism, since its component has three inputs and four possible outputs.

ηa(g)={a+g(mod3),a∈{0,1,2},∗,a=∗,∣Nat⁡(h,P)∣=4.\eta_a(g)=\begin{cases}a+g\pmod3,&a\in\{0,1,2\},\\ *,&a=*,\end{cases}\qquad |\operatorname{Nat}(h,P)|=4.
The component value at the identity determines the whole equivariant map.↔ Scroll wide equations horizontally.
The result

There are exactly four natural transformations: three translated cycles and one constant map to the fixed point.

Explore the model

Interactive lab

Interactive lab · modular

Reconstruct a cycle map from one value

Pause and Reset, then set modulus to 3 and additive step to 1. Two Steps select residue 2. On paper choose the image of identity to be 2 and predict the transformation's images of residues 0, 1, and 2: they are 2, 0, and 1. Compare these with the regular orbit. The fixed point * of the worked presheaf is not drawn, and the diagram does not enumerate general presheaves. Reset and set both controls before any fresh comparison; changing a control retains the clock.

Reconstruct a cycle map from one valueAddition modulo m starts at zero: rₙ = na mod m. Playback advances two additions per second. The orbit has period m/gcd(m,a), including period one for a = 0. This is not a cryptographic security test or a primality algorithm. Current readings: Residue r0: 0; Orbit period · m/gcd(m,a): 12; Distinct residues visited: 1 of 12. All parameters are adjustable with the labeled controls below.Repeated addition modulo 12: the current residue is 0, and the orbit period is 12.01234567891011+ 5mod 12An additive orbitn = 0rₙ = 0Period = 12Cycle starts at 0:0 → 5 → 10 → 3 →8 → 1 → 6 → 11 →4 → 9 → 2 → 7 → 0Exact residues · two additions per second
Additive orbitCurrent residue / next edge
Residue r0
0
Orbit period · m/gcd(m,a)
12
Distinct residues visited
1 of 12
t = 0 s

Addition modulo m starts at zero: rₙ = na mod m. Playback advances two additions per second. The orbit has period m/gcd(m,a), including period one for a = 0. This is not a cryptographic security test or a primality algorithm. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.

Look forOne selected value reconstructs an equivariant map, illustrating the identity-evaluation mechanism in Yoneda.

Check your understanding

For the poset category 0<1<2, how many natural transformations h₂⇒h₁ exist when hₐ=C(−,a)?

Try it yourself

In the same chain category, compute Nat⁡(h1,h2)\operatorname{Nat}(h_1,h_2) directly from its components and compare the result with Yoneda.

Take a moment to make a prediction or work it out on paper. Open a hint when you need one.

Give me a hint

List the component sets at zero, one, and two. A function with empty domain is unique, including when its target is nonempty.

Compare with the solution

At zero and one, both presheaves have singleton values, so the component functions are unique. At two, h1(2)h_1(2) is empty and h2(2)h_2(2) is a singleton, so again there is one function. The naturality squares commute because each route is the only available function of its type. There is exactly one transformation, matching the unique arrow 1→21\to2. This contrasts with the empty set of transformations in the reverse direction.

Take it with you

  • Yoneda reconstructs a transformation from its value on one identity arrow.
  • For presheaves, arrows into the representing object are transported by precomposition.
  • The Yoneda embedding is full and faithful, but not every presheaf is represented.

Read further

Original sources and deeper explanations to follow at your own pace.

Optional progress, saved in this browser when available. Revisit any lesson at any time.

Lesson not marked complete.