Rachunek predykatów Wykład 4 Plan wykładu Relacje i predykaty Formuły rachunku predykatów Interpretacje Logiczna równoważność Metoda tabel Modele skończone i nieskończone Rozstrzygalność Relacje i predykaty Rachunek predykatów jest rozszerzeniem rachunku zdań o symbole predykatywne interpretowane jako relacje w określonej dziedzinie. Relację można reprezentować za pomocą funkcji o wartościach logicznych R: D n {0,1} odwzorowującej krotkę w wartość 1 wtedy i tylko wtedy, gdy należy ona do relacji R(d 1,..., d n ) = 1 wtw (d 1,..., d n ) R Relacje i predykaty - przykłady Pr(x) N jest zbiorem liczb pierwszych: {2, 3, 5, 7, 11, 13, 17...} Pr(0) = 0; Pr(1) = 0; Pr(2) = 1; Pr(3) = 1; Pr(4) = 0,... Sq(x) N 2 jest zbiorem par takich, że y = x 2 : {(0,0), (1,1), (2,4), (3,9), (4,16)...} Sq(0,0) = 1; Sq(0,1) = 0; Sq(0,2) = 0; Sq(0,3) = 0; Sq(0,4) = 0;... Sq(1,0) = 0; Sq(1,1) = 1; Sq(1,2) = 0; Sq(1,3) = 0; Sq(1,4) = 0;... Sq(2,0) = 0;... Sq(2,1) = 0;... Sq(2,2) = 0;... Sq(2,3) = 0;... Sq(2,4) = 1;...... Formuły rachunku predykatów P = {p, q, r} symbole predykatywne A = {a, b, c} stałe V = {x, y, z} zmienne Za pomocą zastępującej gramatyki definiuje się formuły atomowe oraz formuły rachunku predykatów: argument ::= x dla dowolnego x V argument ::= a dla dowolnego a A argumenty ::= argument argumenty ::= argument,argumenty atom ::= p p(argumenty) dla dowolnego p P form ::= atom form ::= form form ::= form form podobnie dla,... form ::= x form dla dowolnego x V form ::= x form dla dowolnego x V Formuły rachunku predykatów Symbol predykatywny p P może nie mieć argumentów lub mieć ich dowolna liczbę. Dwa symbole predykatywne o różnej liczbie argumentów będziemy traktować jako różne symbole. Definicję drzewa wywodu, drzewa struktury i pojęcie indukcji strukturalnej przejmujemy bez zmian z rachunku zdań. Kwantyfikatory mają priorytet wyższy od priorytetu operatorów logicznych.
y x y (p(x,y) p(y,x)). x y p(x,y). x y (p(x) p(y)). x p(a,x). x (p(x) q(x)) ( x p(x) x q(x)). x (p(x) q(x)) ( x p(x) x q(x)). Kwantyfikatory Symbol to kwantyfikator uniwersalny, który odczytujemy: dla każdego. Symbol to kwantyfikator egzystencjalny, który odczytujemy istnieje. Zmienna x w kwantyfikowanej formule postaci x A jest nazywana zmienną kwantyfikowaną, a formuła A tworzy zasięg zmiennej kwantyfikowanej. Nie jest wymagane, aby zmienna x wystąpiła w zasięgu własnej kwantyfikacji. Zasięg kwantyfikatora Zmienna wolna i związana x i (x i > 9) x i (x i > x i 1) Niech A będzie formułą. Zmienna x występująca w formule A jest nazywana zmienna wolną wtw, gdy nie leży w zasięgu zmiennej kwantyfikowanej x. A(x 1,..., x n ) oznacza, że zbiór zmiennych wolnych w formule A jest podzbiorem zbioru {x 1,..., x n }. O zmiennej, która nie jest wolna mówimy, że jest związana. Zmienna wolna i związana Domknięcie uniwersalne i egzystencjane x(y > 9) Formuła, która nie zawiera zmiennych wolnych nazywana jest formułą zamkniętą. Jeśli {x 1,..., x n } są wszystkimi zmiennymi wolnymi formuły A, to domknięciem uniwersalnym formuły A jest formuła x 1... x n A, a formuła x 1... x n A domknięciem egzystencjalnym A. x (x > x 1) x p(x) q(x) x p(x) q(y) Tak jest bardziej czytelne!
Domknięcie uniwersalne i egzystencjane x(y > 9) x (x > x 1) x(p(x) q(x)) y ( x(y > 9)) y ( x(y > 9)) Interpretacje Niech U będzie zbiorem formuł spełniającym warunek: {p 1,..., p n } jest zbiorem wszystkich symboli predykatywnych występujących w tych formułach, {a 1,..., a k } jest zbiorem wszystkich stałych występujących w U. Interpretacją I nazywamy trójkę: (D, {R 1,... R m }, {d 1,..., d k }), xp(x) q(y) y ( xp(x) q(y)) y ( xp(x) q(y)) gdzie: D jest niepustą dziedziną, R i jest n i -argumentową relacją określoną na D, przyporządkowaną symbolowi predykatywnemu p i, d i D są elementami dziedziny D, przyporządkowanymi stałym a i. Interpretacje - przykład Wartościowanie x p(a,x) I 1 = (N, { }, {0}) I 1 = (N, { }, {1}) I 1 = (Z, { }, {0}) {x x N, 0 x} Niech I będzie interpretacją. Wartościowaniem σ I : V D nazywamy funkcję przyporządkowującą każdej zmiennej element dziedziny interpretacji I. Przez σ I [x i d i ] będziemy oznaczać wartościowanie otrzymane z σ I przez przyporządkowanie zmiennej x i wartości d i. Wartość formuły Niech A będzie formułą, I interpretacją, a σ I wartościowaniem. Wartość formuły A przy wartościowaniu σ I oznaczamy przez v σi (A) i definiujemy przez indukcję ze względu na budowę formuły. Niech A = p k (c 1,..., c n ) będzie formułą atomową, gdzie każde c i jest zmienną x i lub stałą a i. Wartość v σi (A) = 1 wtw, gdy (d 1,..., d n ) R k, gdzie R k jest relacją przyporządkowaną w interpretacji I predykatowi p k, a d i są elementami z dziedziny przyporządkowanymi c i albo przez interpretację, jeśli c i jest stałą, albo przez wartościowanie, jeśli c i jest zmienną. Wartość formuły v σi ( A) = 1 wtw, gdy v σi (A) = 0. v σi ( A 2 ) = 1 wtw, gdy v σi ( ) = 1 lub v σi (A 2 ) = 1. Podobnie dla pozostałych operatorów logicznych. v σi ( xa) = 1 wtw, gdy v σi[xi di] (A) = 1 dla każdego d D. v σi ( xa) = 1 wtw, gdy v σi[xi di] (A) = 1 dla pewnegod D.
Twierdzenia Niech A będzie formułą zamkniętą. Wówczas v σi (A) nie zależy od wartościowania σ I. Niech A = A(x 1,..., x n ) nie będzie formułą zamkniętą, a I niech będzie interpretacją. Wówczas: v σi (A ) = 1 dla pewnego wartościowania σ I wtw, gdy v I ( x 1,..., x n A ) = 1, v σi (A ) = 1 dla wszystkich wartościowań σ I wtw, gdy v I ( x 1,..., x n A ) = 1. Semantyka rachunku predykatów Formuła zamknięta A jest spełniona w interpretacji I, czyli interpretacja I jest modelem A, jeśli v I (A)=1, co oznaczamy I =A. Formuła zamknięta A jest spełnialna, jeśli dla pewnej interpretacji I mamy I =A. Formuła zaknięta A jest prawdziwa, jeśli dla wszystkich interpretacji I mamy I =A, co będziemy oznaczać =A. Formuła A jest niespełnialna, jeśli nie jest spełnialna, a jest nieprawdziwa, gdy nie jest prawdziwa. y Formuła prawdziwa Logiczna równoważność x p(x) p(a) Gdyby formuła nie była prawdziwa, to istniałaby interpretacja I=(D,{R}{d}) taka, że v I ( x p(x)) = 1, a v I (p(a)) = 0. Z Twierdzenia mamy v I (p(x)) = 1, dla wszystkich wartościowań σ i, w szczególności dla wartościowania σ i przyporządkowującego zmiennej x wartość d. Formuła p(a) jest zamknięta, a zatem v σi (a) = v I (p(a)) =0, a to jest sprzeczne z przyjętym założeniem. Niech i A 2 będą formułami zamkniętymi. Jeśli v I ( ) = v I (A 2 ) dla wszystkich interpretacji I, to jest logicznie równoważna A 2, co oznaczamy A 2. A B wtw gdy = A B. U = A wtw gdy = (... A n ) A. Metoda tabel Reguły α i β pozostają w mocy. Metoda tabel Wymagane jest dodanie reguł dla kwantyfikatorów. α 2 α α 1 A 2 A 2 ( A 2 ) ( A 2 ) ( A 2 ) A 2 A 2 A 2 A 2 A 2 ( A 2 ) A 2 A 2 β β 1 (B 1 ) B 1 B 1 B 1 B 1 B 1 B 1 B 1 (B 1 ) B 1 β 2 (B 1 ) (B 1 ) ( B 1 ) B 1 (B 1 ) ( B 1 ) γ x A(x) x A(x) γ(a) A(a) A(a) δ x A(x) x A(x) δ(a) A(a) A(a)
Literał Literałem nazywamy zamkniętą formułę atomową postaci p(a 1,..., a k ), czyli formułę atomową, której argumentami są stałe, jak również negację takiej formuły. Tabela semantyczna T dla formuły A jest drzewem, którego każdy wierzchołek zawiera parę W(n) = (U(n), C(n)), gdzie U(n) = {,..., A k } jest zbiorem formuł, a C(n) = {a 1,..., a m } jest zbiorem stałych występujących w formułach należących do U(n). Początkowo T składa się z pojedynczego wierzchołka, korzenia zawierającego parę ({A}, {a 1,..., a k }), gdzie {a 1,..., a k } jest zbiorem stałych występujących w A. Jeśli formuła A nie zawiera stałych, to należy wybrać dowolną stałą a, wówczas korzeń będzie zawierał parę postaci ({A}, {a}) Tworzenie tabeli semantycznej przebiega iteracyjnie przez wybór nieoznakowanego liścia l, zawierającego W(l) = (U(l), C(l)) i zastosowanie jednej z następujących reguł w podanej kolejności. Jeśli U(l) jest zbiorem literałów i formuł typu γ, zawierającym parę literałów komplementarnych {p(a 1,..., a k ), p(a 1,..., a k )}, to oznacz ten liść jako domknięty x, Jeśli U(l) nie jest zbiorem literałów wybierz dowolną formułę A typu α, β, δ. Jeśli A jest typu α, utwórz nowy wierzchołek l, będący potomkiem wierzchołka l i umieść w nim W(l ) = (U(l ), C(l )) = ((U(l) {A}) {α 1, α 2 }, C(l)). (Jeśli formuła A jest postaci ( ), to nie ma formuły α 2.) Jeśli A jest typu β, utwórz dwa nowe wierzchołki l oraz l jako następniki wierzchołka l. W wierzchołku l umieść W(l ) = (U(l ), C(l )) = ((U(l ) {A}) {β 1 }, C(l)), a w wierzchołku l umieść W(l ) = (U(l ), C(l )) = ((U(l) {A}) {β 2 }, C(l)).
Jeśli A jest typu δ, (na przykład x (x)) utwórz nowy wierzchołek l będący potomkiem wierzchołka l i umieść w nim W(l ) = (U(l ), C(l )) = ((U(l) {A}) {δ(a)}, C(l) {a} gdzie a jest pewną stałą niewystępującą w U(l). Niech {γ 1,..., γ m } U(l) będą wszystkimi formułami typu γ występującymi w U(l) i niech C(l) = {a 1,..., a k }. Utwórz nowy wierzchołek l będący potomkiem wierzchołka l i umieść w nim i= m,j= k W ( l' ) = ( U ( l' ),C ( l' )) = U () l { γi( a j) },C () l i = 1,j= 1 Jeśli U(l) składa się wyłącznie z literałów oraz formuł typu γ oraz U(l ) = U(l), to oznacz ten liść jako otwarty. Metoda tabel Metoda tabel Gałąź tabeli semantycznej nazywamy domkniętą, jeśli jest zakończona liściem oznakowanym jako domknięty. W przeciwnym razie, czyli gdy gałąź jest nieskończona lub zakończona liściem oznakowanym jako otwarty nazywamy ja otwartą. Niech A będzie formułą rachunku predykatów, a T tabelą semantyczną dla A. Jeśli T jest domknięta, to formuła A jest niespełnialna. U(n)={A,...} Niech g będzie otwartą gałęzią systematycznie utworzonej tabeli semantycznej, n wierzchołkiem gałęzi, A zaś formułą ze zbioru U(n). C(n)={a,...} Wówczas istnieje wierzchołek m znajdujący się na gałęzi g, będący potomkiem n, dla którego zastosowano regułę dla formuły A. m Ponadto, jeśli A jest formułą typu γ oraz a C(n), to γ(a) U(m ). U(m )={γ(a),...} n m α α 1 α 2 A 2 ( A 2 ) ( A 2 ) ( A 2 ) A 2 A 2 A 2 ( A 2 ) A 2 A 2 A 2 A 2 A 2
α α 1 α 2 A 2 ( A 2 ) ( A 2 ) A 2 ( A 2 ) A 2 A 2 A 2 ( A 2 ) A 2 A 2 A 2 A 2 x(p(x) q(x)), x p(x), q(a) p(a) q(a), x p(x), q(a) x(p(x) q(x)), x p(x), q(a) (B 1 ) B 1 B 1 B 1 B 1 B 1 B 1 B 1 (B 1 ) B 1 (B 1 ) (B 1 ) ( B 1 ) B 1 (B 1 ) ( B 1 ) x(p(x) q(x)), x p(x), q(a) p(a) q(a), x p(x), q(a) p(a) q(a), p(a), q(a) β β 1 β 2 x(p(x) q(x)), x p(x), q(a) p(a) q(a), x p(x), q(a) p(a) q(a), p(a), q(a) p(a), p(a), q(a) q(a), p(a), q(a) p(a), p(a), q(a) q(a), p(a), q(a)
Zbiór Hintikki Jaakko Hintikka Niech U będzie zbiorem formuł rachunku predykatów. U jest zbiorem Hintikki wtw, gdy wszystkie formuły A U spełniają następujące warunki: 1. Jeśli A jest zamkniętą formułą atomową, to A U lub A U. 2. Jeśli A jest formułą typu α, to α 1 U oraz α 2 U. 3. Jeśli A jest formułą typu β, to β 1 U lub β 2 U. 4. Jeśli A jest formułą typu γ, to γ(a) U dla każdej stałej występującej w formule ze zbioru U. 5. Jeśli A jest formułą typu δ, to δ(a) U dla pewnej stałej a. Zdjęcie z roku 2006. Jaakko Hintikka (ur. 12 stycznia 1929, w Vantaa w Finlandii), fiński logik i filozof. Jako autor lub współautor 30 książek i 300 artykułów naukowych wniósł wkład do takich dziedzin jak logika matematyczna, logika filozoficzna, filozofia matematyki, epistemologia, filozofia języka i filozofia nauki. Uznaje się go za wynalazcę logiki epistemicznej i semantyki teoriogrowej dla logiki. W ostatnich latach pracował głównie nad semantyką teoriogrową i IFlogic (ang. Independence Friendly logic: logika przyjazna wobec niezależności (kwantyfikatorów)), z charakterystycznymi kwantyfikatorami rozgałęzionymi które, jak wierzy, lepiej oddają nasze intuicje językowe związane z kwantyfikatorami niż klasyczna logika pierwszego rzędu. Zbiory Hintikki Niech g będzie otwartą gałęzią systematycznie utworzonej tabeli semantycznej, a U = U n g U(n). Wówczas U jest zbiorem Hintikki. Niech U będzie zbiorem Hintikki. Wówczas zbiór formuł U ma model. Niech A będzie formułą prawdziwą. Wówczas algorytm systematycznego tworzenia tabel utworzy dla formuły A tabelę domknietą. Modele skończone i nieskończone Formuła rachunku predykatów jest nazywana formułą czystą, jeśli nie zawiera symboli funkcyjnych (wliczając stałe, będące funkcjami zeroargumentowymi). Zbiór formuł U ma własność modelu skończonego wtw, gdy jest spełniony następujący warunek: U jest spełnialny wtw, gdy ma model, którego dziedzina jest zbiorem skończonym. Modele skończone i nieskończone Niech U będzie zbiorem formuł czystych postaci: x 1... x k y 1... y l A(x 1,..., x k, y 1,..., y l ) przy czym formuła A nie zawiera kwantyfikatorów. Wówczas zbiór U ma własność modelu skończonego. (Löwenheim) Jeśli formuła jest spełnialna, to ma model przeliczalny. (Löwenheim-Skolem) Jeśli przeliczalny zbiór formuł jest spełnialny, to ma model przeliczalny. (Zwartość) Niech U będzie przeliczalnym zbiorem formuł. Jeśli wszystkie skończone podzbiory U są spełnialne, to zbiór U jest spełnialny. Preneksowa koniunkcyjna postać normalna Formuła jest w preneksowej koniunkcyjnej postaci normalnej wtw, gdy jest postaci Q 1 x 1... Q n x n M gdzie Q i są kwantyfikatorami, a M jest formułą w koniunkcyjnej postaci normalnej, niezawierającą kwantyfikatorów. Ciąg Q 1 x 1... Q n x n jest nazywany prefiksem, a M matrycą formuły. Fomuła jest w koniunkcyjnej postaci normalnej, gdy jest koniunkcja alternatyw literałów.
Rozstrzygalność (Church) Problem prawdziwości formuł rachunku predykatów jest nierozstrzygalny. Istnieje procedura decyzyjna rozwiązująca problem prawdziwości dla klas formuł czystych w preneksowej koniunkcyjnej postaci normalnej, których prefiksy są jednej z następujących postaci (m, n 0): x 1... x n y 1... y m x 1... x n y z 1... z m x 1... x n y 1 y 2 z 1... z m. Rozstrzygalność Dla klas formuł czystych w preneksowej postaci normalnej, których prefiksy sa postaci oraz, nie istnieje procedura decyzyjna rozwiązująca problem prawdziwości, nawet jeśli w matrycach tych formuł występują jedynie predykaty binarne. Rozstrzygalność Istnieje procedura decyzyjna, rozwiązująca problem spełnianości formuł A w preneksowej koniunkcyjnej postaci normalnej, jeśli matryca formuły A jest jednej z następujących postaci: 1.Wszystkie koniunkcje są koniunkcjami jednostkowymi, składającymi się z pojedynczych literałów. 2.Wszystkie koniunkcje są albo pozytywnymi koniunkcjami jednostkowymi (czyli formułami atomowymi), albo składają się wyłącznie z literałów negatywnych. 3.Wszystkie formuły atomowe są monadyczne, czyli wszystkie predykaty są jednoargumentowe. Podsumowanie Składnia i semantyka rachunku predykatów Metoda tabel Rozstrzygalność rachunku predykatów