Formale Grundlagen der Informatik 3 Kapitel 4 Prädikatenlogik Resolution

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

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

Logik-Grundlagen. Syntax der Prädikatenlogik

Resolutionsalgorithmus

Logik für Informatiker

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

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

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

Aufgabe - Fortsetzung

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

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

Hilbert-Kalkül (Einführung)

Grundlagen der Theoretischen Informatik

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

Grundlagen der Künstlichen Intelligenz

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

Beispiel Aussagenlogik nach Schöning: Logik...

Reduktionen. Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie. Exkurs: Reduktionen allgemein. Reduktionen: Erläuterungen

Klausur zur Vorlesung Mathematische Logik

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Vorbemerkungen

Ersetzbarkeitstheorem

TU5 Aussagenlogik II

Einiges zu Resolutionen anhand der Aufgaben 6 und 7

Prüfungsprotokoll Kurs 1825 Logik für Informatiker. Studiengang: MSc. Informatik Prüfer: Prof. Dr. Heinemann Termin: Januar 2015

3. Grundlegende Begriffe von Logiken - Aussagenlogik

Zusammenfassung des Stoffes zur Vorlesung Formale Systeme

Klausur Formale Systeme Fakultät für Informatik 2. Klausur zum WS 2010/2011

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2014/2015

Kapitel 1.5. Ein adäquater Kalkül der Aussagenlogik. Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls

Logik für Informatiker

Logische und funktionale Programmierung

Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen

3. Prädikatenlogik. Im Sinne der Aussagenlogik sind das verschiedene Sätze, repräsentiert etwa durch A, B, C. Natürlich gilt nicht: A B = C

Logic in a Nutshell. Christian Liguda

Modul Logik, Bachelor Informatik 1. Semester

Der Sequenzenkalkül. Charakterisierung der logischen Schlussfolgerung: Sequenzenkalkül für die Prädikatenlogik

Logik für Informatiker Musterlösung Aufgabenblatt 8

Die Folgerungsbeziehung

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

Normalformen der Prädikatenlogik

Grundthema: Operationalisierung logischer Sprachen, d.h. automatische Ermittlung von Wahrheitswerten bzw. Beweis logischer Formeln.

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem:

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

6 F O R M A L E S P R A C H E N. 6.1 formale sprachen

Logik. Markus Lohrey. Sommersemester Universität Siegen. Markus Lohrey (Universität Siegen) Logik Sommersem / 299

Logik-Programme. Eine Tatsachenklausel ist eine einelementige positive Klausel, d.h. sie hat

Zusammenfassung der Vorlesung. Mathematische Logik. Bodo von der Heiden Letzte Aktualisierung: 2. Februar 2005

Logik Vorlesung 6: Resolution

Logik. Markus Lohrey. Wintersemester 2012/2013. Universität Leipzig. Markus Lohrey (Universität Leipzig) Logik Wintersem.

Vorsemesterkurs Informatik

Musterlösung 11.Übung Mathematische Logik

Einführung in die Prädikatenlogik

Weitere Beweistechniken und aussagenlogische Modellierung

Kapitel L:II. II. Aussagenlogik

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)

Ausgewählte unentscheidbare Sprachen

Theoretische Informatik SS 03 Übung 11

Logik Teil 1: Aussagenlogik. Vorlesung im Wintersemester 2010

Semantik von Formeln und Sequenzen

Übung 4: Aussagenlogik II

Klausur Formale Systeme Fakultät für Informatik WS 2009/2010. Prof. Dr. Bernhard Beckert. 18. Februar 2010

3 Vom Zählen zur Induktion

Einführung in die Logik. Sommersemester Juli 2010 Institut für Theoretische Informatik

Resolution (1) Wir versuchen, durch eine Substitution die Variablen in geeigneter Weise durch Terme zu ersetzen, so dass beide Atome gleich werden.

Wissensbasierte Systeme

Logik Teil 1: Aussagenlogik

Theoretische Informatik

Teil 7. Grundlagen Logik

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

1 Prädikatenlogik: Korrektheit, Vollständigkeit, Entscheidbarkeit

3.2 Prädikatenlogik. WS 06/07 mod 321

Formale Methoden II. Gerhard Jäger. SS 2008 Universität Bielefeld. Teil 8, 11. Juni Formale Methoden II p.1/30

MafI I: Logik & Diskrete Mathematik (F. Hoffmann)

SS April Übungen zur Vorlesung Logik Blatt 1. Prof. Dr. Klaus Madlener Abgabe bis 27. April :00h

3 Prädikatenlogik der 1. Stufe (PL1) Teil I

Aussagenlogik. Aussagen und Aussagenverknüpfungen

Mathematik für Informatiker I

Normalformen boolescher Funktionen

Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung Winter-Semester 2003/04. Wissensrepräsentation: Resolution (im PK1)

Erfüllbarkeit und Allgemeingültigkeit

Logikprogrammierung. gehalten von Prof Dr. Jürgen Giesl im Sommersemester 2006 an der RWTH Aachen

Algorithmen und Datenstrukturen Kapitel 10

Klausur für Studiengänge INF und IST

Mengen. Eigenschaften. Spezielle Mengen (1) Prominente Mengen. ! Mengenzugehörigkeit

Klausur Formale Systeme Fakultät für Informatik WS 2009/2010

Vorlesung Logik Wintersemester 2015/16 Universität Duisburg-Essen. Wer sind wir? Barbara König Übungsleitung: Dennis Nolte, Dr.

Einführung in die Informatik I (autip)

Prädikate sind Funktionen. Prädikatenlogik. Quantoren. n stellige Prädikate. n stellige Prädikate:

Deduktion in der Aussagenlogik

Übersicht. 9. Schließen in der Prädikatenlogik 1. Stufe

Mathematik für Informatiker I Mitschrift zur Vorlesung vom

Logik & Semantik 7. Vorlesung Prädikatenlogik 1. Syntax der Prädikatenlogik Semantik der Prädikatenlogik: Grundbegriffe (Variablen-)Substitutionen

Topologische Aspekte: Eine kurze Zusammenfassung

Mathematik-Vorkurs für Informatiker Aussagenlogik 1

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Probleme über Sprachen. Teil II.

2. Symmetrische Gruppen


Theorie der Informatik

Algorithmen für Hornlogik

Theoretische Grundlagen des Software Engineering

Transkript:

Formale Grundlagen der Informatik 3 Kapitel 4 Prädikatenlogik Frank Heitmann heitmann@informatik.uni-hamburg.de 30. November 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/43

Eine besondere Formel Unendliche Strukturen Der Satz von Church In der Aussagenlogik kann man Wahrheitstafeln aufmalen. In der Prädikatenlogik existieren unendlich viele Strukturen. 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 2/43

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 3/43

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 4/43

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 5/43

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 6/43

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 7/43

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 8/43

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 9/43

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 10/43

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 11/43

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 12/43

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 13/43

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 14/43

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 15/43

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 16/43

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 17/43

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 18/43

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 19/43

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 20/43

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 21/43

Motivation 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 22/43

salgorithmus Prädikatenlogische Es sei wieder F 1, F 2,... eine Aufzählung von E(F ). Der salgorithmus 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 23/43

Begriffe Prädikatenlogische Die Bezeichnung salgorithmus 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 24/43

Zum salgorithmus Prädikatenlogische Satz Bei Eingabe einer Aussage F in Skolemform mit Matrix F in KNF stoppt der salgorithmus 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 25/43

Beispiel 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 26/43

Motivation 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... Frank Heitmann heitmann@informatik.uni-hamburg.de 27/43

Unifikator 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 28/43

salgorithmus Prädikatenlogische Satz (ssatz) Jede unifizierbare Menge von Literalen besitzt auch einen allgemeinsten Unifikator. Beweis. Der nachfolgende salgorithmus 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 29/43

salgorithmus 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 30/43

- Beispiel Beispiel Sei dann 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 31/43

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

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 33/43

- Beispiel 1 Beispiel 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 34/43

- Beispiel 1 (kürzer) 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 35/43

- Beispiel 1 (noch kürzer) 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 36/43

- Beispiel 2 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 37/43

- Beispiel 2 (kürzer) 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 38/43

ssatz 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 zurückgegriffen. Dafür wird das folgende Lifting-Lemma benötigt. Satz (Lifting-Lemma) Seien K 1, K 2 zwei prädikatenlogische Klauseln, K 1, K 2 Grundinstanzen von ihnen mit Resolvente R. Dann gibt es eine prädikatenlogische Resolvente R von K 1 und K 2, so dass R Grundinstanz von R ist. Frank Heitmann heitmann@informatik.uni-hamburg.de 39/43

Zusammenfassung 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 salgorithmus geschafft (und damit zurück zur Aussagenlogik) die Prädikatenlogische eingeführt, wozu noch der salgorithmus benötig wurde. Frank Heitmann heitmann@informatik.uni-hamburg.de 40/43

Ausblick (1/2) Prädikatenlogische Satz Sei F eine geschlossene Formel in Skolemform. F ist genau dann erfüllbar, wenn F ein Herbrand-Modell besitzt. 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. Frank Heitmann heitmann@informatik.uni-hamburg.de 41/43

Ausblick (2/2) Prädikatenlogische Satz (ssatz) Jede unifizierbare Menge von Literalen besitzt auch einen allgemeinsten Unifikator. Satz (Lifting-Lemma) Seien K 1, K 2 zwei prädikatenlogische Klauseln, K 1, K 2 Grundinstanzen von ihnen mit Resolvente R. Dann gibt es eine prädikatenlogische Resolvente R von K 1 und K 2, so dass R Grundinstanz von R ist. 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 ). Frank Heitmann heitmann@informatik.uni-hamburg.de 42/43

Hausaufgabe Prädikatenlogische Zur Übung 1 Die heutige Vorlesung in der Vogelperspektive noch einmal nachvollziehen. Was geschieht wo? Was wird wo benötigt? 2 Versucht die obigen fünf Sätze zu beweisen. Bei Bedarf schaut in die Literatur (siehe unten). Literatur Die heutige Vorlesung orientiert sich stark an den Kapiteln 2.4 und 2.5 aus dem Buch Logik für Informatiker von Uwe Schöning. Frank Heitmann heitmann@informatik.uni-hamburg.de 43/43