Aufgabe - Fortsetzung NF: Nicht-Formel F: Formel A: Aussage x :( y : Q(x, y) R(x, y)) z :(Q(z, x) R(y, z)) y :(R(x, y) Q(x, z)) x :( P(x) P(f (a))) P(x) x : P(x) x y :((P(y) Q(x, y)) P(x)) x x : Q(x, x) NF F A 178
Semantik der Prädikatenlogik Erinnerung: Die Frage Ist die aussagenlogische Formel F wahr oder falsch? war sinnlos, denn wir wissen i.a. nicht, ob die atomaren Aussagen wahr oder falsch sind. Analog: Die Frage Ist die prädikatenlogische Formel F wahr oder falsch? ist sinnlos, denn wir wissen bisher nicht, über welche Objekte, über welche Struktur F spricht. 179
Semantik der Prädikatenlogik: Strukturen Eine Struktur ist ein Paar A =(U A, I A )mit: U A ist eine beliebige aber nichtleere Menge, die die Grundmenge von A (oder der Grundbereich, derindividuenbereich, dasuniversum) genannt wird. Ferner ist I A eine Abbildung, die jedem k-stelligen Relationssymbol P aus dem Definitionsbereich von I A eine k-stellige Relation I A (P) U k A zuordnet, jedem k-stelligen Funktionssymbol f aus dem Definitionsbereich von I A eine k-stellige Funktion I A (f ):U k A U A zuordnet und jeder Variablen x aus dem Definitionsbereich von I A ein Element I A (x) U A zuordnet. Wir schreiben häufig P A, f A und x A für I A (P), I A (f )bzw.i A (x). 180
Beispiel für Struktur A =(N, I A ) wobei P A = {(m, n) m, n N, m < n} Q A = {n n ist Primzahl} f A (n) = n +1für alle n N g A (m, n) = m + n für alle m, n N a A = 2 z A = 3 In einem intuitiven Sinne gilt die Formel Q(g(a, z)) x : P(x, f (x)) in der Struktur A, aber die Frage nach der Gültigkeit von R(z) bzw. y : P(g(x, y)) in A ist weiterhin sinnlos. 181
Intermezzo: null-stellige Relationen Eine zwei-stellige Relation ist eine Teilmenge von U 2 A. Eine ein-stellige Relation ist eine Teilmenge von U 1 A. Eine null-stellige Relation ist eine Teilmenge von U 0 A. UA 2 = {(a 1, a 2 ) a 1, a 2 U A } UA 1 = {(a 1) a 1 U A } UA 0 = {()} = Ist A eine Struktur und R ein null-stelliges Relationssymbol, so gibt es genau zwei Möglichkeiten für R A,nämlich R A = {()} und R A =. 182
Passende Strukturen Sei F eine Formel oder ein Term und A =(U A, I A )einestruktur. Die Struktur A paßt zu F,fallsI A für alle in F vorkommenden Relationssymbole, Funktionssymbole und freien Variablen definiert ist. Paßt A zur Formel F (und nur dann), kann die Frage Gilt F in A? sinnvoll beantwortet werden (siehe folgende Folien). 183
Auswertung eines Terms in einer Struktur Sei t Term und A eine zu t passende Struktur. Der Wert A(t) U A von t in der Struktur A ist induktiv definiert: 1 Falls t eine Variable ist (also t = x), so ist A(t) =x A. 2 Sei t = f (t 1,...,t k )mitdenterment 1,...,t k und dem k-stelligen Funktionssymbol f.daa zu t paßt, paßt A auch zu t 1, t 2,...,t k und I A (f )=f A ist definiert. Also können wir A(t) =f A (A(t 1 ),...,A(t k )) setzen. Der Fall 2 schließt auch die Möglichkeit ein, daß f nullstellig ist, also t die Form t = a hat. In diesem Fall ist also A(t) =a A. 184
Auswertung eines Terms in einer Struktur: Beispiel Sei A =(R, I A )mitf A die Subtraktion, a nullstelliges Funktionssymbol mit a A = 10, x und y Variable mit x A =7und y A = 2, so gilt A(f (a, f (x, y))) = A(a) (A(x) A(y)) = a A (x A y A )=1 Sei A =(Z, I A )mitf A die Maximumbildung, a nullstelliges Funktionssymbol mit a A = 10, x und y Variable mit x A =7und y A = 2, so gilt A(f (a, f (x, y))) = max(a(a), max(a(x), A(y)) =max(a A, max(x A, y A )) = 10 allgemein: Die Semantik ( Bedeutung ) eines Terms ist in gewissem Sinn eine Auswerteprozedur, die für alle passenden Strukturen A sinnvoll ist. Der Wert A(t) destermst in der Struktur A ist dann das Ergebnis der Auswertung, ein Element von U A. 185
Auswertung in einer Struktur Auf analoge Weise definieren wir induktiv den (Wahrheits-)Wert A(F ) {0, 1} der Formel F in der passenden Struktur A: Sei F = P(t 1,...,t k )mitdenterment 1,...,t k und k-stelligem Relationssymbol P. DaA zu F paßt, paßt A auch zu t 1, t 2,...,t k und I A (P) =P A ist definiert. Also können wir setzen: { 1 falls (A(t 1 ),...,A(t k )) P A A(F )= 0 sonst Sei F =(t 1 = t 2 )mitdenterment 1 und t 2.DaAzu F paßt, paßt A auch zu t 1 und zu t 2.Alsokönnen wir setzen: { 1 falls A(t 1 )=A(t 2 ) A(F )= 0 sonst 186
Intermezzo: null-stellige Relationssymbole Sei F = R() und R null-stelliges Relationssymbol. Dann gilt A(F ) = 1 gdw. () R A. Wir wissen bereits, daß es genau zwei Möglichkeiten für R A gibt, nämlich R A = {()} oder R A =. Manerhält also A(F ) = 1 gdw. R A = {()}. Damit können die null-stelligen Relationen als Kodierung von atomaren Formeln der Aussagenlogik genutzt werden, die Strukturen kodieren dabei die Belegungen. 187
Auswertung in einer Struktur: Fortsetzung Sei F = G. DannpaßtAauch zu G, wirkönnen also setzen: { 0 falls A(G) =1 A(F )=1 A(G) = 1 sonst Sei F =(G H). Dann paßt A auch zu G und zu H, wirkönnen also setzen: { 1 falls A(G) =A(H) =1 A(F )= 0 sonst Sei F =(G H). Dann paßt A auch zu G und zu H, wirkönnen also setzen: { 1 falls A(G) =1oderA(H) =1 A(F )= 0 sonst 188
Auswertung in einer Struktur: Intermezzo Sei A =(U A, I A )Struktur,a U A und x Variable. Dann ist A [x/a] =(U A[x/a], I A[x/a] ) diejenige Struktur, die überall mit A identisch ist (insbes. verwenden A und A [x/a] dieselbe Grundmenge, d.h. U A = U A[x/a] ), bis auf die Definition von x A [x/a]. Es ist nämlich x A [x/a] = a unabhängig davon, ob x A definiert ist oder nicht (und wenn ja, wie). 189
Auswertung in einer Struktur: Fortsetzung (und Abschluß) Sei F = x : G. DaA zu F paßt, paßt A [x/a] für alle a U A zu G. Wir können also setzen: { 1 falls A A(F )= [x/a] (G) =1für alle a U A 0 sonst Sei F = x : G. DaA zu F paßt, paßt A [x/a] für alle a U A zu G. Wir können also setzen: { 1 falls es ein a U A gibt mit A A(F )= [x/a] (G) =1 0 sonst 190
Aufgabe Wir betrachten die folgende Struktur N =(N, I N )mit add N (m, n) =m + n mult N (m, n) =m n für alle m, n N P N = {p N p ist Primzahl oder p =0} Z N =0 E N =1 Welche der folgenden Aussagen gelten? 1 N = x y z : add(add(x, y), z) =add(x, add(y, z)) 2 N = x y z : add(x, mult(y, z)) = mult(add(x, y), add(x, z)) 3 N = x y z : mult(x, add(y, z)) = add(mult(x, y), mult(x, z)) 4 N = x y : add(x, y) =Z 5 N = x y z :(P(y) P(z) add(y, z) =mult(add(e, E), x)) 191
Aufgabe Wir betrachten eine Struktur A, deren Universum die Knoten des folgenden Graphen sind; E A ist die Adjazenzrelation. Welche der folgenden Formeln gelten in A? 1 x y : E(x, y) 2 x y : E(x, y) 3 x y :(E(x, y) x = y) 4 x y :(E(x, y) x = y) 5 x y z :(E(x, y) E(y, z) E(z, x)) 192
Modelle Seien F eine Formel und A eine passende Struktur. Falls A(F )=1 soschreibenwir A = F und sagen F gilt in A oder A ist ein Modell für F Falls A(F )=0 soschreibenwir A = F und sagen F gilt nicht in A oder A ist kein Modell für F 193
Gültigkeit und Erfüllbarkeit Erfüllbarkeit: Eine Formel F heißt erfüllbar, fallsf mindestens ein Modell besitzt, andernfalls heißt F unerfüllbar. Eine (endliche oder unendliche!) Menge von Formeln M heißt erfüllbar, falls es eine Struktur gibt, die für jede Formel in M ein Modell ist. Gültigkeit: Eine Formel F heißt gültig (oder allgemeingültig oder Tautologie) fallsjedezuf passende Struktur ein Modell für F ist. Wir schreiben = F,fallsF gültig ist, und = F sonst. Widerlegbarkeit: Eine Formel F heißt widerlegbar, falls sie keine Tautologie ist, d.h. falls F ein Modell hat. 194
Beispiele Die (geschlossene) Formel F 1 =( x : R(x) x : R(f (x))) ist Tautologie. Beweis: Sei A zu passende Struktur. Wir betrachten zwei Fälle: 1 Falls A = x : R(x), so gilt A = F. 2 Wir nehmen nun A = x : R(x) an.seia U A beliebig und b = f A (a). Dann haben wir A = x : R(x), also A [x/b] = R(x) und damit A [x/a] = R(f (x)). Da a U A beliebig war, haben wir also A = x : R(f (x)). Also gilt auch in diesem Fall A = F. Die Formel F = x : R(x, y) x : R(f (x), y) istunerfüllbar. Beweis: Angenommen, dies wäre nicht der Fall. Dann gäbe es eine zu F passende Struktur A mit A = F. 1 Insbesondere haben wir A = x : R(f (x), y). Also gibt es a U A mit A [x/a] = R(f (x), y). Mit b = f A (a) erhalten wir (b, y A ) / R A. 2 Wegen A = F haben wir auch A = x : R(x, y) unddamit A [x/b] = R(x, y), also (b, y A ) R A, ein Widerspruch. 195