Formale Grundlagen der Informatik 1 Kapitel 21 Prädikatenlogische Resolution

Ähnliche Dokumente
Ablauf. Formale Grundlagen der Informatik 1 Kapitel 21 Prädikatenlogische Resolution. Eine besondere Formel. Eine besondere Formel

Formale Grundlagen der Informatik 3 Kapitel 4 Prädikatenlogik Resolution

Herbrand-Universum. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Herbrand-Universum. Herbrand-Universum

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle

Modellierungsmethoden der Informatik Kapitel 2: Logikkalküle

Wiederholung: Resolution in der Aussagenlo. Resolution in der Prädikatenlogik. Definition von Res(F) (Wiederholung)

Sogar Strukturen mit unendlichem Universum müssen betrachtet werden:

Prädikatenlogische Entscheidbarkeitsprobleme

Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik

Logik für Informatiker

Motivation. Formale Grundlagen der Informatik 1 Kapitel 17. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel

Formale Grundlagen der Informatik 1 Kapitel 17. Syntax & Semantik

Logik für Informatiker

Logik Grundvorlesung WS 17/18 Folien Teil 2: Prädikatenlogik

Logik Vorlesung 10: Herbrand-Theorie

Logik Vorlesung 10: Herbrand-Theorie

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Logik-Grundlagen. Syntax der Prädikatenlogik

Entscheidungsverfahren für Bernays/Schönfinkelbzw. Datenlogik-Formeln

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch

Frank Heitmann 2/48. 2 Substitutionen, um formal auszudrücken wie in Formelmengen. auf!

Ralf Möller, TUHH. Beim vorigen Mal: Heute: Prädikatenlogik: Algorithmus für Erfüllbarkeitsproblem. Lernziele: Beweisverfahren für Prädikatenlogik

Logik für Informatiker

Logik Vorlesung 12: Unifikation und Resolution

Formale Systeme, WS 2012/2013. Lösungen zu Übungsblatt 7

Formale Systeme. Tableaukalku l (ohne Gleichheit) Prof. Dr. Bernhard Beckert, WS 2015/ KIT I NSTITUT F U R T HEORETISCHE I NFORMATIK

Prädikatenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Normalformen und Grenzen der Prädikatenlogik 1. Stufe

Wissensbasierte Systeme 7. Prädikatenlogik

Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen. notwendig: Existenz- und Allaussagen

Formale Systeme. Prof. Dr. Bernhard Beckert, WS 2017/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft

Formale Systeme. Prof. Dr. Bernhard Beckert, WS 2016/ KIT Die Forschungsuniversita t in der Helmholtz-Gemeinschaft

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich

Erfüllbarkeitstests. Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl.

Resolutionsalgorithmus

Logik Vorlesung 9: Normalformen

Logik Vorlesung 8: Modelle und Äquivalenz

Kapitel L:III. III. Prädikatenlogik

Kurseinheit 1 Einführung und mathematische Grundlagen Aussagenlogik

Einführung in die Logik

TU7 Aussagenlogik II und Prädikatenlogik

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:

Motivation. Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel

Logik für Informatiker

Prädikatenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Normalformen und Grenzen der Prädikatenlogik 1. Stufe

Aufgabe - Fortsetzung

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Musterlösung der Klausur zur Vorlesung Logik für Informatiker

Formale Systeme. Das Erfu llbarkeitsproblem. Prof. Dr. Bernhard Beckert, WS 2017/2018

Grundlagen der Logik

Terme. Dann ist auch f(t 1. Terme. Dann ist P (t 1

Formale Grundlagen der Informatik 1 Kapitel 23 NP-Vollständigkeit (Teil 2)

Formale Systeme, WS 2013/2014. Lösungen zu Übungsblatt 5

Resolution und Regeln

Prädikatenlogik: Syntax

7. Prädikatenlogik. Aussagenlogik hat wünschenswerte Eigenschaften wie Korrektheit, Vollständigkeit, Entscheidbarkeit.

Kapitel 1.5 und 1.6. Ein adäquater Kalkül der Aussagenlogik

SLD-Ableitungsbäume. G = B 1... B m. G die Menge aller SLD-Resolventen von G und definiten. G einen Nachfolger, der mit G markiert ist.

Syntax der Prädikatenlogik: Variablen, Terme. Formeln. Freie und gebundene Variablen, Aussagen. Aufgabe

Logik für Informatiker

Logik für Informatiker

Substitution. Unifikation. Komposition der Substitution. Ausführung der Substitution

Aufgabe 13 (Markierungsalgorithmus). Gegeben ist die Formel F = (A D C) (E A) ( ( B D) E) A B (B D)

Beweisen mit Semantischen Tableaux

Logik für Informatiker

Logik Vorlesung 3: Äquivalenz und Normalformen

Logik für Informatiker

Einführung in die Logik, Übungsklausur 2016/07/11

Die Prädikatenlogik erster Stufe: Syntax und Semantik

Formale Grundlagen der Informatik 1 Kapitel 13 Aussagenlogik Syntax & Semantik

8 Der Kompaktheitssatz und der Satz von Löwenheim und Skolem

Logik für Informatiker

Logik für Informatiker Logic for Computer Scientists

Motivation. Formale Grundlagen der Informatik 1 Kapitel 14 Aussagenlogik Syntax & Semantik. Motivation. Motivation

Logik für Informatiker Musterlösung Aufgabenblatt 11

Fundamentale Sätze. versuche folgendes: gib eine Formelmenge Φ an, so dass Mod(Φ) = {(N, +, )}

Unifikation. T eine Menge von Termen. σ(t) einelementig ist. Definition: Unifikator. Eine Substitution σ ist Unifikator von T, falls

Aufgabe 1: MC (10 Punkte) wahr 1P, falsch 0P, keine Ahnung 0.5P. Jede Struktur hat mindestens eine Substruktur

Logik für Informatiker

Beachte: Mit n = 0 sind auch Konstanten Terme.

Logik für Informatiker

Grundbegriffe der Informatik

Logikprogrammierung mit Abhängigkeiten

Vorlesung Logik SoSe 2014

Schritt 1 Richtung Resolution: Substituieren

Tableaukalkül für Aussagenlogik

Hilbert-Kalkül (Einführung)

4. Logik und ihre Bedeutung für WBS

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25

Informatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4

Vorlesung Logik Wintersemester 2012/13 Universität Duisburg-Essen

5.1 Inferenz. Theorie der Informatik. Theorie der Informatik. 5.1 Inferenz. 5.2 Resolutionskalkül. 5.3 Zusammenfassung. Inferenz: Motivation

1.1 Motivation. Theorie der Informatik. Theorie der Informatik. 1.1 Motivation. 1.2 Syntax. 1.3 Semantik. 1.4 Formeleigenschaften. 1.

Hauptklausur zur Vorlesung Logik für Informatiker im Sommersemester 2012 Lösung

Theorie der Informatik. Theorie der Informatik. 2.1 Äquivalenzen. 2.2 Vereinfachte Schreibweise. 2.3 Normalformen. 2.

Widerspruchsbasiertes Kalkül. Präinterpretation. Variablenzuweisung. Interpretation

Klausur zur Vorlesung Mathematische Logik

Grundbegriffe für dreiwertige Logik

Transkript:

Formale Grundlagen der Informatik 1 Kapitel 21 Prädikatenlogische Frank Heitmann heitmann@informatik.uni-hamburg.de 30. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/41

Ablauf Unendliche Strukturen Der Satz von Church Anmerkung Wir werden heute die Themen aus den Kapitel 2.3, 2.4 und 2.5 aus dem Buch von Schöning behandeln. Dabei werden wir von vielen Themen nur die Aussagen behandeln und besprechen. Die Beweise werden wir nur mündlich skizzieren und überwiegend überspringen. Literaturhinweis Der Ablauf entspricht dem aus dem Buch Logik für Informatiker von Uwe Schöning. Dort finden sich auch die Beweise im Detail. Frank Heitmann heitmann@informatik.uni-hamburg.de 2/41

Eine besondere Formel Unendliche Strukturen Der Satz von Church In der Aussagenlogik kann man Wahrheitstafeln aufmalen, wir haben schon besprochen, dass in der Prädikatenlogik unendlich viele Strukturen existieren. Die Lage ist aber noch schlimmer: Eine besondere Formel Sei F = xp(x, f (x)) y P(y, y) u v w((p(u, v) P(v, w)) P(u, w)) Dann ist z.b. mit A = (U, I ), wobei U = N, I (P) = {(m, n) m < n} und I (f )(n) = n + 1 eine erfüllende Struktur gegeben. Frank Heitmann heitmann@informatik.uni-hamburg.de 3/41

Eine besondere Formel Unendliche Strukturen Der Satz von Church Eine besondere Formel Sei F = xp(x, f (x)) y P(y, y) u v w((p(u, v) P(v, w)) P(u, w)) F hat aber kein endliches Modell, d.h. U kann nicht endlich sein! Idee: Angenommen U wäre endlich, betrachte für ein beliebiges m U eine Folge m 0, m 1, m 2,..., wobei m 0 = m und m i+1 = I (f )(m i ). Dann muss sich in dieser Folge ein Wert m x das erste Mal wiederholen. Aus dem ersten und dritten Konjunkt folgt dann (m x, m x ) I (P), was dem zweiten Konjunkt widerspricht. Frank Heitmann heitmann@informatik.uni-hamburg.de 4/41

Merke Unendliche Strukturen Der Satz von Church Ergebnis Es gibt nicht nur unendlich viele Strukturen, es gibt auch Formeln, für die eine (erfüllende) Struktur ein unendlich großes Universum benötigt. Frank Heitmann heitmann@informatik.uni-hamburg.de 5/41

Unendliche Strukturen Der Satz von Church Tatsächlich ist die Lage noch viel schlimmer: Satz (Satz von Church) Das Gültigkeitsproblem der Prädikatenlogik (also das Problem gegeben eine Formel F L PL, ist F eine Tautologie?) ist unentscheidbar. Beweis. Wir wollen den Beweis hier nicht im Detail führen. Zunächst zeigt man dass das sogenannte Postsche Korrespondenzproblem: Gegeben: endliche Folge (x 1, y 1 ),..., (x k, y k ) mit x i, y i {0, 1} +. Gesucht: eine Folge von Indizes i 1,..., i n {1,..., k}, n 1 mit x i1 x i2... x in = y i1 y i2... y in. unentscheidbar ist. Dann reduziert man dies auf das Gültigkeitsproblem der Prädikatenlogik. Frank Heitmann heitmann@informatik.uni-hamburg.de 6/41

Unendliche Strukturen Der Satz von Church Satz Das Erfüllbarkeitsproblem der Prädikatenlogik (also der Problem gegeben eine Formel F L PL, ist F erfüllbar?) ist unentscheidbar. Beweis. F ist gültig genau dann, wenn F unerfüllbar ist. Könnten wir also Erfüllbarkeit entscheiden, so könnten wir das Verfahren auf F anwenden und damit entscheiden, ob F gültig ist. (Aus dem vorherigen Satz wissen wir aber, dass wir dies nicht entscheiden können, also auch Erfüllbarkeit nicht.) Frank Heitmann heitmann@informatik.uni-hamburg.de 7/41

Motivation Begriffe Sätze Ein bisschen Hoffnung... Auch wenn das Erfüllbarkeitsproblem unentscheidbar ist, heißt das nicht, dass es nicht sinnvolle Verfahren geben kann, um zu ermitteln, ob eine Formel F erfüllbar ist. Das Verfahren würde die Frage nur nicht entscheiden. Vielleicht gibt das Verfahren nicht immer die richtige Lösung aus, oder es terminiert nicht immer... Ein Problem ist nun, dass für U beliebige Mengen möglich sind. Kann man dies einschränken? Kann man Strukturen griffiger machen, so dass man sie auf bestimmte Art und Weise durchwandern kann?... Frank Heitmann heitmann@informatik.uni-hamburg.de 8/41

Herbrand-Universum Begriffe Sätze Definition (Herbrand-Universum) Sei F eine geschlossene Formel in Skolemform. Das Herbrand-Universum D(F ) wird wie folgt induktiv gebildet: 1 Alle in F vorkommenden Konstanten sind in D(F ). Enthält F keine Konstanten, so sei die neue Konstante a in D(F ). 2 Für jedes in F vorkommende k-stellige Funktionssymbol f und Terme t 1,..., t k D(F ) ist auch f (t 1,..., t k ) D(F ). Anmerkung In D(F ) sind also alle variablenfreien Terme, die aus Bestandteilen von F gebildet werden können. Frank Heitmann heitmann@informatik.uni-hamburg.de 9/41

Herbrand-Universum - Beispiel Beispiel Sei Dann ist Begriffe Sätze F = x yp(x, f (y), c) G = x yp(f (x), b, g(x, y)) H = xp(f (x, x)) D(F ) = {c, f (c), f (f (c)), f (f (f (c))),...} D(G) = {b, f (b), g(b, b), f (f (b)), f (g(b, b)), D(H) = {a, f (a, a), g(b, f (b)), g(f (b), b), g(b, g(b, b)), g(g(b, b), b), g(f (b), g(b, b)),...} = f (a, f (a, a)), f (f (a, a), a), f (f (a, a), f (a, a)),...} Frank Heitmann heitmann@informatik.uni-hamburg.de 10/41

Motivation Begriffe Sätze Anmerkung D(F ) wird nun als Standard -Grundbereich benutzt, um nach Modellen zu suchen. Dies reicht tatsächlich und hilft uns auf gewisse Art und Weise nach Modellen zu suchen. Frank Heitmann heitmann@informatik.uni-hamburg.de 11/41

Herbrand-Struktur und -Modell Begriffe Sätze Definition (Herbrand-Struktur und -Modell) Sei F eine geschlossene Formel in Skolemform. Dann heißt A = (U, I ) Herbrand-Struktur zu F, wenn: 1 U = D(F ) 2 Für jedes in F auftretende k-stellige Funktionssymbol f und Terme t 1,..., t k D(F ) ist I (f )(t 1,..., t k ) = f (t 1,..., t k ). Ist eine Herbrand-Struktur A ein Modell für eine Formel F, so nennen wir A ein Herbrand-Modell. Frank Heitmann heitmann@informatik.uni-hamburg.de 12/41

Anmerkungen Begriffe Sätze Anmerkung Zwei Anmerkungen: 1 Durch die Festlegung der Interpretation der Funktionssymbole wird Syntax und Semantik von Termen quasi gleichgeschaltet. Die Bedeutung (Semantik) eines Terms ist der Term (syntaktisch) selbst. 2 Die Definition der Herbrand-Struktur legt viel fest. Offen ist aber dann noch die Interpretation der Prädikatensymbole. Dies schränkt einen ein und hilft, die Suche nach erfüllenden Strukturen zu vereinfachen. (Das Erfüllbarkeitsproblem der Prädikatenlogik bleibt aber unentscheidbar!) Frank Heitmann heitmann@informatik.uni-hamburg.de 13/41

Abzählbare Modelle Begriffe Sätze Man kann nun folgende Sätze zeigen: Satz Sei F eine geschlossene Formel in Skolemform. F ist genau dann erfüllbar, wenn F ein Herbrand-Modell besitzt. Satz (Satz von Löwenheim-Skolem) Jede erfüllbare Formel der Prädikatenlogik besitzt ein abzählbares Modell (eine Struktur mit abzählbarem Universum). Beweis. Folgt sofort aus obigem, da Herbrand-Modelle abzählbar sind. Frank Heitmann heitmann@informatik.uni-hamburg.de 14/41

Abzählbare Modelle Begriffe Sätze Wichtige Anmerkung Wenn wir zu Anfang gezeigt haben, dass einige Formeln der Prädikatenlogik unendlich große Strukturen benötigen, so wissen wir nun immerhin, dass Strukturen mit abzählbar unendlichen Universen ausreichend sind! Frank Heitmann heitmann@informatik.uni-hamburg.de 15/41

Begriffe Sätze Herbrand-Expansion - Motivation Nächstes Ziel Man kann dies nun nutzen, um ein Verfahren zu entwickeln, dass systematisch alle Strukturen (bzw. bestimmte Strukturen) durchgeht und irgendwann eine erfüllende findet, sofern denn eine existiert. Dies widerspricht nicht der der Prädikatenlogik! Das gleich vorgestellte Verfahren muss nämlich nicht terminieren! Frank Heitmann heitmann@informatik.uni-hamburg.de 16/41

Herbrand-Expansion Begriffe Sätze Definition (Herbrand-Expansion) Sei F = y 1... y k F eine Aussagen in Skolemform (F ist die Matrix). Dann ist E(F ) := {F [y 1 /t 1 ][y 2 /t 2 ]... [y k /t k ] t 1,..., t k D(F )} die Herbrand-Expansion von F. Anmerkung Die Formeln in E(F ) sind quasi wie aussagenlogische Formeln! Frank Heitmann heitmann@informatik.uni-hamburg.de 17/41

Ein Satz Begriffe Sätze Satz (Gödel-Herbrand-Skolem) Für jede geschlossene Formel in Skolemform F gilt: F ist genau dann erfüllbar, wenn die Formelmenge E(F ) im aussagenlogischen Sinne erfüllbar ist. Anmerkung Der Satz besagt quasi, dass eine prädikatenlogische Formel durch (i.a.) unendlich viele aussagenlogische Formeln approximiert werden kann. Frank Heitmann heitmann@informatik.uni-hamburg.de 18/41

Noch ein Satz Begriffe Sätze In Kombination mit dem Endlichkeitssatz der Aussagenlogik: Satz (Endlichkeitssatz (der Aussagenlogik)) Eine Menge M von Formeln ist genau dann erfüllbar, wenn jede endliche Teilmenge von M erfüllbar ist. ergibt dies den folgenden Satz von Herbrand: Satz (Herbrand) Eine Aussage F in Skolemform ist genau dann unerfüllbar, wenn es eine endliche Teilmenge von E(F ) gibt, die (im aussagenlogischen Sinne) unerfüllbar ist. Frank Heitmann heitmann@informatik.uni-hamburg.de 19/41

Zum Algorithmus von Gilmore Begriffe Sätze Aus dem Satz von Herbrand lässt sich ein Algorithmus entwickeln, der überprüft, ob eine prädikatenlogische Formel unerfüllbar ist. ABER: Prädikatenlogik ist unentscheidbar, also hat der Algorithmus irgendeinen Haken. In diesem Fall: Er terminiert nicht zwingend! Anmerkung Man spricht hier von einem Semi-Entscheidungsverfahren. Auf den Ja -Instanzen halten wir nach endlicher Zeit mit der korrekten Antwort an. (Bei den Nein -Instanzen wissen wir aber immer nicht, ob das Ja noch kommt oder ob diese eine Nein -Instanz ist...) Frank Heitmann heitmann@informatik.uni-hamburg.de 20/41

Der Algorithmus von Gilmore Begriffe Sätze Der Algorithmus von Gilmore arbeitet wie folgt: 1 Sei F 1, F 2, F 3,... eine Aufzählung von E(F ). 2 Eingabe ist eine prädikatenlogische Formel F in Skolemform. 3 n = 0 4 n = n + 1 5 Prüfe, ob (F 1 F 2... F n ) unerfüllbar ist (z.b. mit Wahrheitstafeln der Aussagenlogik). 6 Falls ja, stoppe und gib unerfüllbar aus. Falls nein, gehe zu Schritt 4. Frank Heitmann heitmann@informatik.uni-hamburg.de 21/41

Begriffe Sätze Folgerungen aus dem Algorithmus Wir haben damit ein Semi-Entscheidungsverfahren für das Unerfüllbarkeitsproblem für das Gültigkeitsproblem Ferner könnte man systematisch endliche Modelle durchgehen und hätte dann auch ein Semi-Entscheidungsverfahren für erfüllbare Formeln mit endlichen Modellen Die erfüllbaren, aber nicht gültigen Formeln mit unendlichen Modellen bleiben einem aber verwehrt! Und bei den obigen Verfahren weiß man bei Nicht-Termination immer nicht, ob noch eine Antwort kommt oder ob dies eine Nein -Instanz ist! Frank Heitmann heitmann@informatik.uni-hamburg.de 22/41

Motivation Grundresolution Unifikation Prädikatenlogische Statt wie im Algorithmus eben angedeutet Wahrheitstafeln für den Unerfüllbarkeitstest zu benutzen, können wir auch auf (aussagenlogische) zurückgreifen. Die Matrix muss dafür in KNF gebracht werden, aber das können wir ja... Frank Heitmann heitmann@informatik.uni-hamburg.de 23/41

Grundresolutionsalgorithmus Grundresolution Unifikation Prädikatenlogische Es sei wieder F 1, F 2,... eine Aufzählung von E(F ). Der Grundresolutionsalgorithmus arbeitet wie folgt: 1 Eingabe ist eine Aussage F in Skolemform mit der Matrix F in KNF. 2 i = 0 3 M = 4 Wiederhole: i = i + 1 M = M {F i } M = Res (M) bis M. 5 Gib unerfüllbar aus und stoppe. Frank Heitmann heitmann@informatik.uni-hamburg.de 24/41

Begriffe Grundresolution Unifikation Prädikatenlogische Die Bezeichnung Grundresolutionsalgorithmus kommt von folgenden Begriffen: Definition Sei F eine Formel in Skolemform mit Matrix F. Eine Substitution, die alle freien Variablen in F durch variablenfreie Terme ersetzt wird Grundsubstitution genannt. (Die Substitutionen in der Definition von E(F ) sind also Grundsubstitutionen.) Wenn alle freien Variablen in F durch eine Grundsubstitution ersetzt werden, nennen wir das Resultat eine Grundinstanz von F. Werden die freien Variablen in F durch eine Substitution ersetzt, so nennen wir das Resultat eine Instanz von F. Frank Heitmann heitmann@informatik.uni-hamburg.de 25/41

Zum Grundresolutionsalgorithmus Grundresolution Unifikation Prädikatenlogische Satz Bei Eingabe einer Aussage F in Skolemform mit Matrix F in KNF stoppt der Grundresolutionsalgorithmus genau dann nach endlich vielen Schritten mit der Ausgabe unerfüllbar, wenn F unerfüllbar ist. Anmerkung Der Algorithmus erzeugt meist viel mehr Elemente in M als nötig. Bei der Darstellung eines Beweises für die Unerfüllbarkeit genügt es geeignete Grundinstanzen der Klauseln in F anzugeben und diese dann in einem sgraphen zur leeren Klausel zu resolvieren. Frank Heitmann heitmann@informatik.uni-hamburg.de 26/41

Beispiel Grundresolution Unifikation Prädikatenlogische Zur Formel F = x(p(x) P(f (x))) genügen bereits die Substitutionen [x/a] und [x/f (a)] um zu einer unerfüllbaren Klauselmenge zu kommen: {P(a)} { P(f (a))} {P(f (a))} { P(f (f (a)))} Anmerkung Genauer gengügt es sogar für jede Klausel in F individuell geeignete Substitutionen zu finden, die dann auf diese Klausel aber nicht auf die ganze Klauselmenge F angewendet werden. Frank Heitmann heitmann@informatik.uni-hamburg.de 27/41

Motivation Grundresolution Unifikation Prädikatenlogische Motivation Wenn man einige Grundsubstitutionen macht, merkt man recht schnell, dass man sich oft durch eine (Grund-)Substitution zu schnell einschränkt (und dadurch zu vorausschauend arbeiten muss). Ziel ist es daher in einer Weise zu substituieren, dass man nicht mehr als nötig substitutiert und insb. nicht mehr als nötig geschlossene Terme einführt. Hat man z.b. {P(x), Q(g(x))} und { P(f (y))}, so würde die Substitution [x/f (y)] genügen, um zu { Q(g(f (y)))} zu resolvieren. Mit dem bisherigen geht das aber nicht. In der prädikatenlogischen will man genau dies erlauben. Um die formal auszudrücken brauchen wir noch den Begriff der Unifikation... Frank Heitmann heitmann@informatik.uni-hamburg.de 28/41

Unifikator Grundresolution Unifikation Prädikatenlogische Definition (Unifikator) Eine Substitution σ ist ein Unifikator einer endlichen Menge von Literalen L = {L 1,..., L k }, wenn L 1 σ =... = L k σ, wenn also Lσ = 1. Wir sagen dann, dass L unifizierbar ist. σ heißt allgemeinster Unifikator von L, falls für jeden Unifikator σ von L gilt, dass es eine Substitution sub gibt mit σ = σsub, d.h. wenn für jede Formel F F σ = F σsub gilt. Frank Heitmann heitmann@informatik.uni-hamburg.de 29/41

Unifikationsalgorithmus Grundresolution Unifikation Prädikatenlogische Satz (Unifikationssatz) Jede unifizierbare Menge von Literalen besitzt auch einen allgemeinsten Unifikator. Beweis. Der nachfolgende Unifikationsalgorithmus ermittelt einen allgemeinsten Unifikator sofern einer existiert und gibt sonst aus, dass die Menge nicht unifizierbar ist. Einen detaillierten Korrektheitsbeweis findet man im Buch von Schöning. Frank Heitmann heitmann@informatik.uni-hamburg.de 30/41

Unifikationsalgorithmus Grundresolution Unifikation Prädikatenlogische Eingabe: nicht-leere Literalmenge L. sub = [] Wiederhole so lange Lsub > 1: Wandere von links nach rechts durch die Literale in Lsub bis die erste Position gefunden wird an der sich mindestens zwei Literale unterscheiden Ist keines der beiden eine Variable brich mit nicht unifizierbar ab. sonst sei x die Variable t der Term Kommt x in t vor, brich mit nicht unifizierbar ab. sonst setze sub = sub[x/t] und fahre fort Gib sub aus Frank Heitmann heitmann@informatik.uni-hamburg.de 31/41

Unifikation - Beispiel Beispiel Sei dann Grundresolution Unifikation Prädikatenlogische L = {P(x, y), P(f (a), g(x)), P(f (z), g(f (z)))} 1 erster Unterschied bei x und f (a), also sub 1 = [x/f (a)] (oder x und f (z) dann sub = [x/f (z)]) Lsub 1 = {P(f (a), y), P(f (a), g(f (a))), P(f (z), g(f (z)))} 2 nächster Unterschied bei z und a, also sub 2 = sub 1 [z/a] Lsub 2 = {P(f (a), y), P(f (a), g(f (a)))} 3 nächster Unterschied bei y und g(f (a)), also sub 3 = sub 2 [y/g(f (a))] Lsub 3 = {P(f (a), g(f (a)))} und wir sind fertig! Der allgemeinste Unifikator ist σ = [x/f (a)][z/a][y/g(f (a))]. Frank Heitmann heitmann@informatik.uni-hamburg.de 32/41

Motivation Grundresolution Unifikation Prädikatenlogische Mit der Unifikation können wir nun unser Ziel der zurückhaltenden erreichen und die prädikatenlogische formulieren... Frank Heitmann heitmann@informatik.uni-hamburg.de 33/41

Grundresolution Unifikation Prädikatenlogische Definition (Prädikatenlogische ) Seien K 1, K 2 und R prädikatenlogische Klauseln. Dann ist R eine prädikatenlogische Resolvente von K 1 und K 2, falls folgendes gilt: 1 Es gibt Substitutionen s 1 und s 2, die Variablenumbenennungen sind, so dass K 1 s 1 und K 2 s 2 keine gemeinsamen Variablen enthalten. 2 Es gibt eine Menge von Literalen L 1,..., L m K 1 s 1 und L 1,..., L n K 2 s 2 (wobei n, m 1), so dass L = {L 1,..., L m, L 1,..., L n} unifizierbar ist. Sei sub der allgemeinste Unifikator von L. 3 R hat die Form R = ((K 1 s 1 {L 1,..., L m }) (K 2 s 2 {L 1,..., L n}))sub Frank Heitmann heitmann@informatik.uni-hamburg.de 34/41

- Beispiel 1 Beispiel Grundresolution Unifikation Prädikatenlogische Sei K 1 = {P(f (x)), Q(z), P(z)} und K 2 = { P(x), R(g(x), a)} Wir wählen P(f (x)), P(z) K 1 und P(x) K 2 zur aus. Damit: {P(f (x)), Q(z), P(z)} s 1 =[] {P(f (x)), Q(z), P(z)} sub=[z/f (x)][u/f (x)] {P(f (x)), Q(f (x))} { P(x), R(g(x), a)} s 2 =[x/u] { P(u), R(g(u), a)} sub=[z/f (x)][u/f (x)] { P(f (x)), R(g(f (x)), a)} { Q(f (x)), R(g(f (x)), a)} Frank Heitmann heitmann@informatik.uni-hamburg.de 35/41

- Beispiel 1 (kürzer) Grundresolution Unifikation Prädikatenlogische Beispiel Das Beispiel von eben kürzer: Sei K 1 = {P(f (x)), Q(z), P(z)} und K 2 = { P(x), R(g(x), a)} Wir wählen P(f (x)), P(z) K 1 und P(x) K 2 zur aus. Damit: {P(f (x)), Q(z), P(z)} { P(x), R(g(x), a)} { Q(f (x)), R(g(f (x)), a)} s 1 =[],s 2 =[x/u],sub=[z/f (x)][u/f (x)] Frank Heitmann heitmann@informatik.uni-hamburg.de 36/41

- Beispiel 1 (noch kürzer) Grundresolution Unifikation Prädikatenlogische Beispiel Das Beispiel von eben noch kompakter: Sei K 1 = {P(f (x)), Q(z), P(z)} und K 2 = { P(x), R(g(x), a)} Wir wählen P(f (x)), P(z) K 1 und P(x) K 2 zur aus. Damit: {P(f (x)), Q(z), P(z)} { P(x), R(g(x), a)} [z/f /x)] { Q(f (x)), R(g(f (x)), a)} [x/f (x)] Frank Heitmann heitmann@informatik.uni-hamburg.de 37/41

- Beispiel 2 Grundresolution Unifikation Prädikatenlogische Beispiel Sei K 1 = {P(f (x)), Q(z), P(z)} und K 2 = { P(x), R(g(x), a)} Wir wählen P(z) K 1 und P(x) K 2 zur aus. Damit: {P(f (x)), Q(z), P(z)} s 1 =[] {P(f (x)), Q(z), P(z)} sub=[u/z] {P(f (x)), Q(z), P(z)} { P(x), R(g(x), a)} s 2 =[x/u] { P(u), R(g(u), a)} sub=[u/z] { P(z), R(g(z), a)} {P(f (x)), Q(z), R(g(z), a)} Frank Heitmann heitmann@informatik.uni-hamburg.de 38/41

- Beispiel 2 (kürzer) Grundresolution Unifikation Prädikatenlogische Beispiel Oder in kompakter Schreibweise: Sei K 1 = {P(f (x)), Q(z), P(z)} und K 2 = { P(x), R(g(x), a)} Wir wählen P(z) K 1 und P(x) K 2 zur aus. Damit: {P(f (x)), Q(z), P(z)} { P(x), R(g(x), a)} s 1 =[] {P(f (x)), Q(z), R(g(z), a)} s 2 =[x/z] Frank Heitmann heitmann@informatik.uni-hamburg.de 39/41

ssatz Grundresolution Unifikation Prädikatenlogische Satz (ssatz der Prädikatenlogik) Sei F eine Aussage in Skolemform mit der Matrix F in KNF. Dann gilt: F ist genau dann unerfüllbar, wenn Res (F ). Beweis. Es ist wieder die Korrektheit und die Vollständigkeit des Verfahrens zu zeigen. Im Beweis wird auf die Grundresolution zurückgegriffen. Genaueres siehe Schöning, Logik für Informatiker. Man beachte auch die wichtige Rolle der Skolemform hierbei. Frank Heitmann heitmann@informatik.uni-hamburg.de 40/41

Zusammenfassung Grundresolution Unifikation Prädikatenlogische Wir haben heute: Formeln gesehen, die unendlich große Modell benötigen die der Prädikatenlogik gesehen mit Herbrand-Universum, -Struktur und -Modell gesehen, wie Syntax und Semantik gleich gemacht werden und damit gesehen, dass immerhin abzählbare Strukturen genügen. mit der Herbrand-Expansion und den Sätzen von Gödel-Herbrand-Skolem und Herbrand den Übergang zum Algorithmus von Gilmore bzw. zum Grundresolutionsalgorithmus geschafft (und damit zurück zur Aussagenlogik) die Prädikatenlogische eingeführt, wozu noch der Unifikationsalgorithmus benötig wurde. Frank Heitmann heitmann@informatik.uni-hamburg.de 41/41