Естественное преобразование

Материал из testwiki
Версия от 03:17, 9 августа 2023; imported>Unit721 (Определение: Русификация)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

В теории категорий есте́ственное преобразова́ние предоставляет способ перевести один функтор в другой, сохраняя внутреннюю структуру (например, композиции морфизмов). Поэтому естественное преобразование можно понимать как «морфизм функторов». Эта интуиция может быть строго формализована в определении категории функторов. Естественные преобразования — наиболее базовое определение в теории категорий наряду с функторами, потому что оно появляется в большинстве её приложений.

Определение

Пусть F и G — ковариантные функторы из категории C в D. Тогда естественное преобразование из F в G сопоставляет каждому объекту X категории C морфизм ηX:F(X)G(X) в категории D, называемый компонентой η в X, так, что для любого морфизма f:XY диаграмма, изображённая на рисунке ниже, коммутативна. В случае контравариантных функторов C и D определение совершенно аналогично (необходимо только обратить горизонтальные стрелки, учитывая, что их обращает контравариантный морфизм).

Если η — естественное преобразование функтора F в функтор G, мы пишем η : FG. Также об этом говорят, что семейство морфизмов ηX : F(X) → G(X) естественно по X.

Если для каждого X в C морфизм ηX является изоморфизмом в D, то η называют естественным изоморфизмом (или, иногда, естественной эквивалентностью или изоморфизмом функторов).

Инфраестественное преобразование η из F в G — это просто семейство морфизмов ηX: F(X) → G(X). Натурализатор η, nat(η), — это самая большая подкатегория C, содержащая те объекты C, в ограничении на которые η является естественным преобразованием.

Если η : FG и ε : GH — естественные преобразования, мы можем взять их композицию и получить естественное преобразование εη : FH. Это делается покомпонентно: (εη)X = εXηX. Эта операция ассоциативна и имеет единицу, что позволяет образовать категорию функторов.

Примеры

Пример естественного преобразования

Примером естественного преобразования может служить определитель. В самом деле пусть R — коммутативное кольцо, тогда квадратные матрицы порядка n над R образуют моноид по умножению, а R — мультипликативный моноид самого кольца R. Пусть 𝐌𝐚𝐭n(R) будет функтором, переводящим кольцо R в моноид матриц над ним. Поскольку определитель выражается через умножение, сложение и вычитание, которые сохраняются морфизмами кольца R (что означает перестановочность морфизма и этих операций), отображение 𝐌𝐚𝐭n(R)det(𝐌𝐚𝐭n(R)) будет естественным преобразованием между функтором 𝐌𝐚𝐭n(R) и функтором, тождественно сопоставляющим каждому кольцу R его мультипликативный моноид (оба функтора из категории 𝐂𝐑𝐢𝐧𝐠 коммутативных колец в категорию моноидов 𝐌𝐨𝐧).

Пример «неестественного» преобразования

Приведём пример преобразования, не являющегося естественным. Пусть V — n-мерное векторное пространство над полем 𝔽. e1,e2,,en — его базис, e1,e2,,en — базис сопряжённого пространства функционалов D(V), такой что

ei(ej)=δji

где δji — символ Кронекера. Все n-мерные пространства изоморфны. Положим

k(ei)=ei

и распространим k линейно на всё пространство V. k отображает тождественный (очевидно ковариантный) функтор I в контравариантный функтор D, отображающий векторное пространство в сопряжённое пространство функционалов. Если мы возьмём категорию конечномерных векторных пространств, где морфизмами будут изоморфизмы f (а не любые линейные отображения), то можно заменить контравариантный функтор D ковариантным функтором D (где D(V)=D(V), D(f)=D(f1)). Преобразование k:VD(V) не будет естественным даже в простейшем случае одномерного пространства над полем действительных чисел. В самом деле, пусть V одномерно и изоморфизм f:VV является умножением на 2:

f(e1)=2e1

Тогда D(f)(k(e1))=12e1, в то время как k(f(e1))=2e1, то есть диаграмма некоммутативна.

Причина этого совершенно ясна — k определяется совершенно случайно выбранным базисом. Если мы возьмём второе сопряжённое пространство D(D(V)), то в случае конечномерного пространства существует изоморфизм h:VD(D(V)) (а именно h(x)(f)=f(x) для любого xV и функционала fD(V)). В данном случае изоморфизм h определяет естественное преобразование тождественного функтора I в функтор D2.

Полиморфные функции

Другой важнейший пример естественных преобразований — полиморфные функции (имеется в виду параметрический полиморфизм). Примером такого преобразования является функция reverse :: forall a . [a] -> [a], переворачивающая список элементов произвольного типа. В данном случае h(T) — это reverseT :: [T] -> [T]; а функторы F и G — это List.

Сформулировать этот факт можно так: forall f :: a -> b : map f . reversea = reverseb . map f. Это — одна из так называемых «бесплатных теорем».

Естественность всех параметрически полиморфных функций — это следствие теоремы Рейнольдса.

Литература