Aussagenlogik Prädikatenlogik Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Motivation: Prädikatenlogik Wir beschäftigen uns nun im folgenden mit der Prädikatenlogik, die gegenüber der Aussagenlogik folgendes erlaubt: Vorlesung “Logik” Sommersemester 2012 Universität Duisburg-Essen Man kann über ein beliebiges Universum (= Grundmenge) und dessen Elemente Aussagen machen. Man kann quantifizieren: “für alle x gilt . . . ”; “es gibt ein x, so dass . . . ” Barbara König Übungsleitung: Christoph Blume Es gibt mehrstellige Prädikatsymbole (interpretiert als Relationen) und mehrstellige Funktionssymbole (interpretiert als Funktionen). Der Aufbau dieses Kapitels ist ähnlich wie bei der Aussagenlogik: wir beginnen mit Grundbegriffen (Syntax, Semantik, Gültigkeit, Erfüllbarkeit), Äquivalenz und Normalformen, und beschäftigen uns dann mit der Resolution. Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 1 Barbara König Aussagenlogik Prädikatenlogik Syntax der Prädikatenlogik: Variablen, Terme Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 123 Syntax der Prädikatenlogik: Variablen, Terme Definition (Syntax der Prädikatenlogik) Bemerkungen zur Syntax der Prädikatenlogik: Eine Variable hat die Form xi mit i = 1, 2, 3 . . .. Ein Prädikatensymbol hat die Form Pik und ein Funktionssymbol hat die Form fi k mit i = 1, 2, 3 . . . und k = 0, 1, 2 . . .. Hierbei heißt i jeweils der Unterscheidungsindex und k die Stelligkeit (oder Stellenzahl). Es sind auch Funktionssymbole der Stelligkeit 0 eingeschlossen, und in diesem Fall fallen die Klammern weg, d.h., statt c() schreiben wir nur c. Nullstellige Funktionssymbole heißen auch Konstanten(-symbole). Wir definieren nun die Terme durch einen induktiven Prozess: 1 Jede Variable ist ein Term. 2 Falls f ein Funktionssymbol mit der Stelligkeit k ist, und falls t1 , . . . , tk Terme sind, so ist auch f (t1 , . . . , tk ) ein Term. Barbara König Logik Genauso gibt es nullstellige Prädikatsymbole der Form P() bzw. einfach nur P. 124 Barbara König Logik 125 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Syntax der Prädikatenlogik: Variablen, Terme Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Syntax der Prädikatenlogik: Formeln Nun können wir (wiederum induktiv) definieren, was Formeln (der Prädikatenlogik) sind. Weitere Bemerkungen: Für Variablen schreiben wir auch x, y , z, u, v , w , . . . 1 Für Prädikatsymbole schreiben wir auch P, Q, R, S, . . . (die Stelligkeit ergibt sich dann aus dem Kontext). 2 Für Funktionssymbole schreiben wir auch f , g , h, . . . (die Stelligkeit ergibt sich dann ebenfalls aus dem Kontext). 3 Für Konstanten(-symbole) schreiben wir auch a, b, c, d, . . . Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 4 126 Für alle Formeln F und G sind auch (F ∧ G ) und (F ∨ G ) Formeln. Falls x eine Variable ist und F eine Formel, so sind auch ∃xF und ∀xF Formeln. Das Symbol ∃ wird Existenzquantor und ∀ Allquantor genannt. Barbara König Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 127 Freie und gebundene Variablen Bemerkungen: Definition (Freie und gebundene Variable) Atomare Formeln nennen wir genau die, die Form P(t1 , . . . , tn ) haben (gemäß (1)). Falls F eine Formel ist und F als Teil einer Formel G auftritt, so heißt F Teilformel von G . Alle Vorkommen von Variablen in einer Formel werden in freie und gebundene Vorkommen unterteilt. Dabei heißt ein Vorkommen der Variablen x in der Formel F gebunden, falls F eine Formel der Form ∃xG oder ∀xG enthält und x in G vorkommt. Andernfalls heißt dieses Vorkommen von x frei. Quantoren binden stärker als alle anderen Operatoren, d.h., Formeln werden folgendermaßen geklammert: Eine Formel ohne Vorkommen einer freien Variablen heißt geschlossen oder eine Aussage. ∀xP(x) ∧ Q(y ) entspricht (∀xP(x)) ∧ Q(y ) P(x) ∨ ∃yQ(y ) ∨ R(z) entspricht P(x) ∨ (∃yQ(y )) ∨ R(z) Logik Für jede Formel F ist auch ¬F eine Formel. Aussagenlogik Prädikatenlogik Syntax der Prädikatenlogik: Formeln Barbara König Falls P ein Prädikatsymbol der Stelligkeit k ist, und falls t1 , . . . , tk Terme sind, dann ist P(t1 , . . . , tk ) eine Formel. 128 Barbara König Logik 129 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Freie und gebundene Variablen Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aufgabe zur Prädikatenlogik Beispiele für freie und gebundene Variable: ∀xP(x): in dieser Formel kommt x gebunden vor. ∀xQ(x, y ): in dieser Formel kommt x gebunden und y frei vor. (∀xP(x)) ∧ R(x): in dieser Formel hat x sowohl ein gebundenes als auch ein freies Vorkommen. ∀x((∀xP(x)) ∧ R(x)): in dieser Formel ist das erste Vorkommen von x unter dem inneren und das zweite Vorkommen unter dem äußeren Quantor gebunden. NF: Keine Formel NF Die Matrix einer Formel F ist diejenige Formel, die man aus F erhält, indem jedes Vorkommen von ∃ bzw. ∀, samt der dahinterstehenden Variablen gestrichen wird. Symbolisch bezeichnen wir die Matrix der Formel F mit F ∗ . Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick F A: Aussage A ∀∃P(x) ∀xP(a) ∀x∃y (Q(x, y ) ∨ R(x, y )) ∀xQ(x, x) → ∃xQ(x, y ) ∀xP(x) ∨ ∀xQ(x, x) ∀P(x) P(x) → ∃x Definition (Matrix) Barbara König F: Formel, aber nicht Aussage Barbara König 130 Aussagenlogik Prädikatenlogik Aufgabe zur Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 131 Semantik der Prädikatenlogik: Strukturen Definition (Struktur) NF: Keine Formel F: Formel, aber nicht Aussage Eine Struktur ist ein Paar A = (UA , IA ) wobei UA eine beliebige aber nicht-leere Menge ist, die die Grundmenge von A (oder der Grundbereich, der Individuenbereich, das Universum) genannt wird. Ferner ist IA eine Abbildung, die A: Aussage NF F A ∀x¬∀yQ(x, y ) ∧ R(x, y ) ∃z(Q(z, x) ∨ R(y , z)) → ∃y (R(x, y ) ∧ Q(x, z)) ∃x(¬P(x) ∨ P(a)) P(x) → ∃xP(x) ∃x∀y ((P(y ) → Q(x, y )) ∨ ¬P(x)) jedem k-stelligen Prädikatensymbol P (das im Definitionsbereich von IA liegt) eine k-stellige Relation (bzw. ein k-stelliges Prädikat) über UA zuordnet, jedem k-stelligen Funktionssymbol f (das im Definitionsbereich von IA liegt) eine k-stellige Funktion auf UA zuordnet, jeder Variablen x (sofern IA auf x definiert ist) ein Element der Grundmenge UA zuordnet. Barbara König Logik 132 Barbara König Logik 133 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Semantik der Prädikatenlogik: Strukturen Semantik der Prädikatenlogik: Strukturen Bemerkungen zu Strukturen: Die den Prädikatsymbolen zugeordneten Relationen können folgendermaßen dargestellt werden: sei P ein n-stelliges Prädikatsymbol, dann schreiben wir P A = IA (P) mit Eine Struktur ist das analoge Konzept zu Belegungen in der Aussagenlogik. Die den Funktionssymbolen zugeordneten Funktionen können folgendermaßen dargestellt werden: sei f ein n-stelliges Funktionssymbol, dann schreiben wir f A = IA (f ) mit A f : n UA n P A ⊆ UA = UA × · · · × UA {z } | n-mal P → UA (a1 , . . . , an ) 7→ f A (a1 , . . . , an ), f :N → N P A = {(n, m) | n, m ∈ N, n ≤ m} n 7→ n + 1 Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 134 Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 135 Semantik der Prädikatenlogik: Strukturen Definition (Passende Struktur) Definition (Wert eines Terms) Sei F eine Formel und A = (UA , IA ) eine Struktur. A heißt zu F passend, falls IA für alle in F vorkommenden Prädikatsymbole, Funktionssymbole und freien Variablen definiert ist. Sei F eine Formel und A eine zu F passende Struktur. Für jeden Term t, den man aus den Bestandteilen von F bilden kann (also aus den freien Variablen und Funktionssymbolen), definieren wir nun den Wert von t in der Struktur A, den wir mit A(t) bezeichnen. Die Definition ist wieder induktiv. Der Definitionsbereich von IA ist also eine Teilmenge von {Pik , fi k , xi | i = 1, 2, 3, . . . und k = 0, 1, 2, . . .} (wobei alle Prädikatsymbole, Funktionssymbole und freien Variablen von F vorkommen) und der Wertebereich (bzw. Bildbereich) von IA ist eine Teilmenge aller Relationen und Funktionen auf UA , sowie der Elemente von UA . 1 2 Falls t eine Variable ist (also t = x), so ist A(t) = x A . Falls t die Form t = f (t1 , . . . , tk ) hat, wobei t1 , . . . , tk Terme und f ein k-stelliges Funktionssymbol ist, so ist A(t) = f A (A(t1 ), . . . , A(tk )). Fall (2) schließt auch die Möglichkeit ein, dass f nullstellig ist, d.h., t die Form hat t = a. In diesem Fall ist also A(t) = aA . Wir schreiben abkürzend statt IA (P) einfach P A , statt IA (f ) einfach f A und statt IA (x) einfach x A . Logik Barbara König Aussagenlogik Prädikatenlogik Semantik der Prädikatenlogik: Strukturen Barbara König = {(a1 , . . . , an ) | a1 , . . . , an ∈ UA und . . . } PA ⊆ N × N A Aussagenlogik Prädikatenlogik A beispielsweise die zweistellige ≤-Relation auf den natürlichen Zahlen: beispielsweise die einstellige Nachfolgerfunktion auf den natürlichen Zahlen (UA = N): Barbara König Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik 136 Barbara König Logik 137 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Semantik der Prädikatenlogik: Strukturen Semantik der Prädikatenlogik: Strukturen Auf analoge Weise definieren wir (induktiv) den (Wahrheits-)Wert der Formeln F unter der Struktur A, wobei wir ebenfalls die Bezeichnung A(F ) verwenden. Falls F die Form F = (G ∧ H) hat, so ist 1, falls A(G ) = 1 und A(H) = 1 A(F ) = 0, sonst Definition (Wahrheitswert einer Formel) Falls F die Form F = P(t1 , . . . , tk ) hat mit den Termen t1 , . . . , tk und k-stelligem Prädikatsymbol P, so ist 1, falls (A(t1 ), . . . , A(tk )) ∈ P A A(F ) = 0, sonst Falls F die Form F = (G ∨ H) hat, so ist 1, falls A(G ) = 1 oder A(H) = 1 A(F ) = 0, sonst Falls F die Form F = ¬G hat, so ist 1, falls A(G ) = 0 A(F ) = 0, sonst Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 138 Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 139 Modell, Gültigkeit, Erfüllbarkeit Falls F die Form F = ∀xG hat, so ist 1, falls für alle d ∈ UA gilt: A[x/d] (G ) = 1 A(F ) = 0, sonst Definition (Modell) Falls für eine Formel F und eine zu F passende Struktur A gilt A(F ) = 1, so schreiben wir wieder A |= F . Sprechweise: F gilt in A oder A ist Modell für F . Falls F die Form F = ∃xG hat, so ist 1, falls es ein d ∈ UA gibt mit: A[x/d] (G ) = 1 A(F ) = 0, sonst Gültigkeit, Erfüllbarkeit, Unerfüllbarkeit Falls jede zu F passende Struktur ein Modell für F ist, so schreiben wir |= F , andernfalls 6|= F . Sprechweise: F ist (allgemein-)gültig. Falls es mindestens ein Modell für die Formel F gibt, so heißt F erfüllbar, andernfalls unerfüllbar. Hierbei steht A[x/d] für diejenige Struktur A0 , die überall mit A 0 identisch ist, bis auf die Definition von x A . Wir definieren 0 x A = d, wobei d ∈ UA = UA0 – unabhängig davon, ob IA auf x definiert ist oder nicht. Logik Barbara König Aussagenlogik Prädikatenlogik Semantik der Prädikatenlogik: Strukturen Barbara König Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 140 Barbara König Logik 141 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Aufgabe zu Erfüllbarkeit und Gültigkeit Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aufgabe zu Erfüllbarkeit und Gültigkeit Modell A für F = ∀xP(x): Universum UA = N Folgende Formeln sind erfüllbar, aber nicht gültig. Finden Sie jeweils eine Struktur, die ein Modell für die Formel ist, und eine Struktur, die kein Modell für die Formel ist. 1 F = ∀xP(x) 2 G = ∀x∃yQ(x, f (y )) PA = N (das ist die einzige mögliche Interpretation von P, die zu einem Modell führt) Struktur, die kein Modell für F = ∀xP(x) ist: Universum UB = N P B = {n | n gerade} Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 142 Barbara König Aussagenlogik Prädikatenlogik Aufgabe zu Erfüllbarkeit und Gültigkeit Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 143 Aufgabe zu Erfüllbarkeit und Gültigkeit Modell A für G = ∀x∃yQ(x, f (y )) Universum UA = N QA G: Gültig E: Erfüllbar U: Unerfüllbar = {(n, m) | n < m} G f A : N → N mit f A (n) = n + 1 E U ∀xP(a) ∃x(¬P(x) ∨ P(a)) P(a) → ∃xP(x) ∀xP(x) → ∃xP(x) ∀xP(x) ∧ ¬∀yP(y ) ∀xP(x) → ∀xP(f (x)) Struktur, die kein Modell für G = ∀x∃yQ(x, f (y )) ist: Universum UB = N Q B = {(n, m) | n < m} f B : N → N mit f B (n) = 1 Bemerkung: diese Strukturen sind natürlich keineswegs die einzigen Beispiele für Modelle bzw. Nicht-Modelle von F , G . Barbara König Logik 144 Barbara König Logik 145 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Prädikatenlogik mit Gleichheit Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aufgabe zu Erfüllbarkeit und Gültigkeit Bei Prädikatenlogik mit Gleichheit sind Formeln genauso aufgebaut, wie bei herkömmlicher Prädikatenlogik, mit dem Unterschied, dass es ein spezielles Prädikat = gibt, das in Infix-Notation verwendet wird. Das heißt, zur Definition der Syntax wird folgender Satz hinzugefügt: G: Gültig E: Erfüllbar U: Unerfüllbar G Falls t1 , t2 Terme sind, dann ist (t1 = t2 ) eine Formel. E U ∃x∃y ∃z(x 6= y ∧ y 6= z ∧ x 6= z) ∀x∀y (x = y → f (x) = f (y )) ∀x∀y (f (x) = f (y ) → x = y ) ∃x∃y ∃z(f (x) = y ∧ f (x) = z ∧ y 6= z) Außerdem steht (t1 6= t2 ) für ¬(t1 = t2 ). Und die Definition des Wahrheitswert einer Formel wird folgendermaßen ergänzt: Falls F die Form F = (t1 = t2 ) hat mit den Termen t1 , t2 , so ist 1, falls A(t1 ) = A(t2 ) A(F ) = 0, sonst Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 146 Barbara König Aussagenlogik Prädikatenlogik Tarski’s World Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 147 Logik 149 Tarski’s World – Screenshot Tarski’s World Tarski’s World ist eine Lehrsoftware für Prädikatenlogik, entworfen von Jon Barwise und John Etchemendy. Dabei werden die Formeln auf einem Schachbrett evaluiert, auf dem sich Tetraeder, Würfel und Dodekaeder in drei Größen (small, medium, large) befinden können. Gegenüber der allgemeinen Prädikatenlogik gibt es sowohl Einschränkungen an die Syntax von Formeln als auch an die zulässigen Strukturen. Ob eine Formel für eine bestimmte Welt gilt (oder nicht), kann in einem Spiel gegen den Rechner intuitiv veranschaulicht werden. Barbara König Logik 148 Barbara König Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Tarski’s World Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Tarski’s World Einschränkungen an die Syntax – zulässige Konstanten und Prädikatsymbole: Einschränkungen an die Semantik – zulässige Strukturen: Universen bestehen immer aus Mengen von Körpern auf dem Schachbrett. Zulässige Konstanten: a, b, c, d, e, f Zulässige Prädikatsymbole (Auswahl): Einstellig: Tet, Cube, Dodec, Small, Medium, Large Zweistellig: Smaller , Larger , BackOf , FrontOf , LeftOf , RightOf Dreistellig: Between Die Interpretation der Prädikatsymbole ist durch die Größe und Art der Körper und durch ihre Positionierung auf dem Schachbrett festgelegt. Beispielsweise gilt: Tet(a) bedeutet, dass a ein Tetraeder ist. Smaller (a, b) bedeutet, dass a kleiner als b ist. LeftOf (c, d) sagt aus, dass sich c links von d befindet. Between(a, b, c) sagt aus, dass sich a zwischen b und c befindet. Neben den Konstanten kommen in den Formeln bei Tarski’s World keine weiteren Funktionssymbole vor. Variablen, aussagenlogische Operatoren und Quantoren können beliebig benutzt werden. Außerdem ist das Prädikat Gleichheit (=) erlaubt. Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Barbara König 150 Aussagenlogik Prädikatenlogik Tarski’s World Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 151 Folgerung und Äquivalenz Definition (Folgerung) Eine Formel G heißt eine Folgerung der Formeln F1 , . . . , Fk falls für jede Struktur, die sowohl zu F1 , . . . , Fk als auch zu G passend ist, gilt: Daraus folgt: Nicht jede Formel, die in jeder Tarski’s World gilt, ist eine im prädikatenlogischen Sinne gültige Formel. Wenn A Modell von {F1 , . . . , Fk } ist, dann ist A auch Modell von G . Beispiel: ∀x(Small(x) ∨ Medium(x) ∨ Large(x)) Wir schreiben F1 , . . . , Fk |= G , falls G eine Folgerung von F1 , . . . , Fk ist. Definition (Äquivalenz) Zwei Formeln F , G heißen (semantisch) äquivalent, falls für alle Strukturen A, die sowohl für F als auch für G passend sind, gilt A(F ) = A(G ). Hierfür schreiben wir F ≡ G . Barbara König Logik 152 Barbara König Logik 153 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Aufgabe zu Folgerung und Äquivalenz Aufgabe zu Folgerung und Äquivalenz 1 F1 = ∀xP(x) ∨ ∀xQ(x) 1 F1 = ∃y ∀xP(x, y ) 2 F2 = ∀x(P(x) ∨ Q(x)) 2 F2 = ∀x∃yP(x, y ) 3 F3 = ∀xP(x) ∨ ∀yQ(y ) J N J F1 |= F2 F2 |= F3 F3 |= F1 Barbara König Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick N F1 |= F2 F2 |= F1 Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 154 Barbara König Aussagenlogik Prädikatenlogik Aufgabe zu Folgerung und Äquivalenz Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 155 Äquivalenzen Satz (Äquivalenz von prädikatenlogischen Formeln) J ∀x∀yF ≡ ∀y ∀xF ∀x∃yF ≡ ∃x∀yF ∀x∃yF ≡ ∃y ∀xF ∃x∃yF ≡ ∃y ∃xF ∀xF ∨ ∀xG ≡ ∀x(F ∀xF ∧ ∀xG ≡ ∀x(F ∃xF ∨ ∃xG ≡ ∃x(F ∃xF ∧ ∃xG ≡ ∃x(F Seien F und G beliebige Formeln. Dann gilt: N 1 2 ∨ G) ∧ G) ∨ G) ∧ G) 3 4 Barbara König Logik 156 ¬∀xF ≡ ∃x¬F ¬∃xF ≡ ∀x¬F Falls x in G nicht frei vorkommt, gilt: ∀xF ∧ G ≡ ∀x(F ∧ G ) ∀xF ∨ G ≡ ∀x(F ∨ G ) ∃xF ∧ G ≡ ∃x(F ∧ G ) ∃xF ∨ G ≡ ∃x(F ∨ G ) ∀xF ∧ ∀xG ≡ ∀x(F ∧ G ) ∃xF ∨ ∃xG ≡ ∃x(F ∨ G ) ∀x∀yF ≡ ∀y ∀xF ∃x∃yF ≡ ∃y ∃xF Barbara König Logik 157 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Äquivalenzen Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Substitution Definition (Substitution) Sei F eine Formel, x eine Variable und t ein Term. Dann bezeichnet F [x/t] diejenige Formel, die man aus F erhält, wenn man jedes freie Vorkommen der Variablen x in F durch t ersetzt. Durch [x/t] wird eine Substitution beschrieben. Bemerkung: alle Äquivalenzgesetze der Aussagenlogik behalten weiterhin ihre Gültigkeit. Beispiel: Dabei geht man davon aus, dass durch die Substitution keine Variable in t gebunden wird. ∀x¬(P(x) ∧ ¬P(x)) ≡ ∀x(¬P(x) ∨ P(x)) (nach deMorgan) Beispiele für Substitutionen: P(x) ∨ Q(f (x)) ∨ R(y ) [x/g (y )] = P(g (y )) ∨ Q(f (g (y ))) ∨ R(y ) ∀xP(x) ∨ Q(x) [x/g (y )] = ∀xP(x) ∨ Q(g (y )) Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 158 Barbara König Aussagenlogik Prädikatenlogik Substitution Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 159 Bereinigte Formeln Definition (Bereinigte Formel) Unterscheidung zwischen F [x/t] und A[x/d] : Eine Formel heißt bereinigt, sofern es keine Variable gibt, die in der Formel sowohl gebunden als auch frei vorkommt, und sofern hinter allen vorkommenden Quantoren verschiedene Variablen stehen. Bei F [x/t] wird eine syntaktische Ersetzung innerhalb der Formel F vorgenommen. Bei A[x/d] wird eine Struktur verändert, d.h., diese Ersetzung bezieht sich auf die Semantik. Lemma (Gebundene Umbenennung) Der Zusammenhang zwischen beiden Notationen ist wie folgt: Sei y eine Variable, die in F nicht vorkommt. Dann gilt: ∃xF ≡ ∃y (F [x/y ]) Überführungslemma Für jede Formel F , jede Variable x und jeden Term t, der keine in F gebundene Variable enthält, gilt: ∀xF Lemma Zu jeder Formel F gibt es eine äquivalente Formel in bereinigter Form. A(F [x/t]) = A[x/A(t)] (F ). Barbara König Logik ≡ ∀y (F [x/y ]) 160 Barbara König Logik 161 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Pränexform Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Pränexform Verfahren zur Bestimmung der Pränexform: Definition (Pränexform) Gegeben: eine prädikatenlogische Formel F . Eine Formel heißt pränex oder in Pränexform, falls sie folgende Bauart hat Q1 y1 Q2 y2 . . . Qn yn F , 1 2 wobei Qi ∈ {∃, ∀}, n ≥ 0, und die yi (paarweise verschiedene) Variablen sind. Es kommt ferner kein Quantor in F vor. 3 Satz Für jede Formel gibt es eine äquivalente (und bereinigte) Formel in Pränexform. Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Erstelle durch gebundene Umbenennung eine bereinigte Formel, die zu F äquivalent ist. Schieben alle Negationen mit Hilfe der Gesetze ¬∀xF ≡ ∃x¬F und ¬∃xF ≡ ∀x¬F hinter die Quantoren. Ziehe alle Quantoren nach vorne unter Verwendung folgender Gesetze (Annahme: x kommt nicht frei in G vor): (∀xF ∧ G ) ≡ ∀x(F ∧ G ) (∀xF ∨ G ) ≡ ∀x(F ∨ G ) (∃xF ∧ G ) ≡ ∃x(F ∧ G ) (∃xF ∨ G ) ≡ ∃x(F ∨ G ) (Für diese Umformung ist es unbedingt notwendig, dass F zuvor bereinigt wurde.) Barbara König 162 Aussagenlogik Prädikatenlogik Pränexform Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 163 Skolemform Wir definieren nun noch die Skolemform, in der keine Existenzquantoren mehr enthalten sind. Beispiel: Formen Sie die folgende Formel in Pränexform um. Definition (Skolemform) Eine Formel ist in Skolemform, falls sie folgende Bauart hat F = (∀x∃y P(x, g (y , f (x))) ∨ ¬Q(z)) ∨ ¬∀x R(x, y ) ∀y1 ∀y2 . . . ∀yn F , wobei n ≥ 0, und die yi (paarweise verschiedene) Variablen sind. Es kommt ferner kein Quantor in F vor. Barbara König Logik 164 Barbara König Logik 165 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Skolemform Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Skolemform Für jede Formel F in bereinigter Pränexform (BPF) definieren wir ihre Skolemform(-el) als das Resultat der Anwendung des folgenden Algorithmus auf F : Satz Für jede Formel F in bereinigter Pränexform gilt: F ist erfüllbar genau dann, wenn die Skolemform von F erfüllbar ist. while F enthält einen Existenzquantor do begin F habe die Form F = ∀y1 ∀y2 . . . ∀yn ∃z G für eine Formel G in BPF und n ≥ 0 (der Allquantorblock kann auch leer sein); Sei f ein neues bisher in F nicht vorkommendes n-stelliges Funktionssymbol; F := ∀y1 ∀y2 . . . ∀yn G [z/f (y1 , y2 , . . . , yn )]; (der Existenzquantor in F wird entfernt und jedes Vorkommen von z in G durch f (y1 , y2 , . . . , yn ) ersetzt) end Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Bemerkung: die Umformung in die Skolemform erhält nur die Erfüllbarkeit von Formeln, nicht jedoch deren Gültigkeit! Man sagt daher, dass die Formel F und ihre Skolemform erfüllbarkeitsäquivalent sind. Sie sind im allgemeinen jedoch nicht äquivalent. 166 Barbara König Aussagenlogik Prädikatenlogik Skolemform Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 167 Skolemform Beispiel 2: Gegeben sei die Formel Beispiel 1: Formen Sie folgende Formel in Skolemform um. F = ∀x∃y P(x, y ) F = ∃x∀y ∃z∀u∃vP(x, y , z, u, v ) Bestimmen Sie zunächst die Skolemform F 0 von F . Geben Sie ein Modell von F an und erweitern Sie es zu einem Modell von F 0 . Barbara König Logik 168 Barbara König Logik 169 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Aussagenlogik Prädikatenlogik Klauselform Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Klauselform Definition (Klauselform) Verfahren zur Bestimmung der Klauselform: Eine Aussage heißt in Klauselform, falls sie die Bauart hat Gegeben: eine prädikatenlogische Formel F (mit eventuellen Vorkommen von freien Variablen). ∀y1 ∀y2 . . . ∀yn F , 1 wobei F keine Quantoren enthält und in KNF (konjunktiver Normalform) ist. 2 Eine Aussage in Klauselform kann als Menge von Klauseln dargestellt werden. Beispiel: ∀x∀y ((P(x, y ) ∨ Q(x)) ∧ R(y )) ist in Klauselform und wird dargestellt als: 3 {{P(x, y ), Q(x)}, {R(y )}} Barbara König Aussagenlogik Prädikatenlogik Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Bereinige F durch systematisches Umbenennen der gebundenen Variablen. Es entsteht eine zu F äquivalente Formel F1 . Seien y1 , y2 , . . . , yn die in F bzw. F1 vorkommenden freien Variablen. Ersetze F1 durch F2 = ∃y1 ∃y2 . . . ∃yn F1 . Dann ist F2 erfüllbarkeitsäquivalent zu F1 und F und enthält keine freien Variablen mehr. Stelle eine zu F2 äquivalente (und damit zu F erfüllbarkeitsäquivalente) Aussage F3 in Pränexform her. 170 Barbara König Aussagenlogik Prädikatenlogik Klauselform Logik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick 171 Klauselform Welche dieser Formel sind bereinigt, in Pränexform, in Skolemform, in Klauselform? 4 5 Eliminiere die vorkommenden Existenzquantoren durch Übergang zur Skolemform von F3 . Diese sei F4 und ist dann erfüllbarkeitsäquivalent zu F3 und damit auch zu F . B Logik S K ∀x(Tet(x) ∨ Cube(x) ∨ Dodec(x)) ∃x∃y (Cube(y ) ∨ BackOf(x, y )) ∀x(¬FrontOf(x, x) ∧ ¬BackOf(x, x)) ¬∃xCube(x) ↔ ∀x¬Cube(x) ∀x(Cube(x) → Small(x)) → ∀y (¬Cube(y ) → ¬Small(y )) (Cube(a) ∧ ∀xSmall(x)) → Small(a) ∃x(Larger(a, x) ∧ Larger(x, b)) → Larger(a, b) Forme die Matrix von F4 um in KNF, wodurch man die Klauselform erhält (und schreibe diese Formel F5 dann als Klauselmenge auf). Barbara König P 172 Barbara König Logik 173 Aussagenlogik Prädikatenlogik Grundbegriffe, Äquivalenz und Normalformen Herbrandtheorie und Resolution Grundlagen der Logik-Programmierung und Ausblick Klauselform Beispiel: Formen Sie die folgenden Formeln in Klauselform um: F1 = ∀xP(x) → ∀xP(f (x)) F2 = (∀x∃y P(x, g (y , f (x))) ∨ ∀z¬Q(z)) ∧ ¬∀x R(x, x) Barbara König Logik 174