Marek Materzok Równana rekurencyjne na dzedznach Pommo, ż poczynłem starana, aby praca ta była możlwe kompletna wolna od błędów, ne mogę zagwarantować, że ne wkradły sę do nej żadne neścsłośc czy pomyłk. Czytać na własną odpowedzalność. 1. Wprowadzene Będzemy zajmować sę problemem znajdowana rozwązań rekurencyjnych równań na dzedznach. Interesować nas będą równana postac D = F (D). Motywującym przykładem jest zadane semantyk denotacyjnej dla beztypowego rachunku lambda. Każda funkcja w beztypowym rachunku lambda może być argumentem dla dowolnej nnej funkcj, wobec tego dzedzna, w której będzemy nterpretować wyrażena lambda, mus spełnać równane D = D D. 2. Funktory F -algebry W teor kategor standardowym narzędzem służącym rozwązywanu rekurencyjnych zależnośc jest pojęce F -algebry początkowej. Defncja 2.1. Nech F : K K będze endofunktorem nad kategorą K. F -algebrą nazywamy K-obekt A z morfzmem f : F (A) A. F -homomorfzmem z F -algebry A, f w F -algebrę B, g nazywamy K-morfzm h : A B tak, że h f = g F (h). Defncja 2.2. F -algebrę A, f nazywamy początkową, jeśl z każdej F -algebry B, g stneje w ną unkalny F -homomorfzm. Lemat 2.3. Jeśl A, f jest F -algebrą początkową, to f jest zomorfzmem. Dowód. Rozważmy F -algebrę F (A), F (f). Nech h : A > F (A) będze F -homomorfzmem. Z defncj F -homomorfzmu mamy h f = F (f) F (h) = F (f h). Poneważ (f h) f = f (h f) = f F (f h), f h jest F -automorfzmem, zatem f h = d A. Tym samym h f = F (f h) = F (d A ) = d F (A). Zatem h = f 1. Zatem jeśl znajdzemy kategorę, w której F będze funktorem, a A, f F -algebrą początkową, to rozwązanem równana D = F (D) jest A, natomast f jest zomorfzmem mędzy A F (A). Rozwązane równana jest węc z dokładnoścą do zomorfzmu. Rozpatrzmy kategorę CPO porządków zupełnych funkcj cągłych. Nestety, ta dość naturalna kategora ne jest odpowedna dla naszych celów. Aby to ukazać, przyjrzyjmy sę blżej bfunktorow. Defncja 2.4. Bfunktor : CPO CPO CPO jest konstruktorem przestrzen funkcj cągłych. Mając dane CPO-morfzmy - funkcje cągłe f : A B g : C D dzałane na nch jest następujące: (f g)(x) = g x f, f g : (B C) (A D). Zatem jest kontrawarantny względem perwszego argumentu kowarantny względem drugego. Potraktujmy F z naszego przykładu motywującego, F (D) = D D, jako defncję funktora w CPO. Zatem z 2.4 wynka, że dla CPO-morfzmu f : A B mamy F (f) = f f : (B A) (A B). Aby F było funktorem, mus zachodzć F (f) : F (A) F (B), czyl F (f) : (A A) (B B). Przyczyną problemu jest kontrawarantność względem perwszego argumentu. W zwązku z tym będzemy szukać kategor z podobnym do bfunktorem, który jednak będze kowarantny względem obu argumentów. 1
3. R-pary Defncja 3.1. Nech f : D E, g : E D będą CPO-morfzmam. Parę f, g : D E nazywamy r-parą. Dla r-par defnujemy operację złożena ( f 1, g 1 f 2, g 2 = f 1 f 2, g 2 g 1 ) oraz odwracana ( f, g op = g, f ). Będę czasem psać p L, p R na oznaczene składowych funkcj r-pary (p = p L, p R ). Wobec tego porządk zupełne z r-param jako morfzmam tworzą kategorę. Kategorę tę będzemy nazywać CPO R. Udowodnmy szereg przydatnych własnośc r-par kategor CPO R. Lemat 3.2. Nech p : B C, q : A B będą CPO R -morfzmam. 1. d A op = d A 2. (p q) op = q op p op 3. (p op ) op = p Dowód. Załóżmy, że p = f, g q = f, g. 1. d A op = d A, d A op = d A, d A = d A 2. (p q) op = ( f, g f, g ) op = f f, g g op = g g, f f = g, f g, f = q op p op 3. (p op ) op = ( f, g op ) op = g, f op = f, g = p Lemat 3.3. CPO R jest dentyczna z dualną kategorą CPO Rop. Dowód. Morfzmow p w CPO R odpowada morfzm p op w CPO Rop. Funktory nad CPO przenoszą sę łatwo na kategorę CPO R, dzałając po współrzędnych. W szczególnośc, dla dowolnego bfunktora : CPO CPO CPO stneje bfunktor R : CPO R CPO R CPO R dzałający na obektach tak samo, jak wyjścowy bfunktor, a na morfzmach zdefnowany następująco: f, g R f, g = f f, g g. Twerdzene 3.4. Zdefnowane powyżej przekształcene R jest bfunktorem oraz zachowuje warantność bfunktora względem obu argumentów. Dowód. Nech, j {0, 1} oznaczają ko- (0) lub kontrawarantność (1) bfunktora względem perwszego drugego argumentu. 1. Przekształcene R zachowuje morfzmy dentycznoścowe.. d A R d B = d A, d A R d B, d B = d A d B, d A d B = d A B, d A B = d A B = d A R B 2. Nech p = f, g : A 0 A 1 r = f, g : B 0 B 1 będą CPO R -morfzmam. Z założena o warantnośc mamy f f : A B j A 1 B 1 j. Zatem równeż g g : A 1 B 1 j A B j. Z defncj R mamy p R r = f f, g g, a zatem p R r : A R B j A 1 R B 1 j. 3. Nech p 0 = f 0, g 0 : B C p 1 = f 1, g 1 : A B r 0 = f 0, g 0 : B C r 1 = f 1, g 1 : A B będą CPO R -morfzmam. Z założena o warantnośc mamy (f 0 f 1 ) (f 0 f 1) = (f f j ) (f 1 f 1 j ) analogczną równość dla g. Wtedy (p 0 p 1 ) R (r 0 r 1 ) = ( f 0, g 0 f 1, g 1 ) R ( f 0, g 0 f 1, g 1 ) = f 0 f 1, g 1 f 0 R f 0 f 1, g 1 g 0 = (f 0 f 1 ) (f 0 f 1), (g 1 g 0 ) (g 1 g 0) = (f f j) (f 1 f 1 j), (g 1 g 1 j) (g g j) = f f j, g g j f 1 f 1 j, g 1 g 1 j = ( f, g R f j, g j ) ( f 1, g 1 R f 1 j, g 1 j ) = (p R r j ) (p 1 R r 1 j ) 2
Powyższy dowód można łatwo uogólnć do przypadku dowolnego n-arnego funktora. Mając te wszystke narzędza, zdefnujmy nowy bfunktor : CPO R CPO R CPO R. Nech na obektach A B = A B, zaś na morfzmach p r = p op R r. Twerdzene 3.5. Przekształcene jest bfunktorem kowarantnym względem obu argumentów. Dowód. Pokażę, że posada żądane własnośc. 1. Przekształcene zachowuje morfzmy dentycznoścowe. d X d Y = d X op R d Y = d X R d Y = d X R Y = d X Y 2. Nech p : A B, r : C D będą CPO R -morfzmam. Mamy p r = p op R r : (A C) (B D). 3. Zostało jeszcze pokazać, że mając dane dwa CPO R -morfzmy p : B C, r : A B, p : B C, r : A B mamy (p r) (p r ) = (p p ) (r r ). (p r) (p r ) = (p r) op R (p r ) = (r op p op ) R (p r ) = (p op R p ) (r op R r ) = (p p ) (r r ) Powyższą konstrukcję można uogólnć do dowolnego n-funktora kontrawarantnego F względem dowolnej lczby argumentów. Odpowadający mu n-funktor kowarantny w CPO R będzemy nazywać F R K. (Zatem = R K ). To rozwązuje nasze wcześnejsze problemy. Potraktujmy F (D) = D D jako defncję funktora w CPO R, podstawając za. Wtedy dla CPO R -morfzmu f : A B mamy F (f) = f f : (A A) (B B), co zgadza sę z defncją funktora. W ogólnośc, mając daną funkcję F zdefnowaną na obektach CPO przy pomocy funktorów nad CPO, można ndukcyjne pokazać, że można przyporządkować jej funktor G : CPO R CPO R, zamenając w defncj F użyce każdego funktora H na H R K. Dzałane funktora G na obektach jest dentyczne, jak funkcj F. 4. Pary projekcyjne Mamy już sposób, w jak z równana rekurencyjnego D = F (D) można uzyskać funktor F nad CPO R. Wcąż jednak ne jest jasne, jak szukać F -algebry początkowej, czyl rozwązana naszego równana na dzedznach. W tym celu odtworzymy znane pojęca porządku zupełnego funkcj cągłej. Defncja 4.1. Parą projekcyjną nazywać będzemy r-parę f, g : A B taką, że g f = d A oraz f g d B. Funkcję f będzemy nazywać włożenem, a funkcję g projekcją. Będzemy psać f, g : A B. Pary projekcyjne mają następującą bardzo stotną własność. Lemat 4.2. Nech f, g : A B będze parą projekcyjną. Wtedy zarówno f, jak g są strct. Jeśl f, g : A B, to f f wtw g g. Dowód. Mamy f( A ) (f g)( B ) B, zatem f jest strct. Podobne g( B ) (g f)( A ) = A, węc g równeż jest strct. Przy założenu, że f f mamy g = g f g g f g g. Podobne, zakładając, że g g, mamy f = f g f f g f f. Z drugej częśc powyższego lematu wynka, że każda projekcja posada unkalne włożene oraz że każde włożene posada unkalną projekcję. O parach projekcyjnych można myśleć, że zadają praporządek zupełny na porządkach zupełnych. Istnene pary projekcyjnej A B w pewnym sense oznacza, że w B można zapsać co najmnej te same wartośc, co w A. Lemat 4.3. Zachodzą następujące fakty: 1. d A : A A 3
2. Nech p : B C q : A B. Wtedy p q : A C. 3. Dla każdego porządku zupełnego A stneje dokładne jedna para projekcyjna! A : 1 A, gdze 1 jest porządkem jednoelementowym. Dowód. 1. Mamy d A = d A, d A, d A d A d A. 2. Mamy p q = p L q L, q R p R. Zatem q R p R p L q L = q R q L = d A oraz p L q L q R p R p L p R d C. 3. Przyjmjmy, że! A = const A, const 1. Mamy const 1 const A = d 1, poneważ d 1 jest jedyną funkcją z 1 w 1. Równeż (const A const 1 )(x A ) = A x A, co daje const A const 1 d A. Jedyność! A wynka z tego, że const A jest jedyną funkcją strct z 1 w A. Pary projekcyjne tworzą węc kategorę Proj, będącą podkategorą CPO R. Defncja 4.4. Funktor n-arny F nad CPO nazywamy lokalne monotoncznym, jeśl 1 n f f mplkuje F (f 1,..., f n ) F (f 1,..., f n) Lemat 4.5. Funktory projekcyjne, stałe oraz funktory +,, są lokalne monotonczne. Dowód. Netrudny mało stotny dla naszych rozważań. Lemat 4.6. Nech F : (CPO) n CPO będze funktorem lokalne monotoncznym. Wtedy F R k : Proj n Proj. Dowód. Dla uproszczena prezentacj przedstawę dowód dla funktora. Dowód ten można łatwo uogólnć. Nech p : A B, r : C D będą param projekcyjnym. Pokażę, że p r = p R r L, p L r R : (A C) (B D) też jest parą projekcyjną. Własność włożeń jest łatwa do pokazana. (p L r R ) (p R r L ) = (p R p L ) (r R r L ) = d A d C = d A C Wykazane własnośc projekcj wymaga zaś skorzystana z lokalnej monotoncznośc. (p R r L ) (p L r R ) = (p L p R ) (r L r R ) d B d D = d B D To wystarcza do pokazana, że nasza przykładowa funkcja na dzedznach F (D) = D D może być traktowana jako endofunktor nad kategorą par projekcyjnych Proj. Kontynuując analogę mędzy param projekcyjnym porządkam zupełnym, własność dzałana funktora na morfzmach można nterpretować jako własność monotoncznośc. 5. Kostożk, kogrance Odpowednkem pojęca ogranczena górnego jest pojęce kostożka. Defncja 5.1. Nech C będze kategorą, nech A będze pewnym zborem C-obektów, a F pewnym zborem C-morfzmów pomędzy obektam z A. Kostożkem będzemy nazywać C-obekt X oraz strzałk g A : A X (po jednej dla każdego obektu A z A) take, że dla każdej strzałk f : A B z F zachodz g A = g B f. Najmnejszemu ogranczenu górnemu odpowada zaś pojęce kograncy. Defncja 5.2. Nech A, F będą jak w defncj wyżej. Kostożek X, {g A } nazywamy kograncą, jeśl dla każdego nnego kostożka Y, {h A } stneje unkalny C-morfzm k : X Y tak, że dla każdego A z A zachodz k g A = h A. Zdefnujemy teraz odpowednk pojęca ω-łańcucha w teor kategor. Defncja 5.3. Nech C będze kategorą. Wtedy ω-łańcuchem będzemy nazywać cąg C-obektów A oraz C-morfzmów f : A A +1 ( N). 4
Ponżej będzemy sę zajmować kostożkam kograncam wyłączne w kategor par projekcyjnych Proj. Na początek wskażę prosty warunek koneczny wystarczający, aby dany kostożek był kograncą. Lemat 5.4. Nech {A }, {p } będze ω-łańcuchem. Nech X, {r } będze kostożkem takm, że rl rr = d X. Wtedy ów kostożek jest kograncą. Dowód. Nech Y, {s } będze dowolnym kostożkem. Zdefnujmy k = sl rr, rl s R : X Y. Pokażę, że k jest parą retrakcyjną. ( s R ) ( s L r R ) = s R s L r R = r R = d X ( s L r R ) ( s R ) = s L r R s R = s L s R d Y Pokazę teraz, że k spełna warunek k r = s. k r = s L s R, r R = s L j r R j, r R r L j s R j = s L j rj R rj L p L j 1... p L, p R... p R j 1 rj R rj L s R j = s L j p L j 1... p L, p R... p R j 1 s R j = s L, s R = s L, s R = s Zostało pokazać, że k jest unkalne. Nech l : X Y spełna warunek l r = s. l = l d X = l L, l R r R = l L r R l R = s L s R = k Zgodne z naszą analogą w tej kategor kogrance ω-łańcuchów zawsze stneją. Lemat 5.5. Nech {A }, {p } będze ω-łańcuchem. Wtedy stneje kostożek X, {r } spełnający warunek z poprzednego lematu. Dowód. Nech X = {x A : x = p R (x +1)} z porządkem po współrzędnych, (x) = x, (x) j = p L j 1 (rl (x) j 1) dla j >, r R (x) = x. Pokażę, że powyższe jest stożkem. Morfzmy r są oczywśce param projekcyjnym. Ponadto dla dowolnego mamy (p R rr +1 )(x) = pr (x +1) = x = r R (x), z lematu 4.2 można pokazać rl +1 pl =. Z jednej strony mamy r R d D, z drugej r L j (rr j (x)) j = r L j (x j) j = x j, z czego wynka, że rl r R = d X. Lemat 5.6. Nech {A }, {p } będze ω-łańcuchem, nech Y, {s } będze kograncą. Wtedy sl sr = d Y. Dowód. Z lematu powyżej stneje kogranca X, {r }, stneje węc też zomorfzm Φ : X Y. Tym samym mamy sl sr = ΦL r R Φ R = Φ L ( rl r R ) ΦR = Φ L Φ R = d Y. Tym samym pokazalśmy, że na kategorę Proj można patrzeć jak na praporządek zupełny. Kategora, w której zamast porządków zupełnych obektam byłyby klasy abstrakcj porządków zupełnych względem zomorfzmu, spełnałaby wszystke warunk byca porządkem zupełnym, byłaby węc w pewnym sense porządkem zupełnym porządków zupełnych. 6. Cągłość Funktorem cągłym będzemy nazywać funktor zachowujący kogrance ω-łańcuchów. 5
Defncja 6.1. Nech F : A 1... A n B będze funktorem. Funktor F nazywamy cągłym, jeśl dla dowolnych kogranc X, {g A } ( {1,..., n}) F (X 1,..., X n ), {F (g 1A1,..., g nan )} równeż jest kograncą. Defncja 6.2. Funktor n-arny F nad CPO nazywamy lokalne cągłym, jeśl dla dowolnych cągów rosnących funkcj cągłych fl (1 n) cąg F (fl 1,..., f l n ) jest cągem rosnącym funkcj cągłych, którego kresem górnym jest F ( l f l 1,..., l f l n). Fakt 6.3. Funktory projekcyjne, stałe oraz funktory +,, są lokalne cągłe. Lemat 6.4. Nech F będze lokalne cągłym n-funktorem. Wtedy funktor F R K jest cągły. Dowód. Dowód przeprowadzę na przykładze funktora. Nech X, {r } oraz Y, {s } będą kograncam pewnego ω-łańcucha. (r s ) L (r s ) R = = (r op R s ) L (r op R s ) R = ( r R ) (s L s R ) = ( (r R s L ) ( s R ) r R ) ( s L s R ) = d X d Y = d X Y Z lematu 5.4 kostożek X Y, {r s } jest kograncą. Fakt 6.5. Złożene funktorów cągłych jest cągłe. Z powyższych faktów wynka mędzy nnym, że nasza przykładowa funkcja na dzedznach F (D) = D D traktowana jako funktor nad Proj jest cągła. 7. Istnene F -algebry początkowej Można teraz już sformułować twerdzene będące odpowednkem twerdzena o punkce stałym. Twerdzene 7.1. Nech F : Proj Proj będze funktorem cągłym. Wtedy stneje F -algebra F x F, η F, gdze f : F (F x F ) F x F jest zomorfzmem. Dowód. Nech A 0 = 1, A +1 = F (A ), p 0 =,! F (1), p +1 = F (p ), {A }, {p } jest ω-łańcuchem. Z lematu 5.5 stneje jego kogranca F x F, {ρ }. Poneważ F cągły, F (F x F ), {F (ρ )} jest kograncą ω-łańcucha {A +1 }, {p +1 }. Tym samym jest też kograncą {A }, {p }. W zwązku z tym stneje zomorfzm η F : F (F x F ) F x F. Twerdzene 7.2. F -algebra z twerdzena 7.1 jest początkowa. Dowód. Nech X, α będze F -algebrą. Wskażę homomorfzm h : F x F X. Nech ρ : A X będą zdefnowane następująco: ρ 0 =, ρ +1 = α F (ρ ). Dla każdego zachodz ρ = ρ +1 p, dowód przez ndukcję: ρ 1 p 0 = ρ 1 = = ρ 0, ρ +2 p +1 = α F (ρ +1 ) F (p ) = α F (ρ +1 p ) = α F (ρ ) = ρ +1. W zwązku z tym X, {ρ } jest kostożkem, a zatem stneje dokładne jedno h : F x F X take, że dla każdego zachodz ρ = h ρ. Pokażę, że h jest homomorfzmem, to znaczy, że h η F = α F (h). W tym celu pokażę, że h η F α F (h) oba są medatoram pomędzy kograncą F (F x F ), {F (ρ )} kostożkem X, {ρ +1 }. Aby pokazać, że h η F jest medatorem dla F (F x F ) X, wystarczy skorzystać z faktu, że η F jest medatorem dla F (F x F ) F x F, a h medatorem dla F x F X. Pokazane, że α F (h) równeż ne jest kłopotlwe. Poneważ h ρ 0 = h ρ +1 = h η F F (ρ ) = α F (h) F (ρ ) = α F (h ρ ), h ρ jest jednoznaczne określone. Poneważ h L = h L d F xf = h L ρl ρr = (hl ρ L ) ρr, równeż samo h jest jednoznaczne określone. 6
8. Podsumowane Przy tworzenu tego opracowana operałem sę na rozdzałach 4 5 ksążk [1] Plotkna na temat dzedzn, rozdzale 3.4 ksążk [2] Perce a na temat teor kategor, rozdzale 11 ksążk [4] Schmdta na temat semantyk denotacyjnej oraz pracy [3] Wagnera o rozwązywanu równań rekurencyjnych na dzedznach. Powstawało ono w marę, jak czytałem dowody przedstawonego twerdzena, jako pomoc w ch zrozumenu. W zwązku z tym newykluczone są pewne neścsłośc błędy. Lteratura [1] Gordon Plotkn, Domans. Unversty of Ednburgh, 1983. [2] Benjamn C. Perce, Basc Category Theory for Computer Scentsts. The MIT Press, Cambrdge, Massachusetts, 1991. [3] Km R. Wagner, Solvng Recursve Doman Equatons wth Enrched Categores. Carnege Mellon Unversty, Pttsburgh, 1994. [4] Davd A. Schmdt, Denotatonal Semantcs. A methodology for language development. Kansas State Unversty, Manhattan, 1997. 7