Logika A 3. LOGIKA PIERWSZEGO RZȨDU Struktury, formuly, spelnianie. 3.1. Struktury. Jȩzyk L : zbiór symboli relacyjnych (predykatów), funkcyjnych m i stalych : L = (P1n1 , ..., Pini , ..., F1m1 , ..., Fj j , ..., c1 , ..., ck , ...). Struktura M jȩzyka L sklada siȩ ze zbioru A (uniwersum struktury) i interpretacji symboli jȩzyka L na zbiorze A: każdy Pini jest interpretowany jako relacja ni m argumentowa na A, każdy Fj j jest interpretowany jako funkcja mi -argumentowa na A, każdy ck jest interpretowany jako element ze zbioru A. Podzbiór B ⊆ A tworzy podstrukturȩ M 0 struktury M jeśli elementy interpretuja̧ce symbole stalych (w M ) należa̧ do B i funkcje interpretuja̧ce symbole funkcyjne (w M ) odwzorowuja̧ B mi w B. Wtedy symbole relacyjne i funkcyjne jȩzyka L interpretujemy na B jako odpowiednie relacje i funkcje struktury M ograniczone do B (stale na B interpretujemy tak samo jak w M ). Przyklad: Niech L = (P 2 , F 2 , G2 , c1 , c2 ). Struktura N = (N, <, +, ·, 0, 1) (gdzie zbiór liczb naturalnych N jest uniwersum) określa interpretacje symboli L jako: uporza̧dkowanie liczb naturalnych, funkcje dodawania i mnożenia, i liczby naturalne 0, 1. Niech Z bȩdzie zbiorem liczb calkowitych i Z = (Z, <, +, ·, 0, 1). N jest podstruktura̧ Z. 3.2. Zadanie: Niech L = (F 1 , c), a Z jest uniwersum struktury M , gdzie F 1 jest interpretowany jako funkcja dodawania 1 (y = x + 1) a c jest interpretowany jako liczba 6. Czy zbiór liczb parzystych tworzy podstrukturȩ ? Czy zbiór liczb naturalnych tworzy podstrukturȩ ? Jakie podzbiory zbioru Z tworza̧ podstruktury M ? m 3.3. Termy. Niech L = (P1n1 , ..., Pini , ..., F1m1 , ..., Fj j , ..., c1 , ..., ck , ...) bȩdzie jȩzykiem. Wyrażenie t nazywa siȩ termem jȩzyka L jeśli (przez indukcjȩ): 1. t jest zmienna̧ xi lub symbolem ck ∈ L; m 2. t ma postać Fj (t1 , ..., tmj ), gdzie Fj j ∈ L i t1 , ..., tmj sa̧ termami. Przyklad : (x + 1) · 0 jest termem jȩzyka (<, +, ·, 0, 1). 3.4. Formuly. Formula̧ atomowa̧ jȩzyka L nazywa siȩ wyrażenie postaci t1 = t2 lub Pi (t1 , ..., tni ), gdzie t1 , t2 , ..., tni sa̧ termami i Pini ∈ L. Wyrażenie φ nazywa siȩ formula̧ jȩzyka L jeśli (przez indukcjȩ): 1. φ jest formula̧ atomowa̧; 2. φ ma postać ¬ψ1 (negacja) lub ψ1 ∧ ψ2 (koniunkcja), ψ1 ∨ ψ2 (alternatywa), ψ1 → ψ2 (implikacja), gdzie ψ1 i ψ2 sa̧ formulami; 3. φ ma postać ∀xψ (kwantyfikator ”dla każdego”) lub ∃xψ (kwantyfikator ”istnieje”) gdzie ψ jest formula̧ (nazywamy ja̧ dziedzina̧ kwantyfikatora) i x jest zmienna̧. Miejsce wystȩpowania zmiennej x w φ nazywa siȩ zwia̧zanym jeśli miejsce to znajduje siȩ w dziedzinie kwantyfikatora wzglȩdem x. Zmienna x jest wolna w φ jeśli ma miejsce niezwia̧zane. 3.5. Spelnianie. Niech M bȩdzie struktura̧ jȩzyka L. Interpretacja̧ zmiennych 1 x1 , ..., xn nazywamy odwzorowanie I : {x1 , ..., xn } → M (w uniwersum). Wtedy ai = I(xi ) sa̧ wartościami odpowiednich zmiennych. Jeśli zmienne termu t należa̧ do zbioru {x1 , ..., xn } to wartość termu wzglȩdem interpretacji I (oznaczamy przez t(a1 , ..., an )) definiuje siȩ przez indukcjȩ: 1. jeśli t = xi , to t(a1 , ..., an ) = ai ; 2. jeśli t = ck , to t(a1 , ..., an ) jest interpretacja̧ ck w M ; 3. jeśli t = Fj (t1 , ..., tmj ), to t(a1 , ..., an ) jest wartościa̧ funkcji odpowiadaja̧cej Fj na elementach b1 , ..., bmj ∈ M gdzie bl = tl (a1 , ..., an ), 1 ≤ l ≤ mj . Jeśli każda zmienna wolna w φ jest elementem zbioru {x1 , ..., xn }, to mówimy że φ jest spelniona (lub prawdziwa) w M wzglȩdem interpretacji I (oznaczamy M |= φ(a1 , ..., an )) jeśli zachodzi jeden z podanych niżej przypadków: 1. φ jest postaci t1 = t2 i wartości t1 (a1 , ..., an ) i t2 (a1 , ..., an ) sa̧ równe; 2. φ jest postaci Pi (t1 , ..., tni ) i cia̧g (t1 (a1 , ..., an ), ..., tni (a1 , ..., an )) należy do relacji odpowiadaja̧cej Pi w M ; 3. φ jest postaci ¬ψ1 i M 6|= ψ(a1 , ..., an ); 4. φ jest postaci ψ1 ∧ψ2 i zachodza̧ warunki M |= ψ1 (a1 , ..., an ) i M |= ψ2 (a1 , ..., an ); 5. φ jest postaci ψ1 ∨ ψ2 i zachodzi warunek M |= ψ1 (a1 , ..., an ) lub warunek M |= ψ2 (a1 , ..., an ); 6. φ jest postaci ψ1 → ψ2 i zachodzi M 6|= ψ1 (a1 , ..., an ) lub M |= ψ2 (a1 , ..., an ); 7. φ jest postaci ∀xψ(a1 , ..., an , x) i M |= ψ(a1 , ..., an , a) dla każdego a ∈ M . 8. φ jest postaci ∃xψ(a1 , ..., an , x) i M |= ψ(a1 , ..., an , a) dla pewnego a ∈ M . Jeśli M 6|= φ(a1 , ..., an ), to mówimy, że φ jest falszywa w M wzglȩdem interpetacji I. Jeśli M |= φ(a1 , ..., an ) dla wszystkich M i I : {x1 , ..., xn } → M , to mówimy, że φ jest tautologia̧. Jeśli M 6|= φ(a1 , ..., an ) dla wszystkich M i I : {x1 , ..., xn } → M , to mówimy, że φ jest sprzeczna. Mówimy, że φ jest wnioskiem ze zbioru formul Γ (oznaczamy Γ |= φ), jeśli dla każdych M i I : {x1 , ..., xn } → M warunek M |= ψ(a1 , ..., an ) dla wszystkich ψ ∈ Γ implikuje M |= φ(a1 , ..., an ). Jeśli {φ} |= ψ i {ψ} |= φ, to mówimy, że φ i ψ sa̧ równoważne. 3.6. Zadania dotycza̧ce arytmetyki elementarnej. 1. Niech L = (P 2 , F 2 , G2 , c1 , c2 ). Niech struktura N = (N, <, +, ·, 0, 1) (gdzie zbiór liczb naturalnych N jest uniwersum) określa interpretacje symboli L jako: uporza̧dkowanie liczb naturalnych, funkcje dodawania i mnożenia, i liczby naturalne 0, 1. (Formuly jȩzyka L nazywamy formulami arytmetyki elementarnej.) (a) Podać formulȩ φ(x) taka̧, że N |= φ(n) wtedy i tylko wtedy gdy n jest parzysta; (b) Podać formulȩ φ(x) taka̧, że N |= φ(n) wtedy i tylko wtedy gdy n jest liczba̧ pierwsza̧ 2∗ . β-funkcja Gödla jest zdefiniowana nastȩpuja̧co: β(x, y, z) = rest(x, 1 + y(z + 1)), gdzie rest(u, v) = reszta z dzielenia u przez v 2 Stosuja̧c chińskie twierdzenie o resztach udowodnić, że każdy uklad nastȩpuja̧cej postaci ma rozwia̧zanie: β(x, y, 0) = a0 ........... . .. . β(x, y, n) = an 3. Udowodnić, że istnieje formula elementarnej arytmetyki φ, która formalizuje zdanie, że każdy skończony podzbiór zbioru N posiada element minimalny. (Wykorzystać Zadanie 3.6(2).) 3.7. Zadania. 1. Pokazać, że nastȩpuja̧ce formuly sa̧ równoważne (gdzie Q ∈ {∀, ∃}): (a) Qxφ ∨ ψ i Qx(φ ∨ ψ), gdzie x nie jest zmienna̧ wolna̧ w ψ; (b) Qxφ ∧ ψ i Qx(φ ∧ ψ), gdzie x nie jest zmienna̧ wolna̧ w ψ; (c) ¬(∀xφ) i ∃x(¬φ); (d) ¬(∃xφ) i ∀x(¬φ); (e) ∀xφ ∧ ∀xψ i ∀x(φ ∧ ψ); (f) ∃xφ ∨ ∃xψ i ∃x(φ ∨ ψ); (g) Qxφ i Qz(φ)xz , gdzie (φ)xz jest formula̧ otrzymana̧ z φ po zasta̧pieniu x przez z we wszystkich miejscach gdzie x ma wystȩpowanie wolne w φ; (h) Q1 xφ ∧ Q2 xψ i Q1 xQ2 z(φ ∧ (ψ)xz ), gdzie z nie wystȩpuje w φ; (i) Q1 xφ ∨ Q2 xψ i Q1 xQ2 z(φ ∨ (ψ)xz ), gdzie z nie wystȩpuje w φ; 2. Mówimy że φ ma postać normalna̧, jeśli φ = Q1 x1 ...Qn xn ψ, gdzie Qi ∈ {∀, ∃} i ψ nie zawiera kwantyfikatorów. Udowodnić Twierdzenie. Każda formula jest równoważna formule w postaci normalnej. 3. Znaleźć postaci normalne równoważne nastȩpuja̧cym formulom: (a) ∃x∀yP1 (x, y, z) ∧ ∃x∀yP2 (x, y); (b) ∀x∀y(∃zP1 (x, y, z, u) ∧ (P1 (x, y, z, u))xy ) → ∃uP2 (x, z, u); Dodatek: RELACJE Iloczyn kartezjański: A × B := {(a, b) : a ∈ A i b ∈ B} (zakladamy, że (x, y) i (u, v) sa̧ równe wtedy i tylko wtedy gdy x = u i y = v); An := {(x1 , ..., xn ) : xi ∈ A}; Relacja n-argumentowa (n-arna) na A: R ⊂ An , piszemy R(a1 , ..., an ) jeśli (a1 , ..., an ) ∈ R; F ⊆ An × B jest funkcja̧ n-argumentowa̧ ze zbioru A w zbiór B (oznaczamy przez F : An → B) jeśli warunki (a1 , ..., an , b1 ) ∈ F i (a1 , ..., an , b2 ) ∈ F implikuja̧ b1 = b2 ; piszemy F (a1 , ..., an ) = b; Dziedzina: Dom(F ) = {(a1 , ..., an ) ∈ An : dla pewnego b ∈ B, F (a1 , ..., an ) = b}; Obraz: Im(F ) = {b ∈ B : dla pewnego (a1 , ..., an ) ∈ An , F (a1 , ..., an ) = b}; Obraz zbioru R ⊆ An : niech F (R) = {b ∈ B : dla pewnego (a1 , ..., an ) ∈ R, F (a1 , ..., an ) = b}; Przeciwobraz zbioru C ⊆ B: niech F −1 (C) = {(a1 , ..., an ) ∈ An : dla pewnego b ∈ C, F (a1 , ..., an ) = b}. Niech F : A → B i G : B → C. Funkcja zlożona GF : A → C: GF (x) = G(F (x)). 3 Udowodnić: (A1 ∪ A2 ) × B = A1 × B ∪ A2 × B; (A1 \ A2 ) × B = A1 × B \ A2 × B; F (GH) = (F G)H dla H : A → B, G : B → C, F : C → D; F (A1 ∪ A2 ) = F (A1 ) ∪ F (A2 ); F (A1 ∩ A2 ) ⊆ F (A1 ) ∩ F (A2 ). 4