Естественное преобразование
Пусть F,G - два контравариантных функтора из категории C в категорию D, т.е. "переворачивающих" стрелки.
Пусть f - функция, которая каждому объекту X категории C сопоставляет морфизм f(X):F(X)->G(X) категории D.
f называется естественным преобразованием функтора F в функтор G, если
(i) для каждой стрелки p: A->B категории C выполнено равенство f(A).F(p) = G(p).f(B).
Синоним для естественного преобразования - функторный морфизм.
Если каждая из стрелок f(X) является изоморфизмом, то f называется функторным изоморфизмом.
Совокупность всех е.п. из F в G обозначается как HOM(F,G). Она далеко не всегда множество.
Функтор точек
Пусть X - объект категории C. Построим контравариантный функтор из C в Set, называемый функтором точек объекта X и обозначаемый hom(X).
Каждому объекту Y категории C этот функтор сопоставляет множество всех морфизмов из Y в X, обозначаемое hom(Y,X).
Каждому морфизму p: Y->Y' категории C сопоставляется отображение из hom(Y',X) в hom(Y,X), которое морфизм q: Y'->X переводит в q.p.
Обычно буковка X пишется подстрочным индексом, т.е. hom_X. Но на доброчане это сейчас поломано.
Легко видеть, что это действительно функтор. Потому что он очевидно сохраняет единицу и композицию (контравариантно).
Контравариантная лемма Йонеды
Пусть есть контравариантный функтор из какой-то категории C в Set, категорию множеств. Такие функторы называются предпучками. Назовём этот функтор F.
Пусть X - какой-то объект из C. Рассмотрим совокупность всех естественных преобразований функтора hom(X) в функтор F. То есть совокупность функторных морфизмов функтора точек X в предпучок. Оказывается, эта совокупность будет находиться в каноническом взаимно-однозначном соответствии с F(X) - то есть со множеством, в которое функтор F превращает объект X. Каноничность в том, что явно известно, что куда переходит при этом соответствии. В отличие, например, от соответствий, существование которых гарантируется аксиомой выбора.
Итак, формально. С - категория, X - объект C, F - контравариантный функтор C->Set. Существует каноническая биекция между HOM(hom(X), F) и F(X).
Доказательство.
Биекции - это в точности отображения, у которых есть обратные. Чтобы доказать, что между HOM(hom(X), F) и F(X) есть биекция, мы построим отображение из HOM(hom(X), F) в F(X), затем отображение из F(X) в HOM(hom(X), F), и третьим шагом докажем, что они обратны друг другу.
1. Построим функцию a, которая естественное преобразование будет переводить в точку F(X).
Пусть f - какое-нибудь естественное преобразование hom(X) в F.
Тогда оно каждому объекту Y категории C сопоставляет отображение f(Y) из множества hom(Y,X) во множество F(Y).
В частности, самому объекту X, фиксированному ещё на этапе условия теоремы, такое отображение f(X) тоже сопоставлено.
Поскольку idX - морфизм из X в X, оно переходит этот морфизм в какую-то точку f(X)(idX).
Положим a(f) = f(X)(idX) и тем самым получим требуемую функцию, превращающую естественные преобразования в точки F(X).
2. Построим функцию b, которая точки F(X) будет превращать в естественные преобразования.
Пусть k - элемент множества F(X). Нужно сопоставить этой точке естественное преобразование b(k) функтора hom(X) в F, каким-то образом зависящее от этой точки.
Чтобы задать естественное преобразование, нужно каждому объекту Y категории C сопоставить отображение b(k)(Y) : hom(Y,X) -> F(Y), затем показать, что оно удовлетворяет свойству (i).
Сначала сопоставим отображение. Пусть Y - объект в C, и пусть p:Y->X - какой-то морфизм. Тогда, поскольку F - контравариантный функтор, F(p) - какая-то функция из F(X) в F(Y), и известна точка F(p)(k). Пробегая буквой p по всем морфизмам Y->X, получаем требуемое отображение b(k)(Y). Оно морфизм p превращает в точку b(k)(Y)(p) = F(p)(k).
Осталось показать, что это отображение удовлетворяет свойству (i) - то есть является, собственно, естественным преобразованием.
Пусть u:Y->Y' морфизм категории C. Нужно доказать, что b(k)(Y).hom(X)(u) = F(u).b(k)(Y') (если нарисовать диаграмму, станет яснее).
И слева, и справа стоят морфизмы Set, то есть просто отображения из hom(Y',X) в F(Y).
Чтобы доказать их равенство, достаточно доказать, что их значения равны в каждой точке.
Возьмём морфизм p:Y'->X.
Тогда hom(X)(u)(p) = pu, а b(k)(Y)(pu) = F(pu)(k), то есть значение с левой стороны равенства равно F(pu)(k).
С другой стороны, b(k)(Y')(p) = F(p)(k), и, поскольку F - контрафунктор, F(u).F(p)(k) = F(pu)(k).
Итак, значения слева и справа равны друг другу, и потому отображения равны. b(k) - в самом деле естественное преобразование.
3. Самое интересное. Нужно доказать, что a и b обратны друг другу.
Пусть f - какое-нибудь естественное преобразование hom(X) в F, и пусть Y - произвольный объект.
Тогда b(a(f))(Y) = b(f(x)(idX))(Y) - отображение из hom(Y,X) в F(Y). Докажем, что оно совпадает во всех точках с f(Y). Возьмём морфизм u:Y->X. Слева b(f(X)(idX))(Y)(u) = F(u)(f(X)(idX)).
Поскольку f - естественное преобразование, по свойству (i) f(Y).Hom(u) = F(u).f(X), и, в частности, f(Y).Hom(u)(idX) = F(u).f(X)(idX). Так как Hom(u)(idX) = 1X.u = u, f(Y)(u) = F(u)(f(X)(idX)). Слева и спава стоит одно и то же, значит, b(a(f)) = f.
Теперь докажем, что a(b(k)) = k для любой точки k из F(X), иными словами, что b(k)(X)(1X) = k. Но по определению функции b, b(k)(X)(1X) = F(1x)(k) = 1FX (k) = k.
Всё доказано, ня.