Transformacja naturalna

Z testwiki
Przejdź do nawigacji Przejdź do wyszukiwania

Transformacja naturalna – w teorii kategorii przekształcenie jednego funktora w drugi pełniące rolę homomorfizmu wyższego rzędu w kategorii funktorów.

Definicje

Jeżeli 𝔄,𝔅 są kategoriami, a F:𝔄𝔅, G:𝔄𝔅 są parą równoległych funktorów kowariantnych, to transformacją naturalną z F do G nazywamy rodzinę {ηX}X𝔄o morfizmów ηX:F(X)G(X) kategorii 𝔅 indeksowaną obiektami X𝔄o=Ob𝔄, taką, że dla dowolnego morfizmu f:XY w 𝔄 następujący diagram komutuje:

tzn. ηYF(f)=G(f)ηXSzablon:OdnSzablon:Odn. Transformację taką oznaczamy symbolem η:FG. Morfizmy (ηX)X𝔄o nazywamy komponentami transformacji naturalnej η.

Funktory F i G nazywamy naturalnie równoważnymi, gdy istnieje transformacja naturalna {ηX}X𝔄o morfizmów ηX:F(X)G(X) taka, że dla każdego X𝔄o morfizm ηX jest izomorfizmem w kategorii 𝔅.

Złożeniem transformacji naturalnych η:FG i θ:GH jest transformacja naturalna θη:FH określona jako rodzina złożeń {θXηX}X𝔄o.

Analogicznie definiuje się transformacje naturalne multifunktorów, tzn. funktorów z produktu kategorii 𝔄1××𝔄n do 𝔅.

Jeżeli F:𝔄𝔅, G:𝔄𝔅 jest parą równoległych funktorów kontrawariantnych, to definiujemy transformacje naturalne z F do G traktując F i G jako funktory kowariantne z kategorii 𝔄op do 𝔅Szablon:Odn.

Przykłady

Niech 𝔄=𝔅=𝐕𝐞𝐜𝐭 będzie kategorią przestrzeni liniowych V nad ciałem i przekształceń liniowych f:V1V2. Przestrzeń sprzężona (dualna) V* jest określona jako przestrzeń wszystkich funkcjonałów liniowych f:V. Przyporządkowując każdemu wektorowi u przestrzeni V funkcjonał ψu na V*, należący do V**=(V*)*, określony wzorem ψu(φ)=φ(u) dla φV*, otrzymujemy kanoniczny monomorfizm liniowy ψV:VV**Szablon:Odn. Rodzina {ψV}V𝐕𝐞𝐜𝐭𝐨 jest transformacją naturalną funktora tożsamościowego 𝐕𝐞𝐜𝐭𝐕𝐞𝐜𝐭 w funktor drugiej sprzężonej 𝐕𝐞𝐜𝐭𝐕𝐞𝐜𝐭 określony przez przyporządkowanie obiektowe VV**. Gdy ograniczymy się do podkategorii przestrzeni liniowych skończenie wymiarowych, otrzymujemy równoważność naturalną – tę, od której Eilenberg i MacLane zaczęli objaśnianie teorii kategorii.

Ogólniej, niech 𝐕𝐞𝐜𝐭 oznacza kategorię przestrzeni wektorowych nad dowolnym ciałem K i niech B będzie ustalonym obiektem. Symbolem Hom(–, B) oznaczamy funktor kontrawariantny z 𝐕𝐞𝐜𝐭 do 𝐕𝐞𝐜𝐭 (zdefiniowany analogicznie do funktorów głównych kontrawariantnych), nadając zbiorom Hom(A,B) zwykłą strukturę przestrzeni wektorowej. Złożenie tego funktora z samym sobą daje funktor kowariantny Hom(Hom(,B),B) z 𝐕𝐞𝐜𝐭 do 𝐕𝐞𝐜𝐭. Każdemu AOb𝐕𝐞𝐜𝐭 przyporządkowujemy kanoniczne przekształcenie liniowe ηA z A w Hom(Hom(A,B),B), którego szczególny przypadek omawialiśmy powyżej. Jest to transformacja naturalna funktora tożsamościowego na 𝐕𝐞𝐜𝐭 w funktor Hom(Hom(,B),B)Szablon:Odn.

Niech 𝐙 oznacza grupę liczb całkowitych (obiekt wolny o jednym generatorze w kategorii 𝐀𝐛 grup abelowych). Funktor kowariantny Hom(𝐙,):𝐀𝐛𝐀𝐛 jest naturalnie równoważny funktorowi tożsamościowemu na 𝐀𝐛, a komponentami tej transformacji naturalnej są homomorfizmy grup ηA:Hom(𝐙,A)A określone jako ηA(φ)=φ(1) dla homomorfizmów φ:𝐙A.

Ze znanych własności produktów tensorowych grup abelowych (a także przestrzeni liniowych i modułów nad pierścieniami) wynika równoważność naturalna funktorów trzech zmiennych Hom(?1?2,?3) i Hom(?1,Hom(?2,?3)), gdzie ?1,?2,?3 są symbolami tych zmiennychSzablon:Odn.

Bifunktor mnożenia kartezjańskiego z 𝐒𝐞𝐭×𝐒𝐞𝐭 do 𝐒𝐞𝐭, który każdej parze obiektów X,Y (zbiorów w Ob𝐒𝐞𝐭) przyporządkowuje zbiór Φ(X,Y)=X×Y, a każdej parze morfizmów α:X1X2, β:Y1Y2 przyporządkowuje odpowiadające im przekształcenie iloczynów kartezjańskich, jest naturalnie równoważny analogicznie zdefiniowanemu bifunktorowi Ψ(X,Y)=Y×X. Odpowiednią transformację naturalną wyznaczają bijekcje ηX,Y:X×YY×X przyporządkowujące parze a,b parę b,a. Podobnie ustala się naturalną równoważność funktorów trzech zmiennych o przyporządkowaniu obiektowym A×(B×C) → (A×B)×CSzablon:Odn.

Transformacją naturalną dla funktora List:𝐒𝐞𝐭𝐌𝐨𝐧 z kategorii zbiorów do kategorii monoidów jest operacja rev:ListList, która – mając daną listę – odwraca jej elementy:

[1,2,8,7]rev[7,8,2,1]

Dla zbioru A komponent revA:List(A)List(A) jest funkcją odwracającą dowolną listę o elementach z A.

Przypisy

Szablon:Przypisy

Bibliografia

Linki zewnętrzne

Szablon:Teoria kategorii