Rhunek lmd, zim 205-6 Wstęp Wykłd 5 pździernik 205 Ziory i funkje Ekstensjonlność (?) Sposó użyi: A (nleżenie) F () (plikj) Tworzenie: { W ()} (wyinnie) λ W () (strkj) Ewluj: { W ()} W () (λ W ())() = W () Dl ziorów (niewątpliw): A = B wtedy i tylko wtedy, gdy ( A B) A = { A} Dl funkji (wątpliw): F = G wtedy i tylko wtedy, gdy (F () = G()) Gdy nie m w F F = λ F ( ) Ekstensjonlność (?) Rhunek lmd Sttyzne i dynmizne rozumienie funkji: Jko przyporządkownie, wykres, relję, ziór pr 2 Jko regułę, przeksztłenie, lgorytm, metodę Teori ziorów nie ndje się do opisu spektu Astrkyjn teori funkji Alterntyw dl teorii ziorów w podstwh mtemtyki 2 Aprt użytezny w teorii olizeń (teorii olizlnośi) Model progrmowni funkyjnego Język dl semntyki progrmów Model progrmowni z typmi, model polimorfizmu Język dowodów konstruktywnyh i teorii typów Język nrzędzi wspomgjąyh dowodzenie (Coq, ) 2 To się nie do koń udło, le może nie wszystko strone? Beztypowy rhunek lmd Histori Funkj rozumin jko dziłnie Kżdemu oiektowi możn przypisć dziłnie, wię nie m innyh oiektów niż funkje Przedmiotem dziłni może yć okolwiek, ztem funkj nie m priori ogrnizonej dziedziny Funkj może yć np plikown sm do sieie Anlogi: Kżdy iąg itów możn zinterpretowć jko progrm; jko dne Logik komintoryzn: Astrkyjn teori funkji z plikją jko jedyną operją Eliminj pojęi zmiennej Moses Shönfinkel, 924; Hskell B Curry, 930 Rhunek lmd: Alonzo Churh, 930; SC Kleene, B Rosser, 935: sprzezność logizn; Pojęie funkji olizlnej, tez Churh, 936; John MCrthy, 958: Lisp; Dn Sott, Ch Strhey, 969: semntyk denotyjn
Histori Typy: Curry, Churh, od pozątku; NG de Bruijn, od 967: system Automth; Willim Howrd, 968: izomorfizm Curry ego-howrd; J Roger Hindley, 969: lgorytm Hindley-Milner; Roin Milner, 970: ML (polimorfizm); Jen-Yves Girrd, 970: system F; John Reynolds, 974: polimorfizny rhunek lmd; Około 984: Coq (pozątki); Około 987: Hskell O zym m yć ten wykłd Rhunek lmd jko system redukyjny: Włsność Churh-Rosser, stndryzj Rhunek lmd jko teori równośiow: Drzew Böhm, modele Sott Sił wyrzu: Punkty stłe, reprezentownie funkji olizlnyh Rhunek komintorów: Jk soie pordzić ez lmdy? Rhunki z typmi: (typy proste, ilozynowe, polimorfizne, rekurenyjne) Twierdzeni o normlizji; Formuły-typy (izomorfizm Curry ego-howrd); Prolemy deyzyjne Skłdni: lmd-wyrżeni Beztypowy rhunek lmd Lmd-wyrżeni: Zmienne, y, z, Aplikje (MN); Astrkje (λ M) Konwenje: Opuszzmy zewnętrzne nwisy; Aplikj wiąże w lewo: MNP oznz (MN)P Skrót z kropką: λ n M oznz λ ( (λ n M) ) Przykłdy I = λ K = λy S = λyzz(yz) 2 = λf f (f) ω = λ Ω = ωω Y = λf ((λf ())(λf ()) Zmienne wolne (glolne) FV() = {}; FV(MN) = FV(M) FV(N); FV(λ M) = FV(M) {} N przykłd: FV(λ ) = ; FV(λ y) = {y}; FV((λ y)(λy y)) = {, y} Alf-konwersj Termy jko grfy: Wyrżeni λ y i λz zy oznzją tę smą operję ( zplikuj dny rgument do y ) Nleży je uwżć z identyzne Alf-konwersj: Wyrżeni różniąe się tylko wyorem zmiennyh związnyh utożmimy Lmd-termy to klsy strkji tego utożsmieni Łtwiej powiedzieć, niż zroić Jeden wierzhołek pozątkowy; G y Zmienne wolne jko wierzhołki końowe (liśie)
Termy jko grfy: zmienn Termy jko grfy: plikj Termy jko grfy: strkj Termy jko grfy: strkj Zmienne związne s niepotrzene Przykłd Podstwienie G[ := T ] Podstwienie termu T do termu G w miejse wolnyh wystąpień zmiennej λ λ λ y T G T To jest grf termu λ(λy y)((λz zy)) Podstwienie Lemt o podstwieniu [ := N] = N; y[ := N] = y, gdy y jest zmienną różną od ; (PQ)[ := N] = P[ := N]Q[ := N]; (λy P)[ := N] = λyp[ := N], gdy y orz y FV(N) Lemt Jeśli y orz lo FV(R) lo y FV(M), to M[ := N][y := R] = M[y := R][ := N[y := R]] Wykonnie podstwieni n konkretnej reprezentji termu może wymgć wyminy zmiennyh: (λy P)[ := N] = λz P[y := z][ := N], gdzie z jest nowe
Lemt o podstwieniu M[ := N][y := R] = M[y := R][ := N[y := R]] gdy FV(R) lu y FV(M) N y M y N y Bet-redukj Njmniejsz relj β, spełniją wrunki: (λp)q β P[ := Q]; jeśli M β M, to: MN β M N, NM β NM orz λm β λm Term posti (λp)q to β-redeks Relj β to zredukownie jednego dowolnego redeksu Relje pohodne: Przykłd: SKK = β I Dowoln liz kroków: β lu β ; Niezerow liz kroków: + β ; Co njwyżej jeden krok: = β ; Równowżność (et-konwersj): = β SKK = (λyzz(yz))(λy)(λy) β (λyz(λy)z(yz))(λy) β λz(λy)z((λy)z) β λz(λyz)((λy)z) β λz(λyz)(λyz) β λzz = I Wołnie przez nzwę Bet-redeks w grfie (λ P)Q β P[ := Q] Ewluj proedury o prmetrze formlnym i treśi P, gdy prmetrem ktulnym jest Q: Nleży wstwić prmetr ktulny do treśi proedury, wymieniją, jeśli trze, loklne identyfiktory n nowe () λ (3) Bet-redukj w grfie Bet-redukj nieo wyidelizown () = () () = () λ (3) (3) (3) (3) λ (4) (3) (4)
Kompozyjonlność Lemt () Jeśli M β M, to M[ := N] β M [ := N]; Jeśli N β N, to M[ := N] β M[ := N ], Dowód: Indukj ze względu n długość M Wniosek Jeśli M β M i N β N, to M[ := N] β M [ := N ] Przykłdy Normlizj Postć normln to term ez redeksów Nie d się go redukowć Term M m postć normlną (jest normlizowlny), gdy redukuje się do pewnej posti normlnej Nzywmy ją postią normln termu M Term M jest silnie normlizowlny (M SN), gdy nie istnieje nieskońzony iąg M = M 0 β M β M 2 β Inzej: kżdy iąg redukji prowdzi do posti normlnej Rhunek lmd jko teori równośiow Term S = λyzz(yz) jest w posti normlnej Term SKK jest silnie normlizowlny i m postć normlną I Term Ω = (λ )(λ ) nie m posti normlnej Term (λ y)ω m postć normlną y, le nie jest silnie normlizowlny Termy M i N są et-równe (M = β N) wtedy i tylko wtedy, gdy równość możn udowodnić w systemie: (β) (λ M)N = M[ := N] MP = NP N = M PM = PN (ξ) =, N = P M = P λ M = λ N Włsnośi redukji Astrkyjne systemy redukyjne Astrkyjny system redukyjny: pr A,, gdzie jest relją inrną w A Oznzeni: + domknięie przehodnie; domknięie przehodnio-zwrotne; = domknięie zwrotne Postć normln: tkie A, że Inne definije stosują się odpowiednio Siln normlizj (SN) Włsność Churh-Rosser (CR) Kżdy iąg redukji 0 2 jest skońzony (Wtedy relj jest dorym ufundowniem) Fkt: Bet-redukj nie m włsnośi silnej normlizji: Ω β Ω β Ω β Jeśli i, to istnieje tkie d, że d i d d
Włsność romu Włsność romu implikuje CR Jeśli i, to istnieje tkie d, że d i d 2 d 3 4 Włsność romu? Fkt: Bet-redukj nie m włsnośi romu Sł włsność Churh-Rosser (WCR) Jeśli i, to istnieje tkie d, że d i d (λ)((λ)y) ((λ)y)((λ)y) (λ)y?? d Fkt: Bet-redukj m słą włsność Churh-Rosser WCR nie implikuje CR Pożytezn dygresj Lemt Newmn: WCR SN = CR Przykłd: Dowód: d Twierdzenie Churh-Rosser: Bet m włsność CR Definij: Term M to pełne rozwinięie termu M = ; (λ M) = λ M ; (MN) = M N, gdy M nie jest strkją; ((λ M)N) = M [ := N ] Sens: jednozesn redukj wszystkih istniejąyh redeksów Relj pomoniz, gdy jest zmienną; jeśli M M, to λm λm ; jeśli M M i N N, to: MN M N, orz (λm)n M [ := N ] Sens: jednozesn redukj kilku redeksów już oenyh w termie
Włsnośi relji Relj m włsność romu () Jeśli M M, to FV(M ) FV(M) Dl dowolnego M zhodzi M M orz M M (3) Jeśli M M i N N, to M[ := N] (4) Jeśli M M, to M M M [ := N ] M M M M Dowód twierdzeni Churh-Rosser ) Poniewż relj m włsność romu, wię tym rdziej jej domknięie przehodnio-zwrotne m włsność romu M M 2 M 3 M 4 2) Poniewż β β, wię i β są równe 3) Włsność romu dl to włsność CR dl