Logiczne podstawy informatyki 1. Wojciech Buszkowski. Zakład Teorii Obliczeń Wydział Matematyki i Informatyki UAM
|
|
- Agnieszka Michałowska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Logiczne podstawy informatyki 1 RACHUNEK λ Wojciech Buszkowski Zakład Teorii Obliczeń Wydział Matematyki i Informatyki UAM
2 Logiczne podstawy informatyki 2 1. Czysty rachunek λ Symbole - zmienne: x, y, z, x, y 1,... i inne małe litery, - operator λ (lambda-abstraktor), - nawiasy (,) i kropka. Przyjmujemy, że dany jest nieskończony, przeliczalny zbiór zmiennych V. Definicja 1. (lambda-termy, krótko: termy) Termy proste to zmienne. Termy złożone są postaci (MN) (aplikacja M do N) i (λx.m) (lambda-abstrakcja termu M), gdzie M, N są termami. Litery M, N, P, Q,..., X, Y, Z i inne duże litery to metazmienne dla termów. Λ oznacza zbiór wszystkich lambda-termów.
3 Logiczne podstawy informatyki 3 Przykłady lambda-termów. x, (xy), ((xy)z), (λx.(xy)), ((λx.(xy))z). Czwarty term jest lambda-abstrakcją termu (xy), a piąty aplikacją czwartego do z. Interpretacja termów. Termy interpretujemy intuicyjnie jako funkcje dane w postaci procedur obliczania, a nie - jak w teorii mnogości - w postaci relacji argument-wartość (wejście-wyjście). Możliwa jest sytuacja, że różne procedury (termy) mają tę samą relację argument-wartość. Oznaczenia. Pomijamy zewnętrzne nawiasy, np. piszemy xy zamiast (xy). W napisach postaci M 1 M 2... M n grupujemy nawiasy do lewej strony, np. xyzu to term ((xy)z)u. W napisach postaci λx 1.λx λx k.m grupujemy nawiasy do prawej strony, np. λx.λy.λz.m to term λx.(λy.(λz.m)).
4 Logiczne podstawy informatyki 4 Piszemy λx 1 x 2... x k.m zamiast λx 1.λx 2... λx k.m. Ten term interpetujemy jako funkcję k argumentową, która dowolnym wartościom zmiennych x 1,..., x k przyporządkowuje wartość termu M dla tych wartości zmiennych. Niech f oznacza funkcję zależną od dwóch argumentów x, y. W matematyce wartość tej funkcji zapisujemy f (x, y), a w rachunku λ jako f xy. To znaczy, że f interpretujemy jako jednoargumentową funkcję, która dowolnemu argumentowi x przyporządkowuje jednoargumentową funkcję f x, taką że f x (y) = f (x, y). Takie reprezentowanie funkcji wieloargumentowych przez jednoargumentowe nazywa się po angielsku currying od nazwiska: Haskell B. Curry.
5 Logiczne podstawy informatyki 5 Definicja 2. (V(M) - zbiór zmiennych wolnych w termie M) V(x) = {x} V(MN) = V(M) V(N) V(λx.M) = V(M) {x} Definicja 3. (M[x/N] - wynik podstawienia termu N za zmienną x w termie M) x[x/n] N y[x/n] y dla zmiennych y różnych od x (M 1 M 2 )[x/n] M 1 [x/n]m 2 [x/n] (λx.m)[x/n] λx.m (λy.m)[x/n] λy.m[x/n], jeżeli y x, y V(N) (λy.m)[x/n] λz.m[y/z][x/n], jeżeli y x, y V(N), z jest dowolną zmienną nie występującą po lewej stronie równości.
6 Logiczne podstawy informatyki 6 Przykłady. V(xy) = {x, y}, V(λx.xy) = {y}. (λx.xy)[y/x] = λz.zx Definicja 4. (M[x 1 /N 1,..., x k /N k ] - wynik równoczesnego podstawienia N i za x i dla i = 1,..., k w termie M) M[x 1 /N 1,..., x k /N k ] M[x 1 /z 1 ]... [x k /z k ][z 1 /N 1 ]... [z k /N k ], gdzie z 1,..., z k są różnymi zmiennymi nie występującymi po lewej stronie równości. Przykład. (xy)[x/y, y/λz.z] (z 1 z 2 )[z 1 /y][z 2 /λz.z] (yz 2 )[z 2 /λz.z] y(λz.z) Definicja 5. Określamy relację: M α N, jeżeli N powstaje z M przez pewną liczbę zastąpień podtermów postaci λx.p przez λy.p[x/y], gdzie y jest zmienną nie występującą w λx.p. Jeżeli M α N, to mówimy, że N jest α wariantem termu M.
7 Logiczne podstawy informatyki 7 Fakt 1. Relacja α jest relacją równoważności na zbiorze Λ, tzn. jest zwrotna (M α M), symetryczna (jeżeli M α N, to N α M) i przechodnia (jeżeli M α N i N α P, to M α P). DOWÓD. Zwrotność i przechodniość są oczywiste. Symetria nie jest oczywista, ponieważ po zamianie λx.p na λy.p[x/y], gdzie y nie występuje w λx.p, niekoniecznie możemy zamienić z powrotem λy.p[x/y] na λx.p, ponieważ x może występować w λy.p[x/y] jako zmienna związana. Można jednak zamienić wszystkie związane wystąpienia x w λy.p[x/y] na nową zmienną tworząc term λy.p [x/y], następnie zastąpić λy.p [x/y] przez λx.p [x/y][y/x], czyli λx.p, a na koniec zamienić tę nową zmienną na x krok po kroku (od termów większych do mniejszych). Q.E.D. Przykład. λx.x(λx.x(λx.x)) α λy.y(λx.x(λx.x)). λy.y(λx.x(λx.x)), λy.y(λz.z(λx.x)), λy.y(λz.z(λz.z)), λx.x(λz.z(λz.z)), λx.x(λx.x(λz.z)), λx.x(λx.x(λx.x))
8 Logiczne podstawy informatyki 8 W rachunku λ dowodzimy równości M = N, interpretowane jako równość wartości termów M i N. Aksjomaty. (α) M = N, jeżeli M α N (α konwersja) (β) (λx.m)n = M[x/N] (β konwersja) (η) λx.mx = M, jeżeli x V(M) (η konwersja) Reguły. (Id) M = M (tutaj niepotrzebne, bo mamy (α)) (sym) M = N N = M (tran) M = N, N = P M = P (l-con) M = N PM = PN (r-con) M = N MP = NP (ξ) M = N λx.m = λx.n
9 Logiczne podstawy informatyki 9 W rachunku λ przyjmujemy tylko aksjomaty (α), (β). Dodając aksjomat (η), otrzymujemy rachunek λη. Piszemy λ M = N, jeżeli M = N jest twierdzeniem rachunku λ. Podobnie dla λη. W rachunku λη wyprowadzalna jest reguła ekstensjonalności: (EXT) Mx = Nx M = N, dla x V(MN) 1. Mx = Nx, 2. λx.mx = λx.nx na mocy (ξ), 3. M = λx.mx na mocy (η) i (sym), 4. λx.nx = N na mocy (η), 5. M = N na mocy (tran) (kilkakrotnie). Odwrotnie, w rachunku λ wzbogaconym o regułę (EXT) można udowodnić (η). 1. (λx.mx)x = Mx na mocy (β), 2. λx.mx = M na mocy (EXT).
10 Logiczne podstawy informatyki 10 Twierdzenie 1. (o punkcie stałym) Dla dowolnego termu F istnieje term X taki, że λ FX = X. DOWÓD. Oznaczmy W λx.f(xx), X WW. X = WW = (λx.f(xx))w = F(WW) = FX. Q.E.D. Definicja 6. Termy bez zmiennych wolnych nazywamy kombinatorami. Λ 0 oznacza zbiór wszystkich kombinatorów. UWAGA. W tw. 1, jeżeli F jest kombinatorem, to X jest kombinatorem. Twierdzenie 1. Istnieje kombinator punktu stałego, tzn. taki kombinator Y, że dla każdego termu F mamy λ F(YF) = YF. DOWÓD. Y λ f.(λx. f (xx))(λx. f (xx)). Przy oznaczeniach z poprzedniego dowodu mamy: YF = X = FX = F(YF). Q.E.D.
11 Logiczne podstawy informatyki 11 M[x 1,..., x n ] oznacza term M taki, że V(M) {x 1,..., x n } (te zmienne są wszystkie różne). Wtedy M[N 1,..., N n ] oznacza term M[x 1 /N 1,..., x n /N n ]. Fakt 2. Niech x 1,..., x n będą różnymi zmiennymi. Dla dowolnych termów M, N 1,..., N n mamy λ (λx 1... x n.m)n 1... N n = M[x 1 /N 1,..., x n /N n ]. Twierdzenie 2. (o definicjach rekurencyjnych) Dla dowolnego termu M[ f, x 1,..., x n ] istnieje kombinator F taki, że λ Fx 1... x n = M[F, x 1,..., x n ]. DOWÓD. Określamy F Y(λ f x 1... x n.m[ f, x 1,..., x n ]). Mamy: F = (λ f x 1... x n.m[ f, x 1,..., x n ])F (tw. 1 ) = λx 1... x n.m[f, x 1,..., x n ] (aks. (β)). Stąd Fx 1... x n = M[F, x 1,..., x n ]. Q.E.D.
12 Logiczne podstawy informatyki 12 Przykłady użytecznych kombinatorów. I λx.x (kombinator identyczności) λ IX = X K λxy.x (kombinator funkcji stałej) λ KXY = X K λxy.y. λ K XY = Y S λxyz.xz(yz). λ SXYZ = XZ(YZ) B λxyz.x(yz) (kombinator złożenia) λ BFGX = F(GX) C λxyz.xzy (komutator) λ CXYZ = XZY Przykład. Wykażemy λ SKK = I. SKK = (λxyz.xz(yz))kk = λz.kz(kz) = λz.z = I Wykażemy λ B = S(KS)K. S(KS)K = (λxyz.xz(yz))(ks)k = λz.ksz(kz) = λz.s(kz) = λz.(λxyz.xz(yz))(kz) = λzyu.kzu(yu) = λzyu.z(yu) = B
13 Logiczne podstawy informatyki Logika kombinatorowa ang. Combinatory Logic (CL) Symbolami CL są zmienne x, y, z,... i stałe S, K. Złożone termy kombinatorowe (CL-termy) tworzymy tylko przez aplikację (MN). V(M) oznacza zbiór zmiennych występujących w termie M. Termy nie zawierające zmiennych nazywamy kombinatorami. Aksjomaty CL. (S) SXYZ = XZ(YZ) dla wszystkich termów X, Y, Z (K) KXY = X dla wszystkich termów X, Y Reguły są te same, co w rachunku λ bez (ξ), lecz z (Id). Definiujemy I SKK. Wykażemy CL IX = X IX = SKKX = KX(KX) = X
14 Logiczne podstawy informatyki 14 Definiujemy B S(KS)K. Wykażemy CL BXYZ = X(YZ). BXYZ = S(KS)KXYZ = KSX(KX)YZ = S(KX)YZ = KXZ(YZ) = X(YZ) Można zdefiniować przekształcenie λ, które dla każdego termu kombinatorowego M i dowolnej zmiennej x tworzy term kombinatorowy λ x.m taki, że CL (λ x.m)n = M[x/N] dla wszelkich termów N. Podamy jedną z możliwych definicji. λ x.x I λ x.m KM, jeżeli x V(M) λ x.m 1 M 2 S(λ x.m 1 )(λ x.m 2 ), jeżeli x V(M 1 M 2 ) Przykład. λ x.λ y.y = λ x.i = KI W ten sposób każdy lambda-term można przetłumaczyć na term kombinatorowy. CL ma własności podobne do rachunku λ.
15 Logiczne podstawy informatyki Definiowalność funkcji rekurencyjnych Liczebniki Churcha Pomocnicza notacja: M n (N) M(M(... (MN)...)), gdzie M jest iterowane n razy. Podamy definicję rekurencyjną. M 0 (N) N, M n+1 (N) M(M n (N)) Fakt 3. M m (M n (N)) M m+n (N) dla wszelkich m, n N. DOWÓD. Indukcja względem m. Dla m = 0 mamy: M 0 (M n (N)) M n (N) M 0+n (N). Zakładamy, że równość jest prawdziwa dla m i wykazujemy ją dla m + 1. M m+1 (M n (N)) M(M m (M n (N))) ZI M(M m+n (N)) M m+n+1 (N) M m+1+n (N). Q.E.D. Liczbę naturalną n reprezentujemy jako kombinator c n λ f x. f n (x). c 0 λ f x.x, c 1 λ f x. f x, c 2 λ f x. f ( f x), c 3 λ f x. f ( f ( f x)) itd.
16 Logiczne podstawy informatyki 16 Definicje podstawowych działań arytmetycznych są łatwe. Definiujemy Suc λn f x. f (n f x). Wykażemy λ Suc c n = c n+1 dla wszelkich n N. Suc c n = λ f x. f (c n f x) = λ f x. f ( f n (x)) = λ f x. f n+1 (x) = c n+1. Definiujemy Add λmn f x.m f (n f x). Wykażemy λ Add c m c n = c m+n dla wszelkich m, n N. Add c m c n = λ f x.c m f (c n f x) = λ f x.c m f ( f n (x)) = λ f x. f m ( f n (x)) = λ f x. f m+n (x) = c m+n Definiujemy Mult λmn f.m(n f ). Wykażemy λ Mult c m c n = c m n dla wszelkich m, n N. Przez indukcję względem m łatwo wykazać (λx. f n (x)) m (x) = f m n (x). Mult c m c n = λ f.c m (c n f ) = λ f.c m (λx. f n (x)) = λ f x.(λx. f n (x)) m (x) = λ f x. f m n (x) = c m n
17 Logiczne podstawy informatyki 17 Liczebniki Barendregta Definiujemy wartości logiczne: true = K, false = K. Para uporządkowana: [M, N] λz.zmn, gdzie z V(MN). Mamy: λ [M, N]true = M, λ [M, N]false = N. Określamy liczebniki n dla n N. 0 I, n + 1 [false, n] Definicja 7. Funkcję f : N n N nazywamy definiowalną w rachunku λ, jeżeli istnieje kombinator F taki, że dla wszelkich k 1,..., k n N mamy λ F k 1... k n = f (k 1,..., k n ). Wtedy mówimy, że kombinator F definiuje funkcję f w rachunku λ. Twierdzenie 3. Wszystkie całkowite funkcje rekurencyjne są definiowalne w rachunku λ. UWAGA. To twierdzenie można rozszerzyć na częściowe funkcje rekurencyjne.
18 Logiczne podstawy informatyki 18 Operacja minimum efektywnego. Niech f : N n+1 N spełnia warunek efektywności: (WE) dla wszelkich k 1,..., k n N istnieje k N takie, że f (k 1,..., k n, k) = 0. Określamy funkcję h : N n N wzorem: h(x 1,..., x n ) = µy( f (x 1,..., x n, y) = 0). Mówimy, że h powstaje z f przez operację minimum efektywnego. Skorzystamy z następującego twierdzenia teorii funkcji rekurencyjnych. Twierdzenie. Rodzina całkowitych funkcji rekurencyjnych jest najmniejszą rodziną funkcji numerycznych, do której należą wszystkie podstawowe funkcje rekurencyjne i która jest zamknięta ze względu na podstawianie, rekursję prostą i operację minimum efektywnego.
19 Logiczne podstawy informatyki 19 DOWÓD twierdzenia 3. Wykażemy, że podstawowe funkcje rekurencyjne są definiowalne w rachunku λ. Funkcja Z(x) = 0 jest definiowana przez kombinator λx. 0. Oczywiście λ (λx. 0) n = 0. Funkcja σ(x) = x + 1 jest definiowana przez kombinator Suc λx.[false,x]. W rachunku λ obliczamy: (λx.[false,x]) n = [false, n] = n + 1. Funkcja I n i (x 1,..., x n ) = x i jest definiowana przez kombinator λx 1... x n.x i. λ (λx 1... x n.x i ) k 1... k n = k i Wykażemy, że funkcje definiowalne w rachunku λ są zamknięte ze względu na podstawianie. h(x 1,..., x n ) = f (g 1 (x 1,..., x n ),..., g k (x 1,..., x n ))
20 Logiczne podstawy informatyki 20 Zakładamy, że funkcje f, g 1,..., g k są definiowane przez kombinatory F, G 1,..., G k. Wtedy kombinator H określony tak: H λx 1... x n.f(g 1 x 1... x n )... (G k x 1... x n ) definiuje funkcję h. H k 1... k n = F(G 1 k 1... k n )... (G k k 1... k n ) = Fg 1 (k 1,..., k n )... g k (k 1,..., k n ) = f (g 1 (k 1,..., k n ),..., g k (k 1,..., k n )) = h(k 1,..., k n ) Określamy pomocnicze kombinatory. Zero λx.x true. Wtedy: λ Zero 0 = true, λ Zero n + 1 = false. P λx.x false. Wtedy: λ P n + 1 = n. if B then M else N BMN. Mamy: true MN = KMN = M, false MN = K MN = N.
21 Logiczne podstawy informatyki 21 Wykażemy, że funkcje definiowalne w rachunku λ są zamknięte ze względu na rekursję prostą. h(0, x 1,..., x n ) = f (x 1,..., x n ) h(y + 1, x 1,..., x n ) = g(h(y, x 1... x n ), y, x 1,..., x n ) Zakładamy, że kombinatory F, G definiują funkcje f, g. Określamy term: C[h, y, x 1,..., x n ] if (Zero y) then (Fx 1... x n ) else (G(h (P y)x 1... x n )(P y)x 1... x n ) Na mocy Tw. 2 istnieje kombinator H taki, że λ Hyx 1... x n = C[H, y, x 1,..., x n ]. Wykażemy, że kombinator H definiuje funkcję h. Mamy: H k k 1... k n = (λyx 1... x n.hyx 1... x n ) k k 1... k n = (λyx 1... x n.c[h, y, x 1,..., x n ]) k k 1... k n = C[H, k, k 1,..., k n ]
22 Logiczne podstawy informatyki 22 Wykazujemy λ H k k 1... k n = h(k, k 1,..., k n ) przez indukcję względem k. k = 0. H 0 k 1... k n = C[H, 0, k 1,..., k n ] = F k 1... k n = f (k 1,..., k n ) = h(0, k 1,..., k n ) Zakładamy tezę dla k i dowodzimy dla k + 1. Hk + 1 k 1... k n = C[H, k + 1, k 1,..., k n ] = G(H(P k + 1) k 1... k n )(P k + 1) k 1... k n = G(H k k 1... k n ) k k 1... k n = ZI Gh(k, k 1,..., k n ) k k 1... k n = g(h(k, k 1,..., k n ), k, k 1,..., k n ) = h(k + 1, k 1,..., k n ) Wykażemy, że funkcje definiowalne w rachunku λ są zamknięte ze względu na operację minimum efektywnego. h(x 1,..., x n ) = µy( f (x 1,..., x n, y) = 0) (zakładamy (WE))
23 Logiczne podstawy informatyki 23 Zakładamy, że kombinator F definiuje funkcję f. Określamy term: C[h, x 1,..., x n, y] if (Zero(Fx 1... x n y)) then y else (h x 1... x n (Suc y)) Na mocy Tw. 2 istnieje kombinator H taki, że λ H x 1... x n y = C[H, x 1,..., x n, y]. Określamy H λx 1... x n.h x 1... x n 0. Wykazujemy λ H k 1... k n = h(k 1,..., k n ). H k 1... k n = H k 1... k n 0 = C[H, k 1,..., k n, 0] =? Oznaczmy k = h(k 1,..., k n ). Jeżeli k = 0, to f (k 1,..., k n, 0) = 0, więc? = 0. Jeżeli k > 0, to:? = H k 1... k n 1 = H k 1... k n 2 = = H k 1... k n k = k. Q.E.D.
24 Logiczne podstawy informatyki Redukcja i normalizacja Definicja 8. Term postaci (λx.m)n nazywamy β redeksem (krótko: redeksem), a term M[x/N] reduktem (contractum) tego redeksu. Definicja 9. Mówimy, że term P jest normalny (albo: w postaci normalnej), jeżeli nie zawiera żadnych redeksów (jako podtermów). Definicja 10. Term P nazywamy normalizowalnym, jeżeli istnieje term normalny Q taki, że λ P = Q. Taki term Q nazywamy postacią normalną termu P. Sprowadzanie termu do postaci normalnej opiera się na procedurze redukcji, tzn. kolejnym zastępowaniu redeksów ich reduktami (β kroki) oraz podtermów ich α wariantami (α kroki). W rachunku λη dopuszczamy też η kroki, polegające na zastąpieniu η redeksu λx.mx, gdzie x V(M), jego reduktem M. Odpowiednio też modyfikujemy pojęcia termu normalnego i normalizowalnego.
25 Logiczne podstawy informatyki 25 Definicja 11. (α, β redukcja, krótko: redukcja) M β N wtw, gdy N powstaje z M przez zastąpienie pewnego redeksu jego reduktem. M N wtw, gdy istnieje ciąg (M 0,..., M n ), gdzie n N, taki że M 0 = M, M n = N oraz M i 1 β M i lub M i 1 α M i dla każdego i = 1,..., n. Taki ciąg (M 0,..., M n ) nazywamy redukcją termu M do termu N. Liczbę n nazywamy długością tej redukcji. Fakt 3. Relacja jest zwrotna (M M) i przechodnia (jeżeli M N i N P, to M P). DOWÓD. Ciąg (M 0 ), gdzie M 0 = M, jest redukcją M do M. Jeżeli (M 0,..., M n ) jest redukcją M do N, a (N 0,..., N p ) jest redukcją N do P, to M n = N = N 0 i ciąg (M 0,..., M n 1, N 0,..., N p ) jest redukcją M do P. Q.E.D.
26 Logiczne podstawy informatyki 26 Relację można też zdefiniować aksjomatycznie, podobnie jak relację =. Aksjomaty. (α ) M N, jeżeli M α N, (β ) (λx.m)n M[x/N]. Reguły. (Id) M M (tu zbyteczne) (tran ) M N, N P M P (ξ ) M N λx.m λx.n (l-mon) M N PM PN (r-mon) M N MP NP
27 Logiczne podstawy informatyki 27 Fakt 4. Term jest normalny wtw, gdy ma jedną z dwóch postaci: (1) xm 1... M n, gdzie n 0 i termy M 1,..., M n są normalne, (2) λx 1... x k.m, gdzie k 0 i term M jest normalny. Przykłady. Ptzykładami termów normalnych są x ((1) dla n = 0), xy, xyz, xz(yz) (z (1)), λxyz.xz(yz) (z (2)), x(λx.xy) (z (1) i (2)). Nie są normalne termy (λx.x)y, z((λx.x)y). Przykład redukcji: (λx.x)((λxy.x)y) β (λx.x)(λz.y) β λz.y α λx.y Ostatnie dwa termy są normalne. Oznaczmy U λx. f (xx). Otrzymujemy redukcję nieskończoną. UU β f (UU) β f ( f (UU)) β f ( f ( f (UU))) β....
28 Logiczne podstawy informatyki 28 Twierdzenie 4. (tw. Churcha-Rossera) Dla wszystkich termów M, N 1, N 2 takich, że M N 1 i M N 2, istnieje term P taki, że N 1 P i N 2 P. Dowód tego twierdzenia można znaleźć w książce J.R. Hindley i J.P. Seldin, Lambda-Calculus and Combinators: an Introduction. Jeżeli relacja redukcji ma własność opisaną w Tw. 4, to mówimy, że ta relacja ma własność Churcha-Rossera (albo: własność CR, własność diamentu). Tę własność mają też relacje redukcji w rachunku λη i CL. Przykład. Niech M (λx.x)((λy.xy)z), N 1 (λx.x)(xz), N 2 (λy.xy)z. Wtedy M N 1 i M N 2 (obie redukcje mają tylko jeden β krok). Oczywiście N 1 xz i N 2 xz.
29 Logiczne podstawy informatyki 29 Wniosek 1. λ M = N wtw, gdy istnieje term P taki, że M P i N P. DOWÓD. ( ). Załóżmy, że M P i N P. Wtedy λ M = P i λ N = P. Stąd λ M = N na mocy reguł (sym) i (tran). ( ). Zakładamy λ M = N. Dowodzimy: (T) istnieje P takie, że M P i N P przez indukcję po liczbie reguł użytych w dowodzie M = N w rachunku λ. Krok początkowy. 0 reguł. Wtedy M = N jest aksjomatem (α) lub (β), a więc M N na mocy (α ) lub (β ). Ponieważ N N, więc przyjmujemy P N. Krok indukcyjny. k reguł (k>0). Zakładamy, że (T) jest prawdziwe dla równości M = N, w których dowodzie użyto mniej niż k reguł (założenie indukcyjne, ZI). Rozważamy przypadki w zależności od reguły użytej na końcu w dowodzie M = N.
30 Logiczne podstawy informatyki 30 (1) Reguła (sym). Wtedy przesłanka N = M ma dowód z mniejszą liczbą reguł. Na mocy ZI istnieje P takie, że N P i M P, a więc (T) jest prawdziwe. (2) Reguła (l-con). Wtedy M QM, N QN, a przesłanką jest M = N. Na mocy ZI istnieje P takie, że M P i N P. Wtedy QM QP i QN QP na mocy (l-mon), a więc (T) jest prawdziwe (dla P QP ). Podobnie dla reguły (r-con). (3) Reguła (ξ). Wtedy M λx.m, N λx.n, a przesłanką jest M = N. Na mocy ZI istnieje P takie, że M P i N P. Wtedy λx.m λx.p i λx.n λx.p na mocy (ξ ), a więc (T) jest prawdziwe (dla P λx.p ). (4) Reguła (tran). Wtedy M = N wywnioskowano z przesłanek M = Q i Q = N dla pewnego termu Q. Na mocy ZI istnieją termy P 1, P 2 takie, że M P 1 i Q P 1 oraz Q P 2 i N P 2. Na mocy Tw. 4 istnieje term P taki, żę P 1 P i P 2 P, a więc M P i N P na mocy (tran ). Q.E.D.
31 Logiczne podstawy informatyki 31 Wniosek 2. Dla dowolnych termów normalnych M, N: λ M = N wtw, gdy M α N. DOWÓD. ( ) jest oczywiste. Dowodzimy ( ). Zakładamy, że λ M = N, gdzie M, N są normalne. Na mocy Wniosku 1 istnieje P takie, że M P i N P. Te dwie redukcje składają się wyłącznie z α kroków, więc M α P i N α P, a stąd M α N, bo relacja α jest symetryczna i przechodnia. Q.E.D. Wobec tego rachunek λ jest niesprzeczny, tzn. nie wszystkie równości są twierdzeniami. Dla różnych zmiennych x, y λ x = y. 0 jest termem normalnym λx.x. Podobnie false, czyli term λxy.y. Przypomnijmy, że [M, N] λz.zmn, a więc [M, N] jest normalny, jeżeli M, N są normalne. W konsekwencji każdy liczebnik n jest normalny (przypomnijmy, że n + 1 = [false, n]). Jeżeli m, n N są różne, to λ m = n. Jeżeli λ F k 1... k n = f (k 1,..., k n ), to f (k 1,..., k n ) jest jedyną liczbą k N taką, że λ F k 1,..., k n = k.
32 Logiczne podstawy informatyki 32 Wniosek 3. Jeżeli N jest postacią normalną termu M, to M N. Wszystkie postacie normalne jednego termu są w relacji α. DOWÓD. Niech N będzie postacią normalną termu M. Wtedy λ M = N. Na mocy Wniosku 1 istnieje P takie, że M P i N P. Ponieważ term N jest normalny, więc N α P, a stąd P α N. Mamy M P i P N, a więc M N na mocy (trans ). Druga część twierdzenia wynika z Wniosku 2. Q.E.D. Przykłady. Niech U λx. f (xx). Wszystkie β redukcje termu UU można przedłużać w nieskończoność, więc żadna z nich nie prowadzi do termu normalnego (dodanie α kroków nie naprawi sytuacji). Zatem term UU nie jest normalizowalny. Term Kx(UU), czyli (λxy.x)x(uu) jest normalizowalny: redukuje się do x. Istnieje jednak nieskończona β redukcja Kx(UU) β Kx( f (UU)) β Kx( f ( f (UU))) β....
33 Logiczne podstawy informatyki Nierozstrzygalność rachunku λ Każdemu termowi M przyporządkujemy liczbę naturalną ν(m), zwaną numerem termu M. Funkcja pary: π(m, n) = 2 m (2n + 1). Funkcja π jest bijekcją zbioru N 2 na zbiór dodatnich liczb naturalnych (każda liczba k 1 jest jednoznacznie przedstawialna w postaci k = π(m, n)). Przyjmujemy, że zmienne są ustawione w ciąg nieskończony: x 0, x 1, x 2,.... ν(x i ) = π(0, i) ν(mn) = π(1, π(ν(m), ν(n))) ν(λx i.m) = π(2, π(i, ν(m))) Różne termy mają różne numery. Ponadto istnieje prosty algorytm sprawdzania, czy liczba k jest numerem jakiegoś termu, a jeżeli tak, to wyznaczania jedynego termu M takiego, że k = ν(m).
34 Logiczne podstawy informatyki 34 Liczba 2 m (2n + 1), gdzie m > 2, nie jest numerem termu. Liczba nieparzysta 2 0 (2i + 1) jest numerem zmiennej x i. Liczba parzysta 2 1 (2k + 1) może być tylko numerem termu postaci MN. Znajdujemy m, n takie, że k = π(m, n), i uruchamiamy algorytm dla liczb m, n. Liczba parzysta 2 2 (2k + 1) może być tylko numerem termu λx i.m. Znajdujemy i, m takie, że k = π(i, m) (stąd mamy x i ), i uruchamiamy algorytm dla liczby m. Przykład. Niech M λx 0.x 0 x 1. ν(x 0 ) = π(0, 0) = 1, ν(x 1 ) = π(0, 1) = 3 ν(x 0 x 1 ) = π(1, π(1, 3)) = 2 1 (2π(1, 3) + 1) = 2 (2 (2 1 7) + 1) = 58 ν(m) = π(2, π(0, 58)) = 2 2 (2π(0, 58) + 1) = 4 (2 ( ) + 1) = 4 ( ) = = 940 Liczba 100 = 4 25 = 4 ( ) to numer termu λx 2.x 0.
35 Logiczne podstawy informatyki 35 Definicja 12. Określamy relację Ter N: Ter(n) M Λ n = ν(m) Dla dowolnego n takiego, że Ter(n), symbolem t(n) oznaczamy term M taki, że n = ν(m). Fakt 5. Istnieje algorytm, który dla dowolnego n sprawdza, czy Ter(n), a jeżeli tak, to wyznacza t(n). Fakt 6. Relacja Ter jest rekurencyjna. Twierdzenie 5. Określamy relację Eq N 2 : Eq(m, n) Ter(m) Ter(n) λ t(m) = t(n). Twierdzenie 5. Relacja Eq nie jest rekurencyjna. Stosując tezę Churcha, stwierdzamy, że relacja λ M = N jest nierozstrzygalna (rachunek λ jest nierozstrzygalny).
36 Logiczne podstawy informatyki 36 Definicja 13. Relację S N 2 nazywamy relacją uniwersalną dla relacji rekurencyjnych, jeżeli dla każdej relacji rekurencyjnej R N istnieje k N, spełniające warunek: (UN) n N (R(n) S (k, n)). Lemat 1. (lemat przekątniowy) Nie istnieje rekurencyjna relacja uniwersalna dla relacji rekurencyjnych. DOWÓD. Przypuśćmy, że istnieje rekurencyjna relacja S N 2, uniwersalna dla relacji rekurencyjnych. Określamy relację przekątniową R N: (D) n N (R(n) S (n, n)). Na mocy własności (R1), (R2) relacja R jest rekurencyjna. Stąd istnieje k N, spełniające (UN). Stosując (UN) i (D) do n = k, otrzymujemy równoważności R(k) S (k, k) oraz R(k) S (k, k), a stąd S (k, k) S (k, k), co jest zdaniem logicznie fałszywym. Zatem przypuszczenie jest fałszywe. Q.E.D.
37 Logiczne podstawy informatyki 37 Określamy pomocnicze funkcje rekurencyjne. ap(m, n) = π(1, π(m, n)). Wtedy ap(ν(m), ν(n)) = ν(mn). τ(m, n, k) = ap(ap(m, n), k). Wtedy τ(ν(m), ν(n), ν(p)) = ν(mnp). p(m, n) = π(2, π(0, τ(π(0, 0), m, n))). Wtedy p(ν(m), ν(n)) = ν(λx 0.x 0 MN) = ν([m, N]). Określamy liczby: i = ν(i), k = ν(k ). Num(0) = i Num(n + 1) = p(k, Num(n)). Wtedy Num(n) = ν( n).
38 Logiczne podstawy informatyki 38 DOWÓD TW. 5. Określamy relację S N 2 : S (m, n) Eq(ap(m,Num(n)), ν( 1)). Wtedy: S (ν(m), n) λ M n = 1. Wykażemy, że S jest relacją uniwersalną dla relacji rekurencyjnych. Stąd na mocy Lematu 1 relacja S nie jest rekurencyjna. Zatem relacja Eq nie jest rekurencyjna na mocy (R1). Niech R N będzie relacją rekurencyjną. Wtedy funkcja c R jest rekurencyjna. Na mocy Tw. 3 istnieje kombinator C R definiujący funkcję c R w rachunku λ. Dla każdego n N prawdziwe są równoważności: R(n) c R (n) = 1 λ C R n = 1, a stąd: R(n) S (ν(c R ), n), czyli (UN) dla k = ν(c R ). Q.E.D.
Jak należy się spodziewać, mamy. Zauważmy jednak, że nie zachodzi równość
11. Wykład 11: Rachunek λ. Obliczenia i obliczalność. Rachunek λ jest systemem pozornie bardzo prostym. Abstrakcja i aplikacja wydają się trywialnymi operacjami, i może się zdawać, że niczego ciekawego
Elementy rachunku lambda. dr hab. inż. Joanna Józefowska, prof. PP 1
Elementy rachunku lambda λ 1 Notacja λ x 3x + 7 3x + 7 jest różniczkowalna 3x + 7 jest mniejsze od 2 (2,3) 5 f(2, 3) = 2 + 3 g(2) = 2 + 3 λx(3x + 7) 3x + 7 λx λy(x + y) = λxy(x + y) λx(x + 3) 2 Rachunek
Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak
Indukcja Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Charakteryzacja zbioru liczb naturalnych Arytmetyka liczb naturalnych Jedną z najważniejszych teorii matematycznych jest arytmetyka
Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń
Elementy logiki Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń 1 Klasyczny Rachunek Zdań 1.1 Spójniki logiczne Zdaniem w sensie logicznym nazywamy wyrażenie, które jest
Programowanie funkcyjne Wykład 14. Rachunek λ z typami prostymi
Programowanie funkcyjne Wykład 14. Rachunek λ z typami prostymi Zdzisław Spławski Zdzisław Spławski: Programowanie funkcyjne, Wykład 14. Rachunek λ z typami prostymi 1 Dowody konstruktywne Dedukcja naturalna
Struktury formalne, czyli elementy Teorii Modeli
Struktury formalne, czyli elementy Teorii Modeli Szymon Wróbel, notatki z wykładu dra Szymona Żeberskiego semestr zimowy 2016/17 1 Język 1.1 Sygnatura językowa Sygnatura językowa: L = ({f i } i I, {P j
-termami -wyrażeń pre-termami abstrakcją aplikacją zmiennych wolnych zmienną związaną domknięte
8. Wykład 8: Rachunek λ. Wprowadzenie. Rachunek lambda i logika kombinatoryczna powstały w latach trzydziestych dwudziestego wieku. Początkowo miały stanowić alternatywne wobec teorii mnogości podejście
Nierówności symetryczne
Nierówności symetryczne Andrzej Nowicki Uniwersytet Mikołaja Kopernika, Wydział Matematyki i Informatyki, ul Chopina 1 18, 87 100 Toruń (e-mail: anow@matunitorunpl) Sierpień 1995 Wstęp Jeśli x, y, z, t
vf(c) =, vf(ft 1... t n )=vf(t 1 )... vf(t n ).
6. Wykład 6: Rachunek predykatów. Język pierwszego rzędu składa się z: symboli relacyjnych P i, i I, gdzie (P i ) oznaczać będzie ilość argumentów symbolu P i, symboli funkcyjnych f j, j J, gdzie (f j
Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język
Matematyka II - Organizacja zajęć. Egzamin w sesji letniej
Matematyka II - Organizacja zajęć Wykład (45 godz.): 30 godzin - prof. zw. dr hab. inż. Jan Węglarz poniedziałek godz.11.45 15 godzin - środa godz. 13.30 (tygodnie nieparzyste) s. A Egzamin w sesji letniej
domykanie relacji, relacja równoważności, rozkłady zbiorów
1 of 8 2012-03-28 17:45 Logika i teoria mnogości/wykład 5: Para uporządkowana iloczyn kartezjański relacje domykanie relacji relacja równoważności rozkłady zbiorów From Studia Informatyczne < Logika i
Twierdzenia Gödla dowody. Czy arytmetyka jest w stanie dowieść własną niesprzeczność?
Semina Nr 3 Scientiarum 2004 Twierdzenia Gödla dowody. Czy arytmetyka jest w stanie dowieść własną niesprzeczność? W tym krótkim opracowaniu chciałbym przedstawić dowody obu twierdzeń Gödla wykorzystujące
n=0 (n + r)a n x n+r 1 (n + r)(n + r 1)a n x n+r 2. Wykorzystując te obliczenia otrzymujemy, że lewa strona równania (1) jest równa
Równanie Bessela Będziemy rozważać następujące równanie Bessela x y xy x ν )y 0 ) gdzie ν 0 jest pewnym parametrem Rozwiązania równania ) nazywamy funkcjami Bessela rzędu ν Sprawdzamy, że x 0 jest regularnym
Monoidy wolne. alfabetem. słowem długością słowa monoidem wolnym z alfabetem Twierdzenie 1.
3. Wykłady 3 i 4: Języki i systemy dedukcyjne. Klasyczny rachunek zdań. 3.1. Monoidy wolne. Niech X będzie zbiorem niepustym. Zbiór ten będziemy nazywać alfabetem. Skończony ciąg elementów alfabetu X będziemy
P. Urzyczyn: Materia ly do wyk ladu z semantyki. Uproszczony 1 j. ezyk PCF
29 kwietnia 2013, godzina 23: 56 strona 1 P. Urzyczyn: Materia ly do wyk ladu z semantyki Uproszczony 1 j ezyk PCF Sk ladnia: Poniżej Γ oznacza otoczenie typowe, czyli zbiór deklaracji postaci (x : τ).
1 Funkcje uniwersalne
1 1 Funkcje uniwersalne 1.1 Konstrukcja funkcji uniweralnej Niech P będzie najmniejszym zbiorem liczb spełniającym warunki 1) 0, 2, 0, 0, 2, 1, 0, 2, 2 P, 2) 0, n, 3, k P dla wszystkich n > 0 oraz k takich,
Zbiory, relacje i funkcje
Zbiory, relacje i funkcje Zbiory będziemy zazwyczaj oznaczać dużymi literami A, B, C, X, Y, Z, natomiast elementy zbiorów zazwyczaj małymi. Podstawą zależność między elementem zbioru a zbiorem, czyli relację
Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0
ĆWICZENIE 1 Klasyczny Rachunek Zdań (KRZ): zdania w sensie logicznym, wartości logiczne, spójniki logiczne, zmienne zdaniowe, tabele prawdziwościowe dla spójników logicznych, formuły, wartościowanie zbioru
Logika binarna. Prawo łączności mówimy, że operator binarny * na zbiorze S jest łączny gdy (x * y) * z = x * (y * z) dla każdego x, y, z S.
Logika binarna Logika binarna zajmuje się zmiennymi mogącymi przyjmować dwie wartości dyskretne oraz operacjami mającymi znaczenie logiczne. Dwie wartości jakie mogą te zmienne przyjmować noszą przy tym
System BCD z κ. Adam Slaski na podstawie wykładów, notatek i uwag Pawła Urzyczyna. Semestr letni 2009/10
System BCD z κ Adam Slaski na podstawie wykładów, notatek i uwag Pawła Urzyczyna Semestr letni 2009/10 Rozważamy system BCD ze stałą typową κ i aksjomatami ω κ κ i κ ω κ. W pierwszej części tej notatki
Programowanie funkcyjne Wykład 12. Funkcje rekurencyjne i rachunek lambda
Instytut Informatyki Programowanie funkcyjne Wykład 12. Funkcje rekurencyjne i rachunek lambda Zdzisław Spławski Zdzisław Spławski: Programowanie funkcyjne, Wykład 12. Funkcje rekurencyjne i rachunek lambda
1. Wykład NWD, NWW i algorytm Euklidesa.
1.1. NWD, NWW i algorytm Euklidesa. 1. Wykład 1 Twierdzenie 1.1 (o dzieleniu z resztą). Niech a, b Z, b 0. Wówczas istnieje dokładnie jedna para liczb całkowitych q, r Z taka, że a = qb + r oraz 0 r< b.
Teoretyczne Podstawy Języków Programowania Wykład 4. Siła wyrazu rachunku λ
Teoretyczne Podstawy Języków Programowania Wykład 4. Siła wyrazu rachunku λ Zdzisław Spławski Zdzisław Spławski: Teoretyczne Podstawy Języków Programowania, Wykład 4. Siła wyrazu rachunku λ 1 Wstęp Wartości
Egzamin z logiki i teorii mnogości, rozwiązania zadań
Egzamin z logiki i teorii mnogości, 08.02.2016 - rozwiązania zadań 1. Niech φ oraz ψ będą formami zdaniowymi. Czy formuła [( x : φ(x)) ( x : ψ(x))] [ x : (φ(x) ψ(x))] jest prawem rachunku kwantyfikatorów?
Wstęp do Matematyki (4)
Wstęp do Matematyki (4) Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl Liczby kardynalne Jerzy Pogonowski (MEG) Wstęp do Matematyki (4) Liczby kardynalne 1 / 33 Wprowadzenie
Andrzej Wiśniewski Logika II. Wykłady 10b i 11. Semantyka relacyjna dla normalnych modalnych rachunków zdań
Andrzej Wiśniewski Logika II Materiały do wykładu dla studentów kognitywistyki Wykłady 10b i 11. Semantyka relacyjna dla normalnych modalnych rachunków zdań 1 Struktury modelowe Przedstawimy teraz pewien
O czym będzie ten wykład: Logika i teoria typów. Zbiory i funkcje. Powtórzenie z rachunku lambda. Ekstensjonalność (?) Beztypowy rachunek lambda
O czym będzie ten wykład: Logika i teoria typów Wykład 1 2 marca 2016 Powtórzenie z rachunku lambda. Logika intuicjonistyczna. Logika jako gra dialogowa. Podstawy logiki liniowej. Logika klasyczna, kontynuacje
- Dla danego zbioru S zbiór wszystkich jego podzbiorów oznaczany symbolem 2 S.
1 Zbiór potęgowy - Dla danego zbioru S zbiór wszystkich jego podzbiorów oznaczany symbolem 2 S. - Dowolny podzbiór R zbioru 2 S nazywa się rodziną zbiorów względem S. - Jeśli S jest n-elementowym zbiorem,
Logika i teoria typów
Logika i teoria typów Wykład 1 2 marca 2016 O czym będzie ten wykład: Powtórzenie z rachunku lambda. Logika intuicjonistyczna. Logika jako gra dialogowa. Podstawy logiki liniowej. Logika klasyczna, kontynuacje
Formalizacja podstawowych pojęć rachunku lambda
Formalizacja podstawowych pojęć rachunku lambda Antoni Kościelski 1 Zmienne Zbiór zmiennych będziemy oznaczać literą V. Zakładamy, że jest to zbiór nieskończony (przeliczalny). Chcemy mieć do dyspozycji
Schemat rekursji. 1 Schemat rekursji dla funkcji jednej zmiennej
Schemat rekursji 1 Schemat rekursji dla funkcji jednej zmiennej Dla dowolnej liczby naturalnej a i dowolnej funkcji h: N 2 N istnieje dokładnie jedna funkcja f: N N spełniająca następujące warunki: f(0)
Treść wykładu. Pierścienie wielomianów. Dzielenie wielomianów i algorytm Euklidesa Pierścienie ilorazowe wielomianów
Treść wykładu Pierścienie wielomianów. Definicja Niech P będzie pierścieniem. Wielomianem jednej zmiennej o współczynnikach z P nazywamy każdy ciąg f = (f 0, f 1, f 2,...), gdzie wyrazy ciągu f są prawie
Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I
Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I Mariusz Urbański Instytut Psychologii UAM Mariusz.Urbanski@.edu.pl OSTRZEŻENIE Niniejszy plik nie zawiera wykładu z Metod dowodzenia...
7 Twierdzenie Fubiniego
M. Beśka, Wstęp do teorii miary, wykład 7 19 7 Twierdzenie Fubiniego 7.1 Miary produktowe Niech i będą niepustymi zbiorami. Przez oznaczmy produkt kartezjański i tj. zbiór = { (x, y : x y }. Niech E oraz
Definicja: alfabetem. słowem długością słowa
Definicja: Niech X będzie zbiorem niepustym. Zbiór ten będziemy nazywać alfabetem. Skończony ciąg elementów alfabetu X będziemy nazywać słowem a liczbę elementów tego ciągu nazywamy długością słowa. Na
Programowanie funkcyjne Wykład 13. Siła wyrazu rachunku lambda
Programowanie funkcyjne Wykład 13. Siła wyrazu rachunku lambda Zdzisław Spławski Zdzisław Spławski: Programowanie funkcyjne, Wykład 13. Siła wyrazu rachunku lambda 1 Wstęp Wartości logiczne Liczby naturalne
SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa
SIMR 06/07, Analiza, wykład, 07-0- Przestrzeń wektorowa Przestrzeń wektorowa (liniowa) - przestrzeń (zbiór) w której określone są działania (funkcje) dodawania elementów i mnożenia elementów przez liczbę
Elementy teorii mnogości. Część I. Wojciech Buszkowski Zakład Teorii Obliczeń Wydział Matematyki i Informatyki Uniwersytet im.
Elementy teorii mnogości 1 Elementy teorii mnogości Część I Wojciech Buszkowski Zakład Teorii Obliczeń Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza Elementy teorii mnogości 2 1. Pojęcia
Programowanie funkcyjne. Wykªad 13
Programowanie funkcyjne. Wykªad 13 Siªa wyrazu rachunku lambda Zdzisªaw Spªawski Zdzisªaw Spªawski: Programowanie funkcyjne. Wykªad 13, Siªa wyrazu rachunku lambda 1 Wst p Warto±ci logiczne Liczby naturalne
VI. Równania różniczkowe liniowe wyższych rzędów
VI. 1. Równanie różniczkowe liniowe n-tego rzędu o zmiennych współczynnikach Niech podobnie jak w poprzednim paragrafie K = C lub K = R. Podobnie jak w dziedzinie rzeczywistej wprowadzamy pochodne wyższych
Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Materiały dydaktyczne na zajęcia wyrównawcze z matematyki dla studentów pierwszego roku kierunku zamawianego Inżynieria Środowiska w ramach projektu Era inżyniera pewna lokata na przyszłość Projekt Era
0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.
Wykłady z Analizy rzeczywistej i zespolonej w Matematyce stosowanej Wykład ELEMENTY LOGIKI ALGEBRA BOOLE A Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek
Zasada indukcji matematycznej
Zasada indukcji matematycznej Twierdzenie 1 (Zasada indukcji matematycznej). Niech ϕ(n) będzie formą zdaniową zmiennej n N 0. Załóżmy, że istnieje n 0 N 0 takie, że 1. ϕ(n 0 ) jest zdaniem prawdziwym,.
Baza w jądrze i baza obrazu ( )
Przykład Baza w jądrze i baza obrazu (839) Znajdź bazy jądra i obrazu odwzorowania α : R 4 R 3, gdzie α(x, y, z, t) = (x + 2z + t, 2x + y 3z 5t, x y + z + 4t) () zór ten oznacza, że α jest odwzorowaniem
Rekurencyjna przeliczalność
Rekurencyjna przeliczalność Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl Funkcje rekurencyjne Jerzy Pogonowski (MEG) Rekurencyjna przeliczalność Funkcje rekurencyjne
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ 1 Inferencyjna równoważność formuł Definicja 9.1. Formuła A jest
Rachunek lambda, zima
Rachunek lambda, zima 2015-16 Wykład 2 12 października 2015 Tydzień temu: Własność Churcha-Rossera (CR) Jeśli a b i a c, to istnieje takie d, że b d i c d. Tydzień temu: Własność Churcha-Rossera (CR) Jeśli
Podstawowe struktury algebraiczne
Maciej Grzesiak Podstawowe struktury algebraiczne 1. Wprowadzenie Przedmiotem algebry było niegdyś przede wszystkim rozwiązywanie równań. Obecnie algebra staje się coraz bardziej nauką o systemach matematycznych.
Matematyka Dyskretna 2/2008 rozwiązania. x 2 = 5x 6 (1) s 1 = Aα 1 + Bβ 1. A + B = c 2 A + 3 B = d
C. Bagiński Materiały dydaktyczne 1 Matematyka Dyskretna /008 rozwiązania 1. W każdym z następujących przypadków podać jawny wzór na s n i udowodnić indukcyjnie jego poprawność: (a) s 0 3, s 1 6, oraz
Indukcja matematyczna, zasada minimum i maksimum. 17 lutego 2017
Indukcja matematyczna, zasada minimum i maksimum 17 lutego 2017 Liczby naturalne - Aksjomatyka Peano (bez zera) Aksjomatyka liczb naturalnych N jest nazwą zbioru liczb naturalnych, 1 jest nazwą elementu
Semantyka rachunku predykatów
Relacje Interpretacja Wartość Spełnialność Logika obliczeniowa Instytut Informatyki Relacje Interpretacja Wartość Plan Plan Relacje O co chodzi? Znaczenie w logice Relacje 3 Interpretacja i wartościowanie
Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 2 - Logika modalna Część 2 Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 27 Plan wykładu
Funkcje rekurencyjne
Funkcje rekurencyjne Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl Funkcje rekurencyjne Jerzy Pogonowski (MEG) Funkcje rekurencyjne Funkcje rekurencyjne 1 / 34 Wprowadzenie
Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki
Andrzej Wiśniewski Logika II Materiały do wykładu dla studentów kognitywistyki Wykład 5. Wprowadzenie do semantyki teoriomodelowej cz.5. Wynikanie logiczne 1 Na poprzednim wykładzie udowodniliśmy m.in.:
Logika dla socjologów Część 3: Elementy teorii zbiorów i relacji
Logika dla socjologów Część 3: Elementy teorii zbiorów i relacji Rafał Gruszczyński Katedra Logiki Uniwersytet Mikołaja Kopernika 2011/2012 Spis treści 1 Zbiory 2 Pary uporządkowane 3 Relacje Zbiory dystrybutywne
Początki informatyki teoretycznej. Paweł Cieśla
Początki informatyki teoretycznej Paweł Cieśla Wstęp Przykładowe zastosowanie dzisiejszych komputerów: edytowanie tekstów, dźwięku, grafiki odbiór telewizji gromadzenie informacji komunikacja Komputery
rachunku kombinatorów logiką kom- binatoryczną Zmienne przedmiotowe Podstawienie słabej redukcji kombinatorami
12 Wykłady 12 i 13: Rachunek λ Rachunek kombinatorów, typy proste i izomorfizm Curry-Howarda Zdefiniujemy teraz system CL(beztypowego) rachunku kombinatorów, zwany także logiką kombinatoryczną, chociaż
FUNKCJE. (odwzorowania) Funkcje 1
FUNKCJE (odwzorowania) Funkcje 1 W matematyce funkcja ze zbioru X w zbiór Y nazywa się odwzorowanie (przyporządkowanie), które każdemu elementowi zbioru X przypisuje jeden, i tylko jeden element zbioru
Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu. 1 Logika Klasyczna obejmuje dwie teorie:
B jest liniowo niezależny V = lin (B) 1. Układ pusty jest bazą przestrzeni trywialnej {θ}. a i v i = i I. b i v i, (a i b i ) v i = θ.
8 Baza i wymiar Definicja 8.1. Bazą przestrzeni liniowej nazywamy liniowo niezależny układ jej wektorów, który generuję tę przestrzeń. Innymi słowy, układ B = (v i ) i I wektorów z przestrzeni V jest bazą
Instrukcje dla zawodników
Płock, 21 marca 2015 r. Instrukcje dla zawodników Arkusze otwieramy na wyraźne polecenie komisji. Wszystkie poniższe instrukcje zostaną odczytane i wyjaśnione. 1. Arkusz składa się z 3 zadań. 2. Każde
W. Guzicki Zadanie IV z Informatora Maturalnego poziom rozszerzony 1
W. Guzicki Zadanie IV z Informatora Maturalnego poziom rozszerzony 1 Zadanie IV. Dany jest prostokątny arkusz kartony o długości 80 cm i szerokości 50 cm. W czterech rogach tego arkusza wycięto kwadratowe
1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.
Elementy logiki i teorii zbiorów. 1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych. Pojęcia pierwotne to najprostsze
F t+ := s>t. F s = F t.
M. Beśka, Całka Stochastyczna, wykład 1 1 1 Wiadomości wstępne 1.1 Przestrzeń probabilistyczna z filtracją Niech (Ω, F, P ) będzie ustaloną przestrzenią probabilistyczną i niech F = {F t } t 0 będzie rodziną
Predykat. Matematyka Dyskretna, Podstawy Logiki i Teorii Mnogości Barbara Głut
Predykat Weźmy pod uwagę następujące wypowiedzi: (1) Afryka jest kontynentem. (2) 7 jest liczbą naturalną. (3) Europa jest mniejsza niż Afryka. (4) 153 jest podzielne przez 3. Są to zdania jednostkowe,
Macierze. Rozdział Działania na macierzach
Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i, j) (i 1,..., n; j 1,..., m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F R lub F C, nazywamy macierzą (rzeczywistą, gdy
Aproksymacja diofantyczna
Aproksymacja diofantyczna Szymon Draga Ustroń, 4 listopada 0 r Wprowadzenie Jak wiadomo, każdą liczbę niewymierną można (z dowolną dokładnością) aproksymować liczbami wymiernymi Powstaje pytanie, w jaki
Grupy, pierścienie i ciała
Grupy, pierścienie i ciała Definicja: Niech A będzie niepustym zbiorem. Działaniem wewnętrznym (lub, krótko, działaniem) w zbiorze A nazywamy funkcję : A A A. Niech ponadto B będzie niepustym zbiorem.
Logika I. Wykład 1. Wprowadzenie do rachunku zbiorów
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 1. Wprowadzenie do rachunku zbiorów 1 Podstawowe pojęcia rachunku zbiorów Uwaga 1.1. W teorii mnogości mówimy o zbiorach
Relacje. opracował Maciej Grzesiak. 17 października 2011
Relacje opracował Maciej Grzesiak 17 października 2011 1 Podstawowe definicje Niech dany będzie zbiór X. X n oznacza n-tą potęgę kartezjańską zbioru X, tzn zbiór X X X = {(x 1, x 2,..., x n ) : x k X dla
KONKURS MATEMATYCZNY KOMA 2018
ELIMINACJE SZKOLNE RACHUNEK LAMBDA NOTATKI Z WYKŁADU - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TEORETYCZNE PODSTAWY INFORMATYKI
1 TEORETYCZNE PODSTAWY INFORMATYKI 16/01/2017 WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Repetytorium złożoność obliczeniowa 2 Złożoność obliczeniowa Notacja wielkie 0 Notacja Ω i Θ Rozwiązywanie
Topologia zbioru Cantora a obwody logiczne
Adam Radziwończyk-Syta Michał Skrzypczak Uniwersytet Warszawski 1 lipca 2009 http://students.mimuw.edu.pl/~mskrzypczak/dokumenty/ obwody.pdf Zbiór Cantora Topologia Definicja Przez zbiór Cantora K oznaczamy
Konstrukcja liczb rzeczywistych przy pomocy ciągów Cauchy ego liczb wymiernych
Konstrukcja liczb rzeczywistych przy pomocy ciągów Cauchy ego liczb wymiernych Marcin Michalski 14.11.014 1 Wprowadzenie Jedną z intuicji na temat liczb rzeczywistych jest myślenie o nich jako liczbach,
Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Materiały dydaktyczne na zajęcia wyrównawcze z matematyki dla studentów pierwszego roku kierunku zamawianego Inżynieria i Gospodarka Wodna w ramach projektu Era inżyniera pewna lokata na przyszłość Projekt
Wstęp do Programowania potok funkcyjny
Wstęp do Programowania potok funkcyjny Marcin Kubica 2010/2011 Outline Procedury wyższych rzędów 1 Procedury wyższych rzędów jako abstrakcje konstrukcji programistycznych Intuicje Procedury wyższych rzędów
RACHUNEK LAMBDA DLA POCZĄTKUJĄCYCH
Informatyka w Edukacji, XVI UMK Toruń, 2019 RACHUNEK LAMBDA DLA POCZĄTKUJĄCYCH Wydział Matematyki i Informatyki, Uniwersytet Wrocławski tdr@cs.uni.wroc.pl; ii.uni.wroc.pl/~tdr Abstract. This paper presents
Zbiory, funkcje i ich własności. XX LO (wrzesień 2016) Matematyka elementarna Temat #1 1 / 16
Zbiory, funkcje i ich własności XX LO (wrzesień 2016) Matematyka elementarna Temat #1 1 / 16 Zbiory Zbiory ograniczone, kresy Zbiory ograniczone, min, max, sup, inf Zbiory ograniczone 1 Zbiór X R jest
Matematyka dyskretna. Andrzej Łachwa, UJ, 2019 Zadania 1-100
Matematyka dyskretna Andrzej Łachwa, UJ, 2019 andrzej.lachwa@uj.edu.pl Zadania 1-100 Udowodnij, że A (B C) = (A B) (A C) za pomocą diagramów Venna. Udowodnij formalnie, że (A B i A C) A B C oraz że (A
Notatki z Analizy Matematycznej 2. Jacek M. Jędrzejewski
Notatki z Analizy Matematycznej 2 Jacek M. Jędrzejewski Definicja 3.1. Niech (a n ) n=1 będzie ciągiem liczbowym. Dla każdej liczby naturalnej dodatniej n utwórzmy S n nazywamy n-tą sumą częściową. ROZDZIAŁ
Elementy logiki matematycznej
Elementy logiki matematycznej Przedmiotem logiki matematycznej jest badanie tzw. wyrażeń logicznych oraz metod rozumowania i sposobów dowodzenia używanych w matematyce, a także w innych dziedzinach, w
Ciągi komplementarne. Autor: Krzysztof Zamarski. Opiekun pracy: dr Jacek Dymel
Ciągi komplementarne Autor: Krzysztof Zamarski Opiekun pracy: dr Jacek Dymel Spis treści 1 Wprowadzenie 2 2 Pojęcia podstawowe 3 2.1 Oznaczenia........................... 3 2.2 "Ciąg odwrotny"........................
Algebrę L = (L, Neg, Alt, Kon, Imp) nazywamy algebrą języka logiki zdań. Jest to algebra o typie
3. Wykłady 5 i 6: Semantyka klasycznego rachunku zdań. Dotychczas rozwinęliśmy klasyczny rachunek na gruncie czysto syntaktycznym, a więc badaliśmy metodę sprawdzania, czy dana formuła B jest dowodliwa
Matematyka dyskretna. Andrzej Łachwa, UJ, 2017 Zadania 1
Matematyka dyskretna Andrzej Łachwa, UJ, 2017 andrzej.lachwa@uj.edu.pl Zadania 1 Udowodnij, że A (B C) = (A B) (A C) za pomocą diagramów Venna. Udowodnij formalnie, że (A B i A C) A B C oraz że (A B C)'
Łatwy dowód poniższej własności pozostawiamy czytelnikowi.
Rozdział 3 Logarytm i potęga 3.1 Potęga o wykładniku naturalnym Definicja potęgi o wykładniku naturalnym. Niech x R oraz n N. Potęgą o podstawie x i wykładniku n nazywamy liczbę x n określoną następująco:
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykłady 12 i 13. Dowód i dowodzenie w KRP. Tezy KRP
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykłady 12 i 13. Dowód i dowodzenie w KRP. Tezy KRP 1 Pojęcie dowodu w KRP Pojęcia: formuły zdaniowej języka Klasycznego Rachunku
020 Liczby rzeczywiste
020 Liczby rzeczywiste N = {1,2,3,...} Z = { 0,1, 1,2, 2,...} m Q = { : m, n Z, n 0} n Operacje liczbowe Zbiór Dodawanie Odejmowanie Mnożenie Dzielenie N Z Q Pytanie Dlaczego zbiór liczb wymiernych nie
LXII Olimpiada Matematyczna
1 Zadanie 1. LXII Olimpiada Matematyczna Rozwiązania zadań konkursowych zawodów stopnia drugiego 18 lutego 2011 r. (pierwszy dzień zawodów) Rozwiązać w liczbach rzeczywistych układ równań { (x y)(x 3 +y
5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów.
5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów. Algebra jest jednym z najstarszych działów matematyki dotyczącym początkowo tworzenia metod rozwiązywania równań
Rozdział 6. Ciągłość. 6.1 Granica funkcji
Rozdział 6 Ciągłość 6.1 Granica funkcji Podamy najpierw dwie definicje granicy funkcji w punkcie i pokażemy ich równoważność. Definicja Cauchy ego granicy funkcji w punkcie. Niech f : X R, gdzie X R oraz
Matematyka dyskretna. Andrzej Łachwa, UJ, /15
Matematyka dyskretna Andrzej Łachwa, UJ, 2015 andrzej.lachwa@uj.edu.pl 3/15 Indukcja matematyczna Poprawność indukcji matematycznej wynika z dobrego uporządkowania liczb naturalnych, czyli z następującej
Matematyka dyskretna. Andrzej Łachwa, UJ, B/14
Matematyka dyskretna Andrzej Łachwa, UJ, 2019 andrzej.lachwa@uj.edu.pl 2B/14 Relacje Pojęcia: relacja czyli relacja dwuargumentowa relacja w zbiorze A relacja n-argumentowa Relacja E = {(x, x): x S} jest
Sumy kwadratów kolejnych liczb naturalnych
Sumy kwadratów kolejnych liczb naturalnych Andrzej Nowicki 24 maja 2015, wersja kk-17 Niech m < n będą danymi liczbami naturalnymi. Interesować nas będzie równanie ( ) y 2 + (y + 1) 2 + + (y + m 1) 2 =
Układy równań i nierówności liniowych
Układy równań i nierówności liniowych Wiesław Krakowiak 1 grudnia 2010 1 Układy równań liniowych DEFINICJA 11 Układem równań m liniowych o n niewiadomych X 1,, X n, nazywamy układ postaci: a 11 X 1 + +
Rozdzia l 10. Najważniejsze normalne logiki modalne
Rozdzia l 10. Najważniejsze normalne logiki modalne 1. Logiki modalne normalne Definicja. Inwariantny zbiór formu l X jȩzyka modalnego L = (L,,,,, ) nazywamy logik a modaln a zbazowan a na logice klasycznej
Matematyka dyskretna. Andrzej Łachwa, UJ, /14
Matematyka dyskretna Andrzej Łachwa, UJ, 2019 andrzej.lachwa@uj.edu.pl 3/14 Funkcje Funkcja o dziedzinie X i przeciwdziedzinie Y to dowolna relacja f X Y taka, że x X!y Y: (x,y) f. Dziedzinę i przeciwdziedzinę
1 Działania na zbiorach
M. Beśka, Wstęp do teorii miary, rozdz. 1 1 1 Działania na zbiorach W rozdziale tym przypomnimy podstawowe działania na zbiorach koncentrując się na własnościach tych działań, które będą przydatne w dalszej
VIII. Zastosowanie rachunku różniczkowego do badania funkcji. 1. Twierdzenia o wartości średniej. Monotoniczność funkcji.
VIII. Zastosowanie rachunku różniczkowego do badania funkcji. 1. Twierdzenia o wartości średniej. Monotoniczność funkcji. Twierdzenie 1.1. (Rolle a) Jeżeli funkcja f jest ciągła w przedziale domkniętym
Zajęcia nr. 3 notatki
Zajęcia nr. 3 notatki 22 kwietnia 2005 1 Funkcje liczbowe wprowadzenie Istnieje nieskończenie wiele funkcji w matematyce. W dodaktu nie wszystkie są liczbowe. Rozpatruje się funkcje które pobierają argumenty