Formale Logik. Logik für Informatiker. Modellierung. Logik in der Informatik. Viorica Sofronie-Stokkermans.

Ähnliche Dokumente
Logik für Informatiker. 1. Grundlegende Beweisstrategien. Viorica Sofronie-Stokkermans Universität Koblenz-Landau

Logik für Informatiker

Beispiel Aussagenlogik nach Schöning: Logik...

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

Logik für Informatiker

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

Vorsemesterkurs Informatik

Hilbert-Kalkül (Einführung)

Logic in a Nutshell. Christian Liguda

Brückenkurs Mathematik

3. Grundlegende Begriffe von Logiken - Aussagenlogik

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

Formalisierung von Sudoku Formalisieren Sie das Sudoku-Problem:

Brückenkurs Mathematik. Dienstag Freitag

Logik, Mengen und Abbildungen

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Kapitel 1. Grundlagen Mengen

Vorkurs Mathematik für Informatiker Aussagenlogik -- Thomas Huckle Stefan Zimmer Matous Sedlacek,

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

Logik für Informatiker

Vorlesung. Logik und Diskrete Mathematik

Grundlagen der Theoretischen Informatik

Kapitel 1. Grundlagen

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

Resolutionsalgorithmus

3 Vom Zählen zur Induktion

Brückenkurs Mathematische Grundlagen. 1 Aussagenlogik. FU Berlin, Institut für Informatik, WS 2008/09

6. Induktives Beweisen - Themenübersicht

Die Folgerungsbeziehung

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

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Mittwoch den

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

Ersetzbarkeitstheorem

Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion

Kapitel L:II. II. Aussagenlogik

Klassische Aussagenlogik

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

Vorkurs: Mathematik für Informatiker

Zusammenfassung des Stoffes zur Vorlesung Formale Systeme

Übung 4: Aussagenlogik II

mathe plus Aussagenlogik Seite 1

Theoretische Grundlagen des Software Engineering

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

Sudoku. Warum 6? Warum 6?

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

Logik und Beweise. Logik und Beweise. Vorsemesterkurs SoSe März 2016

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

Algorithmen und Datenstrukturen

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Donnerstag den x > 1 3x > 3 3x + 3 > 6 6x + 3 > 3x + 6.

Handout zu Beweistechniken

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

Boolesche Algebra. Hans Joachim Oberle. Vorlesung an der TUHH im Wintersemester 2006/07 Montags, 9:45-11:15 Uhr, 14täglich TUHH, DE 22, Audimax 2

Grundlagen der Theoretischen Informatik

Vorlesung. Vollständige Induktion 1

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

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

Normalformen boolescher Funktionen

3.2 Prädikatenlogik. WS 06/07 mod 321

Weitere Beweistechniken und aussagenlogische Modellierung

Theoretische Grundlagen des Software Engineering

Elementare Beweismethoden

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur

Logische und funktionale Programmierung

WS 2009/10. Diskrete Strukturen

Grundlagen der Kognitiven Informatik

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

Mathematik und Logik

1 Einführung Aussagenlogik

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

Vorlesung. Einführung in die mathematische Sprache und naive Mengenlehre

Mathematik-Vorkurs für Informatiker Aussagenlogik 1

Diskrete Strukturen Kapitel 2: Grundlagen (Relationen)

Mathematische Logik. Grundlagen, Aussagenlogik, Semantische Äquivalenz. Felix Hensel. February 21, 2012

Vorlesung 4. Tilman Bauer. 13. September Wir befassen uns in dieser Vorlesung noch einmal mit Mengen.

TU8 Beweismethoden. Daniela Andrade

Teil 7. Grundlagen Logik

3 Vollständige Induktion

Kapitel 1.0. Aussagenlogik: Einführung. Mathematische Logik (WS 2011/12) Kapitel 1.0: Aussagenlogik: Einführung 1/ 1

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

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr

Was bisher geschah. Aufgaben: Diagnose, Entscheidungsunterstützung Aufbau Komponenten und Funktion

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

Theorem Proving. Software Engineering in der Praxis. Prädikatenlogik. Software Engineering in der Praxis Wintersemester 2006/2007

Aufgabe - Fortsetzung

WS 2009/10. Diskrete Strukturen

Aussagenlogik. Aussagen und Aussagenverknüpfungen

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

Einführung in die Mathematik (Vorkurs 1 )

4 Elementare Mengentheorie

Vertiefungskurs Mathematik

Mathematik für Informatiker I

Aussagen- und Prädikatenlogik

Grundlagen der Theoretischen Informatik

R = {(1, 1), (2, 2), (3, 3)} K 1 = {1} K 2 = {2} K 3 = {3}

Folgen und endliche Summen

Mathematik-Vorkurs für Informatiker Aussagenlogik 1

Musterlösung 11.Übung Mathematische Logik

In diesem Kapitel wiederholen wir Begriffe und Notationen für grundlegende mathematische

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010

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

Transkript:

Formale Logik Logik für Informatiker Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de Ziel Formalisierung und utomatisierung rationalen Denkens Rational richtige bleitung von neuem Wissen aus gegebenem Rolle der Logik in der Informatik nwendung innerhalb der Informatik Spezifikation, Programmentwicklung, Programmverifikation Werkzeug für nwendungen außerhalb der Informatik Künstliche Intelligenz, Wissensrepräsentation 1 3 Logik in der Informatik Modellierung Was ist Logik? Mathematisch? ja Unverständlich? hoffentlich nein Reine Theorie ohne praktischen Nutzen? bstraktion nein: Verifikation von Hardware, Software, Protokollen Sprachverarbeitung und Wissensrepräsentation bfragensprachen für Datenbanken;... 2 4

Modellierung Beispiel: ufzug däquatheit des Modells Wenn formulierbare ussage wahr im Modell, dann entsprechende ussage wahr in Wirklichkeit oben oben mitte mitte ufzug mitte Oben gedruckt unten unten F.nach oben 5 7 Beispiel: ufzug Modellierung: Strukturen oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt mitte F.nach unten mitte ufzug mitte Unten gedruckt mitte F.nach unten mitte mitte F.nach unten F.nach unten unten unten unten unten unten v(ufzugoben) = wahr v(ufzugmitte) = wahr v(ufzugoben) = wahr v(ufzugmitte) = wahr v(mittegedrückt) = wahr v(untengedrückt) = wahr v(mittegedrückt) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr 6 8

Modellierung: Strukturen Formale Logik oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt Syntax mitte F.nach unten mitte ufzug mitte Unten gedruckt mitte F.nach unten ufzug mitte welche Formeln? Semantik Modelle (Strukturen) unten unten F.nach unten unten Wann ist eine Formel wahr (in einer Struktur)? Deduktionsmechanismus bleitung neuer wahrer Formeln v(ufzugoben) = wahr v(ufzugmitte) = wahr v(ufzugoben) = wahr v(ufzugmitte) = wahr v(mittegedrückt) = wahr v(untengedrückt) = wahr v(mittegedrückt) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr 9 11 Modellierung: Strukturen ussagenlogik: Syntax oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt Die Welt besteht aus Fakten Bausteine: tomare ussagen mitte F.nach unten mitte ufzug mitte Unten gedruckt mitte F.nach unten ufzug mitte Beispiele: ufzug ist oben: ufzugoben unten unten F.nach unten unten Mittlerer Knopf gedrückt: MitteGedrückt ussagen beziehen sich auf Strukturen (Formale) ussagen sind in jeder einzelnen Struktur zu wahr oder falsch auswertbar Verknüpft mit logischen Operatoren und oder impliziert nicht 10 12

ussagenlogik: Syntax ussagenlogik: Semantik Komplexe ussagen: Beispiele: Wenn mittlerer Knopf gedrückt, dann ufzug nicht in der Mitte Der ufzug ist oben und der ufzug ist nicht unten ufzugoben ufzugunten falsch in: oben MitteGedrückt ufzugmitte Der ufzug ist oben und der ufzug ist nicht unten mitte ufzug mitte Unten gedruckt ufzugoben ufzugunten F.nach unten unten 13 15 ussagenlogik: Semantik ussagenlogik: Deduktionsmechanismus Der ufzug ist oben und der ufzug ist nicht unten ufzugoben ufzugunten wahr in: oben ufzug oben Mitte gedruckt Deduktionsmechanismus Syllogismen: bleitung neuer wahrer Formeln mitte F.nach unten P Q P Q Beispiel: unten ufzugunten ufzugunten ufzugoben ufzugoben 14 16

ussagenlogik: Deduktionsmechanismus Prädikatenlogik Deduktionsmechanismus im allgemeinen Kalkül In dieser Vorlesung: Wahrheitstafeln Logische Umformung Resolutionskalkül Tableaukalkül Reichere Struktur Objekte (lemente) Leute, Häuser, Zahlen, Theorien, Farben, Jahre,... Relationen (igenschaften) rot, rund, prim, mehrstöckig,... ist Bruder von, ist größer als, ist Teil von, hat Farbe, besitzt,.. =,,... Funktionen +, Mitte von, Vater von, nfang von,... DPLL 17 19 Prädikatenlogik Beispiel: Tante gatha ussagenlogik: Die Welt besteht aus Fakten... aber: ussagenlogik hat nur beschränkte usdruckskraft Beispiele: Die ussage lle Menschen sind sterblich erfordert eine Formel für jeden Mensch. Die ussage Jede natürliche Zahl ist entweder gerade oder ungerade erfordert eine Formel für jede Zahl. ine kleine Logelei: Jemand, der in Schloss Dreadbury wohnt, hat Tante gatha ermordet. gatha, ihr Butler und ihr Neffe Charles waren die einzigen Bewohner von Schloss Dreadbury. in Mörder hasst immer sein Opfer und ist niemals reicher als sein Opfer. Charles hasst niemanden, den Tante gatha gehasst hat. gatha hat jeden gehasst außer ihrem Butler. Der Butler hasst jeden, der nicht reicher ist als Tante gatha. Der Butler hasst jeden, den Tante gatha gehasst hat. Niemand hasst jeden. gatha war nicht der Butler. Wer hat Tante gatha ermordet? 18 20

Beispiel: Tante gatha Beispiel: Tante gatha Zuerst formalisieren wir das Problem: Jemand, der in Schloss Dreadbury wohnt, hat Tante gatha ermordet. x (schlossbewohner(x) ermordet(x, a)) gatha, ihr Butler und ihr Neffe Charles waren die einzigen Bewohner von Schloss Dreadbury. x (schlossbewohner(x) (x = a x = b x = c)) Der Butler hasst jeden, der nicht reicher ist als Tante gatha. x ( reicher(x, a) hasst(b, x)) Der Butler hasst jeden, den Tante gatha gehasst hat. x (hasst(a, x) hasst(b, x)) Niemand hasst jeden. x y ( hasst(x, y)) gatha war nicht der Butler. a = b 21 23 Beispiel: Tante gatha Prädikatenlogik: Deduktionsmechanismus in Mörder hasst immer sein Opfer und ist niemals reicher als sein Opfer. x, y (ermordet(x, y) hasst(x, y)) x, y (ermordet(x, y) reicher(x, y)) Charles hasst niemanden, den Tante gatha gehasst hat. x (hasst(c, x) hasst(a, x)) gatha hat jeden gehasst außer ihrem Butler. Deduktionsmechanismus bleitung neuer wahrer Formeln Syllogismen: x(p(x) Q(x)) x(p(x) R(x)) x(q(x) R(x)) x ( hasst(a,x) x = b) 22 24

Beispiel: Tante gatha Beispiel: Tante gatha Nun können wir aus den Formeln neue Formeln ableiten. Beispielweise so: Damit wissen wir schon, dass Charles nicht der Mörder ist. Die weitere Berechnung ist aber mühsam. ermordet(x, y) hasst(x, y) hasst(c, y) hasst(a, y) ermordet(c, y) hasst(a, y) Glücklicherweise können wir die rbeit einem automatischen Theorembeweiser überlassen. ermordet(c, y) hasst(a, y) ermordet(c, y) y = b hasst(a, y) y = b 25 27 Beispiel: Tante gatha Prädikatenlogik: Deduktionsmechanismus Nun können wir aus den Formeln neue Formeln ableiten. Beispielweise so: In dieser Vorlesung: Resolutionskalkül Tableaukalkül ermordet(x, y) hasst(x, y) hasst(c, y) hasst(a, y) ermordet(c, y) hasst(a, y) ermordet(c, y) hasst(a, y) hasst(a, y) y = b ermordet(c, y) y = b ermordet(c, y) y = b (a = b) ermordet(c, a) 26 28

Das ganze Bild Das ganze Bild Probleme (Beschreibung in natürlicher Sprache) Probleme (Beschreibung in natürlicher Sprache) Formalisierung Formalisierung Logische Sprache: Syntax Logische Sprache: Syntax (automatische) ussagenlogik / Prädikatenlogik Formel Modelle: Semantik Kalkül Logik ussagenlogik / Prädikatenlogik Deduktion Formel Modelle: Semantik Kalkül Logik Gültige Formel Vollständigkeit Beweisbare Formel Gültige Formel Vollständigkeit Beweisbare Formel Korrektheit Korrektheit 29 31 Das ganze Bild Inhalt der Vorlesung Probleme (Beschreibung in natürlicher Sprache) Formalisierung Logische Sprache: Syntax Modellierung ussagenlogik / Prädikatenlogik Modelle: Semantik Gültige Formel Formel Vollständigkeit Korrektheit Kalkül Beweisbare Formel Logik 1. inführung: Motivation, Beweisstrategien (insb. Induktion) 2. ussagenlogik Syntax und Semantik Deduktionsmechanismen: - Resolution, Vollständigkeits- und Korrektheitsbeweise - nalytische Tableaux; DPLL 3. Prädikatenlogik Syntax und Semantik Deduktionsmechanismen: - Resolution, Vollständigkeits- und Korrektheitsbeweise - nalytische Tableaux 4. Weitere ussichten - Nichtklassische Logiken; Logiken höherer Stufe - nwendungen: z.b. Datenbanken oder Verifikation 30 32

inführung: Zusammenfassung Mathematisches Beweisen Ziel und Rolle der Formalen Logik in der Informatik Modellierung, däquatheit der Modellierung Wesentliche Komponenten für jede Logik: Syntax, Semantik, Deduktionsmechanismus (Kalkül) Beispiel ussagenlogik: Syntax, Semantik, Syllogismen Beispiel Prädikatenlogik: Syntax, Semantik, Syllogismen The Whole Picture: Formel in der wahren Welt / (semantisch) gültige Formel, gültige Formel / ableitbare Formel Vollständigkeit und Korrektheit von Kalkülen Mathematische ussagen - haben oft die Form: Wenn, dann B. - als Formel: B Mathematischer Beweis - bzgl. eines vorgegebenen xiomensystems - mit Hilfe von Inferenzregeln 33 35 1. Grundlegende Beweisstrategien Grundlegende Beweisstrategien Mathematische ussagen der Form B (Wenn, dann B) - Direkter Beweis: nnahme: gilt. Benutze, xiome, und Inferenzregeln um B zu beweisen. Behauptung: Das Quadrat einer ungeraden natürlichen Zahl n ist stets ungerade. Beweis: s sei n eine ungerade natürliche Zahl. Dann lässt sich n darstellen als n = 2k + 1, wobei k eine natürliche Zahl oder Null ist. Daraus folgt mit Hilfe der ersten binomischen Formel n 2 = (2k + 1) 2 = 4k 2 + 4k + 1 = 2 (2k 2 + 2k) + 1. us der Möglichkeit, n 2 so darzustellen folgt, dass n 2 ungerade ist. 34 36

Grundlegende Beweisstrategien Grundlegende Beweisstrategien Mathematische ussagen der Form B (Wenn, dann B) - Beweis durch Kontraposition: Beweis von B. - Beweis durch Widerspruch: Beweise dass B falsch Mathematische ussagen, die nicht die Form B haben - Äquivalenzbeweis ( B) ( genau dann, wenn B) Beweise dass B und dass B. (Wenn, dann B, und wenn B, dann.) Behauptung: Ist die Wurzel aus einer geraden natürlichen Zahl n eine natürliche Zahl, so ist diese gerade. n gerade und n = k N k gerade Beweis durch Kontraposition: Zu zeigen: n = k N und k ungerade n ungerade. 37 39 Grundlegende Beweisstrategien Grundlegende Beweisstrategien Mathematische ussagen der Form B (Wenn, dann B) - Beweis durch Kontraposition: Beweis von B. - Beweis durch Widerspruch: Beweise dass B falsch Behauptung: Ist die Wurzel aus einer geraden natürlichen Zahl n eine natürliche Zahl, so ist diese gerade. Beweis: ngenommen, n = k wäre ungerade. Dann ist wegen der bereits bewiesenen Behauptung auch k 2 = n ungerade, und das ist ein Widerspruch zu der Voraussetzung, dass n gerade ist. lso ist die getroffene nnahme falsch, d.h., n ist gerade. - Beweis durch Fallunterscheidung Um B zu beweisen, beweise dass 1 B,..., n B, wobei 1 n wahr Behauptung: Jede Primzahl p 3 hat die Form p = 4 k±1 mit einer natürlichen Zahl k. Beweis: Man unterscheidet folgende vier Fälle für die Zahl p, von denen immer genau einer eintritt: 1. p = 4k 2. p = 4k + 1 3. p = 4k + 2 4. p = 4k + 3 = 4(k + 1) 1 Im ersten dieser Fälle ist p durch 4 teilbar und damit keine Primzahl, im dritten Fall ist p durch 2 teilbar und somit ebenfalls keine Primzahl. lso muss einer der Fälle zwei oder vier eintreten, das heißt p hat die Form p = 4 k ± 1 mit einer natürlichen Zahl k. 38 40

Grundlegende Beweisstrategien Grundlegende Beweisstrategien - Beweis durch Fallunterscheidung Um B zu beweisen, beweise dass 1 B,..., n B, wobei 1 n wahr s sei angemerkt, dass die Fallunterscheidung zwar vollständig sein muss, aber die untersuchten Fälle sich nicht gegenseitig ausschließen müssen. ussagen mit Quantoren x (p(x) q(x)) x Sei a ein geeignetes lement aus U. Beweis der Implikation p(a) q(a). Damit folgt x U : p(x) q(x). y (x, y) 41 43 Grundlegende Beweisstrategien Grundlegende Beweisstrategien ussagen mit Quantoren Beweise mittels Vollständiger Induktion x U : (p(x) q(x)) Wähle a beliebig aus U. Beweis der Implikation p(a) q(a). Da a beliebig gewählt werden kann, folgt x U : p(x) q(x) Behauptung: n N : (n ist gerade und n ist eine natürliche Zahl n ist gerade). {z } {z } Beweis: Sei n beliebig aus N. Wir zeigen, dass wenn n gerade ist und n eine natürliche Zahl ist, dann n gerade ist (das wurde auf Seite 6 bewiesen). p(n) q(n) 42 44

Induktion Induktion über die natürlichen Zahlen Wesentliches Beweisprinzip in Mathematik und Logik Idee: Definition der natürlichen Zahlen infache Version Induktion über die natürlichen Zahlen N (natural induction) Generalization Noethersche Induktion (noetherian induction/ induction over well-founded partially ordered sets) (1) (2) (3) (4) (5) 0 ist eine natürliche Zahl Jede natürliche Zahl n hat einen Nachfolger S(n) us S(n) = S(m) folgt n = m 0 ist nicht Nachfolger einer natürlichen Zahl Jede Menge X, die 0 und mit jeder natürlichen Zahl n auch deren Nachfolger S(n) enthält, umfasst alle natürlichen Zahlen. 45 47 mmy Noether Induktion über die natürlichen Zahlen Geboren 1882 in rlangen Gestorben 1934 in Princeton (US) Mitbegründerin der modernen lgebra (5) Jede Menge X, die 0 und mit jeder natürlichen Zahl n auch deren Nachfolger S(n) enthält, umfasst alle natürlichen Zahlen. X Menge: Falls 0 X, und so n N : n X n + 1 X n N : n X llgemein heißt eine geordnete algebraische Struktur noethersch, wenn es in ihr keine unendlich absteigenden Ketten gibt. Induktionssatz Gelten die beiden ussagen: - p(0) und - n N : p(n) p(n + 1), dann gilt auch n N : p(n). 46 48

Induktion über die natürlichen Zahlen Induktion über die natürlichen Zahlen (5) Jede Menge X, die 0 und mit jeder natürlichen Zahl n auch deren Nachfolger S(n) enthält, umfasst alle natürlichen Zahlen. X Menge: Falls 0 X, und so n N : n X n + 1 X n N : n X Struktur eines Induktionsbeweises (1) Induktionsbasis: Beweise p(0) (2) Induktionsvoraussetzung: Für ein beliebig gewähltes n N gilt p(n) (3) Induktionsschluss: Folgere p(n + 1) aus der Induktionsvoraussetzung p(n) Induktionssatz Gelten die beiden ussagen: - p(0) und Induktionsbasis - n N : p(n) p(n + 1), Induktionsschritt dann gilt auch n N : p(n). 49 51 Induktion über die natürlichen Zahlen Beispiel Struktur eines Induktionsbeweises (1) Induktionsbasis: Beweise p(0) (2) Induktionsschritt: Beweise p(n) p(n + 1) für ein beliebiges n N Behauptung: Die Summe der ersten n ungeraden Zahlen ist n 2. n 1 X Für alle n N, (2i + 1) = n 2. i=0 50 52

Beispiel Behauptung: Die Summe der ersten n ungeraden Zahlen ist n 2. n 1 X Für alle n N, (2i + 1) = n 2 n 1. X p(n) : (2i + 1) = n 2 i=0 (1) Induktionsbasis: Beweise p(0) n = 0: 0 = 0 2 i=0 Beispiel Behauptung: Die Summe der ersten n ungeraden Zahlen ist n 2. n 1 X Für alle n N, (2i + 1) = n 2 n 1. X p(n) : (2i + 1) = n 2 i=0 (1) Induktionsbasis: Beweise p(0) OK (2) Induktionsvoraussetzung: Für ein beliebig gewähltes n 1 X n N gilt p(n): (2i + 1) = n 2 (3) Induktionsschluss: Folgere p(n + 1) aus p(n) nx p(n + 1) : (2i + 1) = (n + 1) 2. i=0 i=0 i=0 Beweis: nx Xn 1 (2i + 1) = ( (2i + 1)) + (2n + 1) p(n) = n 2 + (2n + 1) = (n + 1) 2. i=0 i=0 53 55 Beispiel Verallgemeinerte vollständige Induktion Behauptung: Die Summe der ersten n ungeraden Zahlen ist n 2. n 1 X Für alle n N, (2i + 1) = n 2 n 1. X p(n) : (2i + 1) = n 2 i=0 (1) Induktionsbasis: Beweise p(0) OK (2) Induktionsvoraussetzung: Für ein beliebig gewähltes n 1 X n N gilt p(n): (2i + 1) = n 2 i=0 i=0 Verallgemeinerte vollständige Induktion Gelten die beiden ussagen: p(0) und n N : p(0) p(1) p(n) p(n + 1) dann gilt die ussage n N : p(n). 54 56

Wohlfundierte (Noethersche) Induktion Beispiel Verallgemeinerte vollständige Induktion Gelten die beiden ussagen: p(0) und n N : p(0) p(1) p(n) p(n + 1) dann gilt die ussage n N : p(n). Verallgemeinerte vollständige Induktion Gilt die ussage: n N : ( dann gilt die ussage k N : (k < n p(k)) p(n)) n N : p(n). Äquivalent Gelten die beiden ussagen: p(0) und n N : ( k N : (k < n + 1 p(k)) p(n + 1)) dann gilt die ussage n N : p(n). Induktionsvoraussetzung: Induktionsschluss: Für ein beliebig gewähltes n N, gilt p(k) für alle k < n Folgere p(n) aus der Induktionsvoraussetzung 57 59 Wohlfundierte (Noethersche) Induktion Beispiel Verallgemeinerte vollständige Induktion Gelten die beiden ussagen: p(0) und n N : p(0) p(1) p(n) p(n + 1) dann gilt die ussage Äquivalent Gilt die ussage: n N : ( dann gilt die ussage n N : p(n). k N : (k < n p(k)) p(n)) n N : p(n). Satz: Jede natürliche Zahl lässt sich als Produkt von Primzahlen darstellen. p(n): n lässt sich als Produkt von Primzahlen darstellen. Beweis: Sei n N beliebig gewählt. Induktionsvoraussetzung: p(k) gilt für alle k < n Induktionsschluss: Folgere p(n) aus der Induktionsvoraussetzung Fallunterscheidung: Fall 1: n Primzahl. Dann lässt sich n als Produkt von Primzahlen darstellen. Fall 1: n keine Primzahl. Dann n = k 1 k 2, mit k 1, k 2 N, k 1, k 2 > 1. Da aber k i < n, i = 1, 2 ist nach Induktionsvoraussetzung bereits eine Darstellung als Produkt von Primzahlen für k i bekannt. Multipliziert man diese beiden Produkte miteinander, so erhält man eine Darstellung für n. 58 60

Wohlfundierte (Noethersche) Induktion Wohlfundierte (Noethersche) Induktion Theorem: Falls dann gilt n N : ( n N : p(n) k N : (k < n p(k)) p(n)) P Q Theorem: Falls dann gilt n N : ( n N : p(n) k N : (k < n p(k)) p(n)) P Q Beweis: Zu zeigen: P Q Kontrapositionsbeweis: Wir zeigen, dass Q P nnahme: Q := ( n N : p(n)) n N : p(n). > wohlfundierte Ordnung auf N: es gibt keine unendliche Folge x 1,...,x n,... mit x 1 > x 2 > > x n >.... Sei Y = {n N p(n)} =. Dann hat Y ein minimales lement m, d.h. m(m Y ( k N : (k < m k Y))) = P. Verallgemeinerung - beliebige Menge statt N - < partielle Ordnung auf - < wohlfundiert (es gibt keine unendliche Folge x 1,...,x n,... mit x 1 > x 2 > > x n >... ) 61 63 Wohlfundierte (Noethersche) Induktion Binäre Relationen Theorem: Falls dann gilt n N : ( n N : p(n) k N : (k < n p(k)) p(n)) P Q Definition: ine binäre Relation R über einer Menge ist eine Teilmenge von. R binäre Relation: R. Statt (x, y) R schreiben wir: R(x,y) oder xry. Beweis: Zu zeigen: P Q Kontrapositionsbeweis: Wir zeigen, dass Q P nnahme: Q := ( n N : p(n)) n N : p(n). > wohlfundierte Ordnung auf N: es gibt keine unendliche Folge x 1,...,x n,... mit x 1 > x 2 > > x n >.... Sei Y = {n N p(n)} =. Dann hat Y ein minimales lement m, d.h. m(m Y ( k N : (k < m k Y))) = P. 62 64

Partielle Ordnungen Partielle Ordnungen Definition: ine binäre Relation R über einer Menge ist eine partielle Ordnung gdw. Definition: ine binäre Relation R über einer Menge ist eine partielle Ordnung gdw. R ist reflexiv: R ist transitiv: R ist antisymmetrisch x (xrx) x,y,z (xry yrz xrz) x,y (xry yrx x = y) R ist reflexiv: R ist transitiv: R ist antisymmetrisch x (xrx) x,y, z (xry yrz xrz) x,y (xry yrx x = y) Beispiele: (N, ) (,R), wobei = {0, a,b,1} und R = {(0,0),(0, a), (0,1),(a, a), (a, 1),(b,b),(b,1),(1, 1)} R partielle Ordnung: a und b in R unvergleichbar. 65 67 Partielle Ordnungen Totale Ordnungen Definition: ine binäre Relation R über einer Menge ist eine partielle Ordnung gdw. Definition: Sei (, R) eine partiell geordnete Menge. R ist eine totale Ordnung gdw. R(x, y) oder R(y, x) für alle x,y. R ist reflexiv: R ist transitiv: R ist antisymmetrisch x (xrx) x,y,z (xry yrz xrz) x,y (xry yrx x = y) Dann heißt (,R) eine partiell geordnete Menge 66 68

Minimum Wohlfundierte partielle Ordnungen Definition: Sei (, R) eine partiell geordnete Menge. Sei, und m. m ist ein Minimales lement von, gdw.: es gibt kein x mit x m,x m. Sei (, ) eine partiell geordnete Menge. Definition: x < y gdw.: (x y und x y) (für x,y ) 69 71 Minimum Wohlfundierte partielle Ordnungen Definition: Sei (, R) eine partiell geordnete Menge. Sei, und m. m ist ein Minimales lement von, gdw.: es gibt kein x mit x m,x m. Beispiele: (N, ). Sei = {3,5,7,9} N. 3 ist ein Minimales lement von. Sei (,R) wobei = {a, b,c,d} und R = {(a, a), (a, b),(c,c),(c,b), (c,d),(e,e),(e,d),(b,b),(d, d)} Sei = {a, b,c}. hat zwei minimale lemente: a und c. Sei (, ) eine partiell geordnete Menge. Definition: x < y gdw.: (x y und x y) (für x,y ) Definition (Noethersch / wohlfundiert) (, ) heißt noethersch (oder wohlfundiert) gdw.: s gibt keine unendlich absteigende Kette in, das heißt: s gibt keine unendliche Folge (x i ) i N, mit x i für alle i N und x i+1 < x i für alle i N. (Unendlich aufsteigende Ketten sind zulässig) 70 72

Beispiele Wohlfundierte partielle Ordnungen (N, ) is wohlfundiert (Z, ) ist nicht wohlfundiert (0 { 1 n N}, ) ist nicht wohlfundiert n (R, ) ist nicht wohlfundiert Lemma. (, ) ist noethersch (wohlfundiert) gdw.: jede nicht-leere Teilmenge von hat (mindestens) ein Minimales lement. Beweis: Statt P Q, beweisen wir wieder Q P. nnahme: (, ) ist nicht noethersch, d.h. es gibt eine unendliche Folge (x i ) i N, mit x i für alle i N und x i+1 < x i für alle i N. Sei = {x i i N}. Wir zeigen, dass keinen minimalen lement hat: Sei a. Dann a = x i für einen i N. Dann ist x i+1 < a; deshalb kann a nicht minimal sein. 73 75 Wohlfundierte partielle Ordnungen Wohlfundierte partielle Ordnungen Lemma. (, ) ist noethersch (wohlfundiert) gdw.: jede nicht-leere Teilmenge von hat (mindestens) ein Minimales lement. Lemma. (, ) ist noethersch (wohlfundiert) gdw.: jede nicht-leere Teilmenge von hat (mindestens) ein Minimales lement. Beweis: Statt P Q, beweisen wir Q P. Sei nicht-leere Teilmenge von, die kein minimales lement enthält. Sei x 1. Da x 1 nicht minimal ist, gibt es x 2 mit x 2 < x 1. Da x 2 nicht minimal ist, gibt es x 3 mit x 3 < x 2 < x 1. Wir können deswegen eine unendliche absteigende Kette von lementen aus bilden, d.h. ist nicht noethersch. Nota bene s genügt nicht, dass ein minimales lement hat (selbst dann nicht, wenn total ist). Beispiel: (0 { 1 n N}, ) n 74 76

Verallgemeinerte vollständige Induktion Verallgemeinerte vollständige Induktion Theorem: Falls dann gilt n N : ( n N : p(n) k N : (k < n p(k)) p(n)) P Q Theorem: Falls dann gilt n N : ( n N : p(n) k N : (k < n p(k)) p(n)) P Q Beweis: < wohlfundiert (es gibt keine unendliche Folge x 1,...,x n,... mit x 1 > x 2 > > x n >... ) Verallgemeinerung - beliebige Menge statt N - < partielle Ordnung auf - < wohlfundiert Beweis: Zu zeigen: P Q Kontrapositionsbeweis: Wir zeigen, dass Q P nnahme: Q := ( n N : p(n)) n N : p(n). > wohlfundierte Ordnung auf N: es gibt keine unendliche Folge x 1,...,x n,... mit x 1 > x 2 > > x n >.... Sei Y = {n N p(n)} =. Dann hat Y ein minimales lement m, d.h. m(m Y ( k N : (k < m k Y))) = P. 77 79 Wohlfundierte (Noethersche) Induktion Theorem: (Verallgemeinerte vollständige Induktion) Falls dann gilt n N : ( n N : p(n) k N : (k < n p(k)) p(n)) Sei (, ) noethersch (wohlfundiert). Sei p ein Prädikat auf, d.h., eine Funktion p : {wahr,falsch} (igenschaft der lementen aus, die wahr oder falsch sein kann.) Theorem. (Noethersche Induktion) Falls dann gilt x : ( x : p(x) y : (y < x p(y)) p(x)) P Q P Q Wohlfundierte (Noethersche) Induktion Sei (, ) noethersch (wohlfundiert). Sei p ein Prädikat auf, d.h., eine Funktion p : {wahr,falsch} (igenschaft der lementen aus, die wahr oder falsch sein kann.) Theorem. Falls dann gilt x X : ( x X : p(x) y X : (y < x p(y)) p(x)) Beweis: zu zeigen: P Q. Kontrapositionsbeweis: Q P nnahme: Q := ( x X:p(x)) ( x X: p(x)). > wohlfundierte Ordnung auf X: es gibt keine unendliche Folge x 1,...,x n,... mit x 1 > x 2 > > x n >.... Sei Y = {y X p(y)} =. Dann hat Y ein minimales lement x 0, d.h. x 0 (x 0 Y ( y X : (y < x 0 y Y))). P Q 78 80

Wohlfundierte (Noethersche) Induktion Fehlerquellen Sei (, ) noethersch (wohlfundiert). Sei p ein Prädikat auf, d.h., eine Funktion p : {wahr,falsch} (igenschaft der lementen aus, die wahr oder falsch sein kann.) Theorem. Falls dann gilt x X : ( x X : p(x) y X : (y < x p(y)) p(x)) Beweis: zu zeigen: P Q. Kontrapositionsbeweis: Q P nnahme: Q := ( x X:p(x)) ( x X: p(x)). > wohlfundierte Ordnung auf X: es gibt keine unendliche Folge x 1,..., x n,... mit x 1 > x 2 > > x n >.... Sei Y = {y X p(y)} =. Dann hat Y ein minimales lement x 0, d.h. x 0 (x 0 Y ( {z } y X : (y < x 0 y Y) )) = P. {z } p(x 0 ) y<x 0 p(y) P Q Was ist hier falsch? Behauptung: lle Menschen haben die gleiche Haarfarbe p(n) : In einer Menge von n Menschen haben alle die gleiche Haarfarbe Induktionbasis: n = 1 Für eine Menge mit nur einem Menschen gilt die Behauptung trivial 81 83 Fehlerquellen Fehlerquellen Häufige Fehler bei Induktionsbeweisen Was ist hier falsch? Ordnung ist nicht noethersch Nicht alle Minima (Induktionsanfänge) bedacht Bei Induktionsschritt die Grenzfälle nicht bedacht Behauptung: lle Menschen haben die gleiche Haarfarbe p(n) : In einer Menge von n Menschen haben alle die gleiche Haarfarbe Induktionsvoraussetzung: p(n) wahr. Induktionsschritt: Beweise, dass aus p(n), p(n + 1) folgt. n + 1 Menschen werden in eine Reihe gestellt. Der Mensch links außen wird rausgeschickt. Nun kann die Induktionsbehauptung angewendet werden und alle verbliebenen haben die gleiche Haarfarbe (mit dem rechts außen). 82 84

Fehlerquellen Produktordnung Was ist hier falsch? Behauptung: lle Menschen haben die gleiche Haarfarbe p(n) : In einer Menge von n Menschen haben alle die gleiche Haarfarbe Induktionsvoraussetzung: p(n) wahr. Induktionsschritt: Beweise, dass aus p(n), p(n + 1) folgt. n + 1 Menschen werden in eine Reihe gestellt. Der Mensch rechts außen wird rausgeschickt. Die Induktionsbehauptung kann angewendet werden und alle verbliebenen haben die gleiche Haarfarbe (mit dem links außen). lso haben die beiden außen die gleiche Haarfarbe, wie die in der Mitte, und die haben auch alle die gleiche Haarfarbe lso haben alle n + 1 Menschen die gleiche Haarfarbe. Definition: Seien (, ) und (B, B ) partiell geordnete Mengen. Dann ist die Produktordnung produkt auf B gegeben durch: (x,y) produkt (x,y ) gdw. (x x und y B y ) Lemma: Wenn (, ) und (B, B ) noethersch sind, dann ist ( B, produkt ) noethersch. 85 87 Beispiele von noetherschen Ordnungen Ordnungen auf kartesischen Produkten Die Produktordnung Die lexikographische Ordnung Produktordnung Lemma: (X, ) noethersch gdw: für jede unendliche Folge (x i ) i N mit x i X für alle i N und mit x 1 x 2 x 3... xn... es gibt ein m N so dass xm = x k für alle k m. Definition: Seien (, ) und (B, B ) partiell geordnete Mengen. Dann ist die Produktordnung produkt auf B gegeben durch: (x,y) produkt (x,y ) gdw. (x x und y B y ) 86 Lemma: Wenn (, ) und (B, B ) noethersch sind, dann ist ( B, produkt ) noethersch. Beweis: Sei ((x i, y i )) i N unendliche Folge in B mit (x 1, y 1 ) produkt (x 2, y 2 ) produkt (x 3, y 3 ) produkt produkt (x n, y n ) produkt... Dann x 1 x 2 x 3... x n... und y 1 B y 2 B y 3 B... B y n B... Da (, ) noethersch ist, es gibt m 1 so dass x m1 = x k für alle k m 1. Da (B, B ) noethersch ist, es gibt m 2 so dass x m2 = x j für alle j m 2. Sei m = max(m 1, m 2 ). Dann (x m, y m ) = (x i, y i ) für alle i m. Das zeigt, dass ( B, produkt ) noethersch ist. 88

Lexikographische Ordnung Lexikographische Ordnung Lemma: (X, ) noethersch gdw: für jede unendliche Folge (x i ) i N mit x i X für alle i N und mit x 1 x 2 x 3... xn... es gibt ein m N so dass xm = x k für alle k m. Definition: Seien (, ) und (B, B ) partiell geordnete Mengen. Dann ist die lexikographische Ordnung auf B gegeben durch: (x,y) (x, y ) gdw. x = x und y = y oder x < x oder x = x und y < B y Definition: Seien (, ) und (B, B ) partiell geordnete Mengen. Dann ist die lexikographische Ordnung auf B gegeben durch: (x,y) (x, y ) gdw. x = x und y = y oder x < x oder x = x und y < B y Lemma: Wenn (, ) und (B, B ) noethersch sind, dann ist ( B, ) noethersch. Lemma: Wenn (, ) und (B, B ) noethersch sind, dann ist ( B, ) noethersch. 89 Beweis: Sei ((x i, y i )) i N unendliche Folge in B mit (x 1, y 1 ) (x 2, y 2 ) (x 3, y 3 ) (x n, y n )... Fall 2: x 1 = x 2 = = x i1 x i1 +1 =... = x i2.... Da (, ) noethersch ist, es gibt m 2 so dass x m2 = x k für alle k m 2. 91 Lexikographische Ordnung Lemma: (X, ) noethersch gdw: für jede unendliche Folge (x i ) i N mit x i X für alle i N und mit x 1 x 2 x 3... xn... es gibt ein m N so dass xm = x k für alle k m. Lexikographische Ordnung Lemma: (X, ) noethersch gdw: für jede unendliche Folge (x i ) i N mit x i X für alle i N und mit x 1 x 2 x 3... xn... es gibt ein m N so dass xm = x k für alle k m. Definition: Seien (, ) und (B, B ) partiell geordnete Mengen. Definition: Seien (, ) und (B, B ) partiell geordnete Mengen. Dann ist die lexikographische Ordnung auf B gegeben durch: Dann ist die lexikographische Ordnung auf B gegeben durch: (x,y) (x, y ) gdw. x = x und y = y oder (x,y) (x, y ) gdw. x = x und y = y oder x < x oder x < x oder x = x und y < B y x = x und y < B y Lemma: Wenn (, ) und (B, B ) noethersch sind, dann ist ( B, ) noethersch. Lemma: Wenn (, ) und (B, B ) noethersch sind, dann ist ( B, ) noethersch. Beweis: Sei ((x i, y i )) i N unendliche Folge in B mit Beweis: Sei ((x i, y i )) i N unendliche Folge in B mit (x 1, y 1 ) (x 2, y 2 ) (x 3, y 3 ) (x n, y n )... (x 1, y 1 ) (x 2, y 2 ) (x 3, y 3 ) (x n, y n )... Fall 1: Die ersten Komponenten sind alle gleich: Dann y 1 B y 2 B.... (B, B ) noethersch ist, es gibt m 1 so dass x m1 = x j für alle j m 1. 90 Sei m = max(m 1, m 2 ). Dann (x m, y m ) = (x i, y i ) für alle i m. Das zeigt, dass ( B, ) noethersch ist. 92

Beispiel für Induktion: ckermann-funktion 8 >< y + 1 falls x = 0 CK(x,y) = CK(x 1,1) falls x 0 und y = 0 >: CK(x 1,CK(x, y 1)) falls x 0 und y 0 Beispiel für Induktion: ckermann-funktion 8 >< y + 1 falls x = 0 CK(x,y) = CK(x 1,1) falls x 0 und y = 0 >: CK(x 1,CK(x, y 1)) falls x 0 und y 0 Theorem. CK ist eine totale Funktion auf N N. Die ckermann-funktion ist eine 1926 von Wilhelm ckermann gefundene, extrem schnell wachsende mathematische Funktion, mit deren Hilfe in der theoretischen Informatik Grenzen von Computer- und Berechnungsmodellen aufgezeigt werden können. Induktionsvoraussetzung: CK(m,n ) definiert für alle (m, n ) < (m,n). Induktionsschritt: Beweis durch Fallunterscheidung m = 0: CK(0, n) = n + 1 (definiert) m 0, n = 0. Dann (m 1,1) < (m,0), d.h. CK(m 1,1) definiert ber CK(m,0) = CK(m 1,1), so CK(m,n) definiert. m 0, n 0. Dann (m, n 1) < (m,n), d.h. CK(m, n 1) definiert. (m 1, z) < (m,z), d.h. CK(m 1, CK(m,n 1)) definiert. 93 95 Beispiel für Induktion: ckermann-funktion 8 >< y + 1 falls x = 0 CK(x,y) = CK(x 1,1) falls x 0 und y = 0 >: CK(x 1,CK(x, y 1)) falls x 0 und y 0 Theorem. CK ist eine totale Funktion auf N N. Zusammenfassung Grundlegende Beweisstrategien Induktion über die natürlichen Zahlen Partielle Ordnung, totale Ordnung, minimale lemente Noethersche (wohlfundierte) Menge Noethersche Induktion (Theorem, Beweis) Induktionbasis: CK(0, 0) = 1 (definiert) Fehlerquellen Produktordnung/Lexikographische Ordnung Beispiel für noethersche Induktion: ckermann-funktion 94 96

2. ussagenlogik Beispiel: Das 8-Damen Problem Beschreibung des Problems Für jedes Feld des Schachbretts eine aussagenlogische Variable D ij Mit der Vorstellung, dass D ij den Wert wahr hat, wenn auf dem Feld (i, j) eine Dame steht. Wir benutzen kartesische Koordinaten zur Notation von Positionen 97 99 Beispiel: Das 8-Damen Problem Beispiel: Das 8-Damen Problem Man platziere acht Damen so auf einem Schachbrett, dass sie sich gegenseitig nicht bedrohen. Beispiel: uf dem Feld (5, 7) steht eine Dame D 57 wahr. inschränkungen pro Feld: F ij Falls auf dem Feld (5, 7) eine Dame steht: keine andere Dame auf Feld (5,1), (5,2), (5,3), (5,4),(5,5), (5,6), (5,8) keine andere Dame auf Feld (1,7), (2,7), (3,7), (4,7),(6,7), (7,7), (8,7) keine andere Dame auf Feld (6,8), (4,6), (3,5), (2,4),(1,3) keine andere Dame auf Feld (4,8), (6,6), (7,5), (8,4) 98 100

Beispiel: Das 8-Damen Problem Beispiel: Das 8-Damen Problem Beispiel: uf dem Feld (5, 7) steht eine Dame D 57 wahr. inschränkungen pro Feld: F ij Falls auf dem Feld (5, 7) eine Dame steht: keine andere Dame auf Feld (5,8), (5,6), (5,5), (5,4),(5,3), (5,2), (5,1) D 57 D 58 D 5,6 D 5,5 D 5,4 D 5,3 D 5,2 D 5,1 keine andere Dame auf Feld (1,7), (2,7), (3,7), (4,7),(6,7), (7,7), (8,7) D 57 D 17 D 2,7 D 3,7 D 4,7 D 6,7 D 7,7 D 87 keine andere Dame auf Feld (6,8), (4,6), (3,5), (2,4),(1,3) D 57 D 68 D 4,6 D 3,5 D 2,4 D 1,3 keine andere Dame auf Feld (4,8), (6,6), (7,5), (8,4) Beispiel: uf dem Feld (5, 7) steht eine Dame D 57 wahr. inschränkungen pro Feld: F ij D 57 D 58 D 5,6 D 5,5 D 5,4 D 5,3 D 5,2 D 5,1 D 57 D 17 D 2,7 D 3,7 D 4,7 D 6,7 D 7,7 D 87 D 57 D 68 D 4,6 D 3,5 D 2,4 D 1,3 D 57 D 48 D 6,6 D 7,5 D 8,4 {z } F 57 Globale inschränkungen Für jedes k mit 1 k 8: R k := D 1,k D 2,k D 3,k D 4,k D 5,k D 6,k D 7,k D 8,k D 57 D 48 D 6,6 D 7,5 D 8,4 101 103 Beispiel: Das 8-Damen Problem Beispiel: Das 8-Damen Problem Beispiel: uf dem Feld (5, 7) steht eine Dame D 57 wahr. inschränkungen pro Feld: F ij D 57 D 58 D 5,6 D 5,5 D 5,4 D 5,3 D 5,2 D 5,1 Struktur: Wahrheitswerte für die atomaren ussagen D ij Modell für F ij (R k ): Wahrheitswerte für die atomaren ussagen D ij so dass F ij wahr (bzw. R k wahr). D 57 D 17 D 2,7 D 3,7 D 4,7 D 6,7 D 7,7 D 87 D 57 D 68 D 4,6 D 3,5 D 2,4 D 1,3 D 57 D 48 D 6,6 D 7,5 D 8,4 {z } F 57 Lösung des 8-Damen Problems: ine aussagenlogische Struktur beschreibt eine Lösung des 8-Damen- Problems genau dann, wenn sie ein Modell der Formeln ist. F ij für alle 1 i, j 8 R k für alle 1 k 8 102 104

Beispiel: ufzug Modellierung: Strukturen oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt mitte F.nach unten mitte ufzug mitte Unten gedruckt mitte F.nach unten mitte mitte F.nach unten F.nach unten unten unten unten unten unten v(ufzugoben) = wahr v(ufzugmitte) = wahr v(ufzugoben) = wahr v(ufzugmitte) = wahr v(mittegedrückt) = wahr v(untengedrückt) = wahr v(mittegedrückt) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr 105 107 Beispiel: ufzug Modellierung: Strukturen oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt oben oben mitte F.nach unten mitte ufzug mitte Unten gedruckt mitte F.nach unten ufzug mitte mitte mitte ufzug mitte Oben gedruckt F.nach unten unten unten unten F.nach oben unten unten v(ufzugoben) = wahr v(ufzugmitte) = wahr v(ufzugoben) = wahr v(ufzugmitte) = wahr v(mittegedrückt) = wahr v(untengedrückt) = wahr v(mittegedrückt) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr v(fährtnachunten) = wahr 106 108

Modellierung: Strukturen ussagenlogik oben ufzug oben Mitte gedruckt oben oben ufzug oben Mitte gedruckt Die Welt besteht aus Fakten die wahr oder falsch sein können. mitte F.nach unten mitte ufzug mitte Unten gedruckt mitte F.nach unten ufzug mitte F.nach unten unten unten unten ussagen beziehen sich auf Strukturen (Formale) ussagen sind in jeder einzelnen Struktur zu wahr oder falsch auswertbar 109 111 Formale Logik 2.1 Syntax der ussagenlogik Syntax welche Formeln? Semantik Modelle (Strukturen) Wann ist eine Formel wahr (in einer Struktur)? Deduktionsmechanismus bleitung neuer wahrer Formeln 110 112

Syntax der ussagenlogik: Logische Zeichen Formeln der ussagenlogik Symbol für die Formel wahr Symbol für die Formel falsch Negationssymbol ( nicht ) Konjunktionssymbol ( und ) Disjunktionssymbol ( oder ) Implikationssymbol ( wenn... dann ) Symbol für Äquivalenz ( genau dann, wenn ) Definition: Menge For Π der Formeln über Π: Die kleinste Menge mit: For Π und For Π Π For Π Wenn F,G For Π, dann auch F,(F G),(F G),(F G),(F G) lemente von For Π. ( ) die beiden Klammern 113 115 Vokabular der ussagenlogik ussagenformeln bzählbare Menge von Symbolen, etwa Π = {P 0,...,P n } oder Π = {P 0, P 1,... } Bezeichnungen für Symbole in Π atomare ussagen tome For Π Menge der Formeln über Π: F,G,H ::= (Falsum) (Verum) P, P Π (atomare Formel) F (Negation) (F G) (Konjunktion) (F G) (Disjunktion) (F G) (Implikation) (F G) (Äquivalenz) ussagenvariablen 114 116

Konventionen zur Notation Terminologie Klammereinsparungen werden nach folgenden Regeln vorgenommen: > p > p > p > p (Präzedenzen), und sind assoziativ und kommutativ, ine Formel F, die als Teil einer Formel G auftritt, heißt Teilformel von G. F ist eine Teilformel von F 9 F = G und = H Teilformel von F H Teilformel von G ; 9 F = F 1 ρ F 2 >= (wo ρ {,,, }) H Teilformel von F >; H Teilformel von F 1 oder F 2 117 119 Beispiel: 8-Damenproblem 2.2 Strukturelle Induktion ussagenlogische Variablen D i,j bedeutet: uf dem Feld (i,j) steht eine Dame. Induktion über Formelaufbau Formeln Wenn auf dem Feld (5, 7) eine Dame steht, kann keine Dame auf Feld (5,8), (5,6), (5,5), (5,4),(5,3), (5,2), (5,1) stehen : D 57 D 58 D 5,6 D 5,5 D 5,4 D 5,3 D 5,2 D 5,1 118 120

Induktion über Formelaufbau: Beispiel Induktion über Formelaufbau: Beispiel Lemma: Ist F For Π und sind F 1,F 2 Teilformeln von F, dann gilt F 2 ist Teilformel von F 1, oder F 1 ist Teilformel von F 2, oder F 1, F 2 liegen getrennt Lemma: Ist F For Π und sind F 1,F 2 Teilformeln von F, dann gilt F 2 ist Teilformel von F 1, oder F 1 ist Teilformel von F 2, oder F 1,F 2 liegen getrennt Beweis: Durch noethersche Induktion über den Formelaufbau = For Π Teilformel: Teilformelrelation auf : F Teilformel G (alternative Notation: Teilformel(F, G)) gdw. F Teilformel von G. Relation Teilformel partielle Ordnung; noethersch 121 123 Induktion über Formelaufbau: Beispiel Strukturelle Induktion Menge aller aussagenlogischen Formeln For Π Lemma: Ist F For Π und sind F 1,F 2 Teilformeln von F, dann gilt F 2 ist Teilformel von F 1, oder F 1 ist Teilformel von F 2, oder F 1, F 2 liegen getrennt Basismenge:, ; P 0,P 1,P 2,... sind aussagenlogische Formeln (atomare Formeln) rzeugungsregel: Wenn F 1,F 2 aussagenlogische Formeln sind, dann sind auch F 1,F 1 F 2,F 1 F 2, F 1 F 2,F 1 F 2 aussagenlogische Formeln For Π kleinste Menge, die-, und Π enthält - zusammen mit F auch F enthält - zusammen mit F 1, F 2 auch F 1 opf 2 enthält (op {,,, }) Beweis: Durch noethersche Induktion über den Formelaufbau 122 124

Strukturelle Induktion Semantik der ussagenlogik Menge aller aussagenlogischen Formeln For Π Basismenge:, ; P 0,P 1,P 2,... sind aussagenlogische Formeln (atomare Formeln) rzeugungsregel: Wenn F 1,F 2 aussagenlogische Formeln sind, dann sind auch F 1,F 1 F 2,F 1 F 2, F 1 F 2,F 1 F 2 aussagenlogische Formeln For Π kleinste Menge, die-, und Π enthält - zusammen mit F auch F enthält - zusammen mit F 1, F 2 auch F 1 opf 2 enthält (op {,,, }) Gelten die beiden ussagen: - p() für alle atomaren Formeln {, } Π dann gilt auch - F For Π : p(f). F For Π : ((F = F 1 p(f 1 )) p(f)) ((F = F 1 opf 2 p(f 1 ) p(f 2 )) p(f)) Π eine aussagenlogische Signatur ussagenvariablen für sich haben keine Bedeutung. Hierfür müssen Wertebelegungen (Valuationen) explizit oder implizit aus dem Kontext zur Verfügung stehen. ine Valuation (Wertebelegung) ist eine bbildung : Π {0,1} Wir werden Wertebelegungen auch ussagenlogische Strukturen, ussagenlogische Modelle oder Interpretationen nennen. 125 127 2.3 Semantik der ussagenlogik Semantik der ussagenlogik Π eine aussagenlogische Signatur ussagenvariablen für sich haben keine Bedeutung. Hierfür müssen Wertebelegungen (Valuationen) explizit oder implizit aus dem Kontext zur Verfügung stehen. ine Wertebelegung ist eine bbildung Beispiel: : Π {0,1} B C 0 1 0 (Bei drei Symbolen gibt es 8 mögliche Modelle) 126 128

Semantik der ussagenlogik Semantik der ussagenlogik uswertung von Formeln in einem Modell Sei : Π {0,1} eine Wertebelegung. : For Π {0,1} wird wie folgt definiert: uswertung von Formeln in einem Modell Sei : Π {0,1} eine Wertebelegung. : For Π {0,1} wird wie folgt definiert: ( ) = 0 ( ) = 1 (P) = (P) 129 131 Semantik der ussagenlogik Semantik der ussagenlogik uswertung von Formeln in einem Modell Sei : Π {0,1} eine Wertebelegung. : For Π {0,1} wird wie folgt definiert: uswertung von Formeln in einem Modell Sei : Π {0,1} eine Wertebelegung. : For Π {0,1} wird wie folgt definiert: ( ) = 0 ( ) = 1 8 < 0 falls (F) = 1 ( F) = : 1 falls (F) = 0 130 132

Semantik der ussagenlogik Wahrheitstafel für die logischen Operatoren uswertung von Formeln in einem Modell Sei : Π {0,1} eine Wertebelegung. : For Π {0,1} wird wie folgt definiert: P P 0 1 1 0 8 < 0 falls (F 1 ) = 0 oder (F 2 ) = 0 (F 1 F 2 ) = : 1 falls (F 1 ) = (F 2 ) = 1 8 < 0 falls (F 1 ) = (F 2 ) = 0 (F 1 F 2 ) = : 1 falls (F 1 ) = 1 oder (F 2 ) = 1 0 1 0 0 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 1 0 1 0 1 133 135 Semantik der ussagenlogik Semantik der ussagenlogik uswertung von Formeln in einem Modell Sei : Π {0,1} eine Wertebelegung. : For Π {0,1} wird wie folgt definiert: 8 < 1 falls (F 1 ) = 0 oder (F 2 ) = 1 (F 1 F 2 ) = : 0 falls (F 1 ) = 1 und (F 2 ) = 0 8 < 1 falls (F 1 ) = (F 2 ) (F 1 F 2 ) = : 0 sonst uswertung von Formeln in einem Modell Sei : Π {0,1} eine Π-Valuation. : For Π {0,1} wird induktiv über ufbau von F wie folgt definiert: ( ) = 0 ( ) = 1 (P) = (P) ( F) = 1 (F) (FρG) = B ρ ( (F), (G)) B ρ (x,y) berechnet entschpr. der Wahrheitstafel für ρ z.b. : B (0, 1) = (0 1) = 1;B (1,0) = (1 0) = 0 Wir schreiben normalerweise statt. 134 136

Beispiel Gültigkeit und rfüllbarkeit Sei : {P,Q,R} {0,1} mit (P) = 1, (Q) = 0, (R) = 1. Definition: F gilt in (oder ist Modell von F) gdw. (F) = 1. Notation: = F ((P (Q P)) R) = (P (Q P) (R) = ( (P) (Q P)) (R) = ((P) ((Q) (P))) (R) = (1 (0 1)) 1 = 1 Definition: F ist (allgemein-) gültig (oder eine Tautologie) gdw.: = F, für alle : Π {0,1} Notation: = F Definition: F heißt erfüllbar gdw. es : Π {0, 1} gibt, so dass = F. Sonst heißt F unerfüllbar (oder eine Kontradiktion). 137 139 Modell einer Formel(menge) Tautologien und Kontradiktionen Definition: Interpretation ist Modell einer Formel F For Π, falls (F) = 1. Definition: Interpretation ist Modell einer Formelmenge M For Π, falls (F) = 1 für alle F M Tautologien: Formel, die stets wahr sind. Beispiele: p ( p) (Prinzip vom ausgeschlossenen Dritten) (Tertium non datur) p p (Prinzip der doppelten Negation) Kontradiktionen: Formel, die stets falsch sind. Notation: = F = M Beispiel: p p Die Negation einer Tautologie ist eine Kontradiktion Die Negation einer Kontradiktion ist eine Tautologie 138 140

Beispiele Beispiele Die folgenden Formeln sind Tautologien: (1) (p p) ( p) (2) (p (p q)) q (3) (p q) p (p q) q (4) p (p q) Die folgenden Formeln sind erfüllbar, aber keine Tautologien (1) p (2) p (p q) (3) (p q) (p q) (4) p q q (p q) (5) (p q) [(q r) (p r)] (6) (((p q) (q r)) p) r 141 143 Beispiele Beispiele Die folgenden Formeln sind Tautologien: (1) (p p) ( p) (2) (p (p q)) q (3) (p q) p (p q) q (4) p (p q) q (p q) (5) (p q) [(q r) (p r)] (6) (((p q) (q r)) p) r Die folgenden Formeln sind unerfüllbar: (1) ((p p) ( p)) (2) (p (p q)) q (3) ((p q) p) (4) (p (p q)) (5) (p q) [(q r) (p r)] (6) (((p q) (q r)) p) r (1) (6) sind alle erfüllbar. 142 144

Folgerung und Äquivalenz Beispiel Definition: F impliziert G (oder G folgt aus F), gdw.: für alle : Π {0,1} gilt: Wenn = F, dann = G. Notation: F = G Definition: F und G sind äquivalent gdw.: für alle : Π {0,1} gilt: = F gdw. = G. Notation: F G. rweiterung auf Formelmengen N in natürlicher Weise, z.b.: N = G gdw.: für alle : Π {0,1} gilt: falls = F, für alle F N, so = G. F = ( C) (B C) G = ( B) Überprüfe, ob F = G B C ( C) (B C) ( C) (B C) ( B) 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 1 1 1 1 1 1 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 145 147 Beispiel Syntax: Beispiel F = ( C) (B C) G = ( B) Überprüfe, ob F = G B C ( C) (B C) ( C) (B C) ( B) 0 0 1 0 0 0 0 1 1 0 1 0 1 0 1 1 0 0 1 1 1 1 1 0 Worin besteht das Geheimnis Ihres langen Lebens?, wurde ein 100 Jähriger gefragt. Ich halte mich streng an die Diätregeln: Wenn ich kein Bier zu einer Mahlzeit trinke, dann habe ich immer Fisch. Immer wenn ich Fisch und Bier zur selben Mahlzeit habe, verzichte ich auf iscreme. Wenn ich iscreme habe oder Bier meide, dann rühre ich Fisch nicht an. 146 148

Beispiel 1 Beispiel 1 Wenn ich kein Bier zu einer Mahlzeit trinke, dann habe ich immer Fisch. B F Immer wenn ich Fisch und Bier zur selben Mahlzeit habe, verzichte ich auf iscreme. F B Wenn ich iscreme habe oder Bier meide, dann rühre ich Fisch nicht an. B F B F F B B F Wir möchten wissen, welche Menüs solche Diätregeln erfüllen. z.b.: Formalisierung: kein Bier, Fisch und iscreme B falsch, F wahr, wahr erfüllt 3. Diätregel nicht! Bier, Fisch, keine iscreme B wahr, F wahr, falsch erfüllt alle Diätregeln 149 151 Beispiel 1 Beispiel 1 B F F B B F B F F B B F Wir möchten wissen, welche Menüs solche Diätregeln erfüllen. z.b.: kein Bier, Fisch und iscreme erfüllt 3. Diätregel nicht! Bier, Fisch, keine iscreme erfüllt alle Diätregeln Wir möchten wissen, welche Menüs solche Diätregeln erfüllen. z.b.: Formalisierung: 0:falsch,1:wahr : {B,F, } {0,1} kein Bier, Fisch und iscreme (B) = 0, (F) = 1, () = 1 erfüllt 3. Diätregel nicht! Bier, Fisch, keine iscreme (B) = 1, (F) = 1, () = 0 erfüllt alle Diätregeln 150 152

Beispiel 1 Modell einer Formel B F F B B F Definition: Interpretation ist Modell einer Formel F For Π, falls Notation: = F (F) = 1. Π = {B,F, } Mögliche Interpretation (Wertebelegung): (B) = 1, (F) = 0, () = 1 (B) = 1: Ich habe Bier (F) = 0: Ich habe kein Fisch () = 1: Ich habe iskreme Beispiel: : Π(= {B, F, }) {0, 1} mit: (B) = 1, (F) = 0, () = 1 Da ( B F) = 1, ist ein Modell der Formel B F = B F 153 155 Beispiel 1 Modell einer Formelmenge B F F B B F Π = {B,F, } Mögliche Interpretation (Wertebelegung): (B) = 1, (F) = 0, () = 1 uswertung von Formeln: Definition: Interpretation ist Modell einer Formelmenge M For Π, falls Notation: = M (F) = 1 für alle F M Beispiel 1: : {B, F, } {0, 1} mit (B) = 1, (F) = 0, () = 1 Da ( B F) = 1; (F B ) = 1; ( B F) = 1, ist ein Modell der Formelmenge M = { B F, F B, B F } ( B F) = ( B) (F) = (B) (F) = ( 1 0) = (0 0) = 1 154 156

Modell einer Formelmenge rster Kalkül: Wahrheitstafelmethode Definition: Interpretation ist Modell einer Formelmenge M For Π, falls Notation: = M (F) = 1 für alle F M Beispiel 1: : {B, F, } {0, 1} mit (B) = 1, (F) = 0, () = 1 Da ( B F) = 1; (F B ) = 1; ( B F) = 1, ist ein Modell der Formelmenge { B F, F B, B F) Beispiel 2: : {B, F, } {0, 1} mit (B) = 0, (F) = 0, () = 1 Da ( B F) = (B) (F) = ( 0 0) = (1 0) = 0 ist kein Modell der Formelmenge Jede Formel F enthält endlich viele ussagenvariablen. (F) ist nur von den Werten dieser ussagenvariablen abhängig. F enthält n ussagenvariablen: 2 n Wertbelegungen notwendig um zu überprüfen, ob F erfüllbar/unerfüllbar/allgemeingültig ist oder nicht. Wahrheitstafel F allgemeingültig (Tautologie): (F) = 1 für alle Wertbelegungen F erfüllbar: (F) = 1 für zumindest eine Wertbelegung F unerfüllbar: (F) = 0 für alle Wertbelegungen { B F, F B, B F) 157 159 Unerfüllbarkeit und llgemeingültigkeit Äquivalenz Theorem. F ist allgemeingültig gdw. F ist unerfüllbar. Definition: F und G sind äquivalent gdw.: für alle : Π {0,1} gilt: = F gdw. = G. Notation: F G. Zwei Formeln sind logisch äquivalent, wenn sie in den gleichen Modellen wahr sind Beispiel: (P Q) ( Q P) (Kontraposition) 158 160

Wichtige Äquivalenzen Wichtige Äquivalenzen Die folgenden Äquivalenzen sind für alle Formeln F,G,H gültig: (F F) F (F F) F (Idempotenz) (F G) (G F) (F G) (G F) (Kommutativität) (F (G H)) ((F G) H) (F (G H)) ((F G) H) (ssoziativität) Die folgenden Äquivalenzen sind für alle Formeln F,G,H gültig: (F G) F, falls G Tautologie (F G), falls G Tautologie (Tautologieregeln) (F G), falls G unerfüllbar (F G) F, falls G unerfüllbar (Tautologieregeln) (F (F G)) F (F (F G)) F (bsorption) (F (G H)) ((F G) (F H)) (F (G H)) ((F G) (F H)) (Distributivität) 161 163 Wichtige Äquivalenzen Wichtige Äquivalenzen mit / Die folgenden Äquivalenzen sind für alle Formeln F,G,H gültig: ( F) F (Doppelte Negation) (F G) ( F G) (F G) ( F G) (De Morgan s Regeln) ( ) ( ) (Tertium non datur) ( ) ( ) (F G) ( G F) (Kontraposition) (F G) ( F G) (limination Implikation) F G (F G) (G F) (limination Äquivalenz) 162 164

Wichtige Äquivalenzen (Zusammengefasst) Substitutionstheorem (F F) F (F F) F (Idempotenz) (F G) (G F) (F G) (G F) (Kommutativität) (F (G H)) ((F G) H) (F (G H)) ((F G) H) (ssoziativität) (F (F G)) F (F (F G)) F (bsorption) (F (G H)) ((F G) (F H)) (F (G H)) ((F G) (F H)) (Distributivität) ( F) F (Doppelte Negation) (F G) ( F G) (F G) ( F G) (De Morgan s Regeln) (F G) ( G F) (Kontraposition) (F G) ( F G) (limination Implikation) F G (F G) (G F) (limination Äquivalenz) Theorem. Seien F und G äquivalente Formeln. Sei H eine Formel mit (mindestens) einem Vorkommen der Teilformel F. Dann ist H äquivalent zu H, wobei H aus H hervorgeht, indem (irgend) ein Vorkommen von F in H durch G ersetzt wird. Beweis: Strukturelle Induktion. Induktionsbasis: Beweisen. dass das Theorem für alle atomaren Formeln gilt. Induktionsvoraussetzung: Sei H eine Formel (die nicht atomar ist) nnahme: Theorem gilt für alle Teilformeln von F, die nicht gleich F sind. Induktionsschritt: Beweis durch Fallunterscheidung: Fall 1: H = H 1. Induktionvoraussetzung: Theorem gilt für H 1. Folgere, dass Theorem auch für H gilt. Fall 2: H = H 1 op H 2. Induktionvoraussetzung: Theorem gilt für H 1, H 2. Folgere, dass Theorem auch für H gilt. 165 167 Substitutionstheorem in zweiter Kalkül: Logische Umformung Theorem. Seien F und G äquivalente Formeln. Sei H eine Formel mit (mindestens) einem Vorkommen der Teilformel F. Dann ist H äquivalent zu H, wobei H aus H hervorgeht, indem (irgend) ein Vorkommen von F in H durch G ersetzt wird. Definition: Äquivalenzumformung (Wiederholte) rsetzung einer (Unter-)Formel durch äquivalente Formel nwendung des Substitutionstheorems Beispiel: B B impliziert (C ( B)) (C (B )) Theorem Äquivalenzumformung bildet mit den aufgelisteten wichtigen Äquivalenzen einen vollständigen Kalkül: Wenn F und G logisch äquivalent sind, kann F in G umgeformt werden. nwendung: Test für rfüllbarkeit/unerfüllbarkeit/llgemeingültigkeit 166 168

Beispiel Beispiel (P Q) ((Q R) (P R)) (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) ( P Q) ( ( Q R) ( P R)) (limination Implikation) (limination Implikation) 169 171 Beispiel Beispiel (P Q) ((Q R) (P R)) (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) (( Q R) ( P R)) ( P Q) ( ( Q R) ( P R)) ( P Q) ( ( Q R) ( P R)) (limination Implikation) (limination Implikation) (De Morgan s Regel, ) 170 172

Beispiel Beispiel (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) ( P Q) (( Q P R) (R P R)) (Distributivität) 173 175 Beispiel Beispiel (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) ( P Q) (( Q P R) (R P R)) (Distributivität) ( P Q) (( Q P R) (R R P)) (Kommutativität) 174 176

Beispiel Beispiel (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) ( P Q) (( Q P R) (R P R)) (Distributivität) ( P Q) (( Q P R) (R R P)) (Kommutativität) ( P Q) (( Q P R) ) (Äquivalenzen mit ) ( P Q) ( Q P R) (Äquivalenzen mit ) (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) ( P Q) (( Q P R) (R P R)) (Distributivität) ( P Q) (( Q P R) (R R P)) (Kommutativität) ( P Q) (( Q P R) ) (Äquivalenzen mit ) ( P Q) ( Q P R) (Äquivalenzen mit ) ( P Q P R) (Q Q P R) (Distributivität) ( P P Q R) (Q Q P R) (Kommutativität) (( P P) Q R) ((Q Q) P R) (ssoziativität) 177 179 Beispiel Beispiel (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) ( P Q) (( Q P R) (R P R)) (Distributivität) ( P Q) (( Q P R) (R R P)) (Kommutativität) ( P Q) (( Q P R) ) (Äquivalenzen mit ) ( P Q) ( Q P R) (Äquivalenzen mit ) ( P Q P R) (Q Q P R) (Distributivität) ( P P Q R) (Q Q P R) (Kommutativität) (P Q) ((Q R) (P R)) ( P Q) (( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (limination Implikation) ( P Q) ( ( Q R) ( P R)) (De Morgan s Regel, ) ( P Q) (( Q R) ( P R)) (Doppelte Negation, De Morgan, ) ( P Q) (( Q R) (P R)) (Doppelte Negation) ( P Q) (( Q P R) (R P R)) (Distributivität) ( P Q) (( Q P R) (R R P)) (Kommutativität) ( P Q) (( Q P R) ) (Äquivalenzen mit ) ( P Q) ( Q P R) (Äquivalenzen mit ) ( P Q P R) (Q Q P R) (Distributivität) ( P P Q R) (Q Q P R) (Kommutativität) (( P P) Q R) ((Q Q) P R) (ssoziativität) (Äquivalenzen mit ) 178 180

llgemeingültigkeit/folgerung Unser Ziel F,G Formeln; N Formelmenge. Theorem. F = G gdw. = F G. Kalkül(e) zur systematischen Überprüfung von rfüllbarkeit (für Formeln und/oder Formelmengen) Theorem. N {F } = G gdw. N = F G. Dazu brauchen wir Normalformen Theorem. F G gdw. = F G. 181 183 Unerfüllbarkeit/llgemeingültigkeit/Folgerung 2.4 Normalformen F,G Formeln; N Formelmenge. Theorem. F ist allgemeingültig gdw. F ist unerfüllbar. Theorem. F = G gdw. F G ist unerfüllbar. Theorem. N = G gdw. N G ist unerfüllbar. Nota bene: falls N unerfüllbar, so N = G für jede Formel G... auch für. Notation: N = für N unerfüllbar. 182 184

Normalformen Normalformen Definition: tom: aussagenlogische Variable Literal: tom, oder Definition: negation eines toms Klausel: ine Disjunktion von Literalen mehrstellige Disjunktionen (P Q R), (P P Q) einstellige Disjunktionen P die nullstellige Disjunktion (leere Klausel) Definition: Disjunktive Normalform (DNF): ine Disjunktion von Konjunktionen von Literalen. mehrstellig, einstellig oder nullstellig Beispiele: (P Q) (Q R S) P Q P (Q R) P Q P P 185 187 Normalformen Normalformel Definition: Konjunktive Normalform (KNF): ine Konjunktion von Disjunktionen von Literalen, d.h., eine Konjunktion von Klauseln mehrstellig, einstellig oder nullstellig igenschaften: Zu jeder aussagenlogischen Formel gibt es: - eine äquivalente Formel in KNF - eine äquivalente Formel in DNF Diese äquivalenten Formeln in DNF bzw. KNF sind nicht eindeutig Beispiele: (P Q) (Q R S) P Q P (Q R) P Q P P 186 188

Normalformel Beispiel igenschaften: Zu jeder aussagenlogischen Formel gibt es: - eine äquivalente Formel in KNF - eine äquivalente Formel in DNF Diese äquivalenten Formeln in DNF bzw. KNF sind nicht eindeutig Solche Formeln können aus einer Wahrheitstafel abgelesen werden F : (P Q) (( P Q) R) P Q R (P Q) P ( P Q) (( P Q) R) F 0 0 0 0 1 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 1 1 189 191 Beispiel Beispiel F : (P Q) (( P Q) R) P Q R (P Q) P ( P Q) (( P Q) R) F 0 0 0 0 1 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 1 1 F : (P Q) (( P Q) R) P Q R (P Q) P ( P Q) (( P Q) R) F 0 0 0 0 1 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 1 1 DNF: ( P Q R) ( P Q R) (P Q R) (P Q R) 190 192

Beispiel Normalformel F : (P Q) (( P Q) R) P Q R (P Q) P ( P Q) (( P Q) R) F F 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1 0 DNF für F: ( P Q R) ( P Q R) (P Q R) (P Q R) DNF für F: wobei: P 0 = P P 1 = P _ :{P 1,...,Pn } {0,1} (F)=1 (P (P 1) 1 P (P n) n ) Theorem Für alle Interpretationen : {P 1,...,P n } {0,1}: _ (F) = 1 gdw. ( (P (P 1) 1 P (P n) n )) = 1. :{P 1,...,Pn} {0,1} (F)=1 193 195 Beispiel Normalformel F : (P Q) (( P Q) R) P Q R (P Q) P ( P Q) (( P Q) R) F F 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1 0 DNF für F: wobei: P 0 = P P 1 = P _ :{P 1,...,Pn } {0,1} (F)=1 KNF für F: F, wobei F die DNF von F ist. (P (P 1) 1 P (P n) n ) DNF für F: ( P Q R) ( P Q R) (P Q R) (P Q R) KNF für F: (P Q R) (P Q R) ( P Q R) ( P Q R) 194 196

Normalformel Umformung in KNF: Beispiel igenschaften: Zu jeder aussagenlogischen Formel gibt es: - eine äquivalente Formel in KNF - eine äquivalente Formel in DNF Diese äquivalenten Formeln in DNF bzw. KNF sind nicht eindeutig Solche Formeln können aus einer Wahrheitstafel abgelesen werden Solche Formeln können durch Umformungen hergestellt werden Gegeben: P (Q R) 1. limination von (P (Q R)) ((Q R) P) 2. limination von ( P Q R) ( (Q R) P) 3. Nach innen schieben von 4. Nach innen schieben von ( P Q R) (( Q R)) P) ( P Q R) ( Q P) ( R P)) 197 199 Umformung in KNF Beispiel zur exponentiellen Länge der KNF Vier Schritte: 1. limination von Verwende B ( B) (B ) 2. limination von Verwende B ( B) 3. Nach innen schieben von Verwende de Morgans Regeln und 4. Nach innen schieben von Verwende Distributivität von über Gegeben: n = (P 11 P 12 ) (P n1 P n2 ) Zu n äquivalente KNF ^ (P 1,f (1) P n,f (n) ) f :{1,...,n} {1,2} Größe der KNF: Klausel in KNF von n : 2 n Beweis: Induktion 198 200

Beispiel zur exponentiellen Länge der KNF KNF: Mengenschreibweise Gegeben: n = (P 11 P 12 ) (P n1 P n2 ) n = 1 : 1 = P 11 P 12 Länge: 2 1 n = 2 : 2 = (P 11 P 12 ) (P 21 P 22 ) ((P 11 P 12 ) P 21 ) ((P 11 P 12 ) P 22 ) (P 11 P 21 ) (P 12 P 21 ) (P 11 P 22 ) (P 12 P 22 ) Länge: 2 2 n = 3 : 3 = (P 11 P 12 ) (P 21 P 22 ) (P 31 P 32) {z } ((P 2 11 P 21 ) (P 12 P 21 ) (P 11 P 22 ) (P 12 P 22 )) (P 31 P 32 ) {z } KNF( 2 ) (((P 11 P 21 ) (P 12 P 21 ) (P 11 P 22 ) (P 12 P 22 )) P 31 ) (((P 11 P 21 ) (P 12 P 21 ) (P 11 P 22 ) (P 12 P 22 )) P 32 ) (((P 11 P 21 P 31 ) (P 12 P 21 P 31 ) (P 11 P 22 P 31 ) (P 12 P 22 P 31 ) (((P 11 P 21 P 32 ) (P 12 P 21 P 32 ) (P 11 P 22 P 32 ) (P 12 P 22 P 32 ) Länge: 2 3 Notation: Klausel als Menge von Literalen Formel in KNF als Menge von Klauseln Beispiel: (P Q R) (P Q R) ( P Q R) ( P Q R) { {P,Q,R}, {P, Q, R}, { P, Q,R}, { P, Q, R} } 201 203 Beispiel zur exponentiellen Länge der KNF KNF: Mengenschreibweise Gegeben: n = (P 11 P 12 ) (P n1 P n2 ) Klausel in KNF von n : 2 n Beweis durch Induktion Induktionsvoraussetzung: KNF von n hat 2 n Klausel KNF( n ) = C 1 C 2 n, C i = (L i 1 Li n i ) Klausel Induktionsschritt: Zu zeigen: KNF von n+1 hat 2 n+1 Klausel n+1 = (P 11 P 12 ) (P n1 P n2 ) (P (n+1),1 P (n+1),2 ) ((P 11 P 12 ) (P n1 P n2 )) (P (n+1),1 P (n+1),2 ) {z } n (C 1 C 2 n) (P (n+1),1 P (n+1),2 ) {z } KNF(n) ((C 1 C 2 n) P (n+1),1 ) ((C 1 C 2 n) P (n+1),2 ) (C 1 P (n+1),1 ) (C 2 n P (n+1),1 ) (C 1 P (n+1),2 ) (C 2 n P (n+1),2 ) {z } {z } 2 n 2 n Bedeutung der leeren Menge Leere Klausel = leere Menge von Literalen = leere Disjunktion = Leere Menge von Klauseln = leere Konjunktion = 202 204

Vereinfachung der KNF: Subsumption Das ST-Problem (rfüllbarkeitsproblem) Theorem (Subsumption Regel) nthält eine KNF-Formel (= Klauselmenge) Klauseln K,K mit K K dann entsteht eine äquivalente Formel, wenn K weggelassen wird. Beweis: K = {L 1,...,L p } {L 1,...,L p,l p+1,...,l m } = K F enthält K K K K = (L 1 L p ) ((L 1 L p ) L p+1... L m ) (L 1 L p ) = K (bsorption) rfüllbarkeitsproblem für DNF Formeln Sei F = W n i=1 (V m j=1 L ij) in DNF F unerfüllbar gdw. ( V m j=1 L ij) unerfüllbar für alle i = 1,...,n gdw. ( V m j=1 L ij) enthält zwei komplementäre Literale für alle i llgemeingültigkeit für DNF Formeln F in KNF allgemeingültig gdw. jede Disjunktion zwei komplementäre Literale enthält. 205 207 Das ST-Problem (rfüllbarkeitsproblem) Das ST-Problem (rfüllbarkeitsproblem) Definition: ST-Problem Gegeben: ine aussagenlogische Formel F Frage: Ist F erfüllbar? NB: F allgemeingültig gdw. F nicht erfüllbar Definition: ST-Problem Gegeben: Frage: ine aussagenlogische Formel F Ist F erfüllbar? Theorem (ohne Beweis) ST ist ein NP-vollständiges Problem 206 208

NP Teilklassen des rfüllbarkeitsproblems Zur rinnerung: P ist die Klasse aller Probleme, die in polynomieller Zeit entscheidbar sind. NP ist die Klasse aller Probleme, die nichtdeterministisch in polynomieller Zeit entscheidbar sind. in ntscheidungsproblem ist genau dann in NP, wenn eine gegebene Lösung für das entsprechende Suchproblem in Polynomialzeit überprüft werden kann. ST ist in NP: Rate eine Lösung (Interpretation mit (F) = 1) Überprüfe, ob wirklich eine Lösung ist (i.e. ob (F) = 1) kann in Polynomialzeit überprüft werden Definition: k-knf Formel: KNF-Formeln, deren Klauseln höchstens k Literale haben Theorem rfüllbarkeit für Formeln in KNF: NP-vollständig (ohne Beweis) rfüllbarkeit für Formeln in 3-KNF: NP-vollständig (Beweisidee) rfüllbarkeit für Formeln in 2-KNF: polynomiell entscheidbar rfüllbarkeit für Formeln in DNF: polynomiell entscheidbar 209 211 NP-Vollständigkeit 3-ST Zur rinnerung: ST ist NP-vollständig heißt: ST ist nichtdeterministisch in polynomieller Zeit entscheidbar Jedes nichtdeterministisch in polynomieller Zeit entscheidbare Problem kann in polynomieller Zeit auf ST reduziert werden Wenn es stimmt, dass NP P, dann ist ST nicht in polynomieller Zeit entscheidbar Theorem rfüllbarkeit für Formeln in 3-KNF (3-ST) ist NP-vollständig Beweis 3-ST ist ein Spezialfall von ST und deshalb wie ST in NP. Um zu zeigen, dass 3-ST ebenfalls NP-vollständig ist, müssen wir zeigen, dass jedes ST Problem in polynomieller Zeit auf das 3-ST Problem reduzierbar ist. 210 212

3-ST 3-ST Theorem rfüllbarkeit für Formeln in 3-KNF (3-ST) ist NP-vollständig Beweis (Teil 2) Wir zeigen, dass jedes ST Problem in polynomieller Zeit auf das 3-ST Problem reduzierbar ist. Gegeben sei eine Formel F in KNF. Wir transformieren F in eine Formel F in 3-KNF, so dass: F ist erfüllbar gdw. F ist erfüllbar. ine k-klausel sei eine Klausel mit k Literalen. us einer 1- bzw 2-Klausel können wir leicht eine äquivalente 3-Klausel machen, indem wir ein Literal wiederholen. Was machen wir mit k-klauseln für k > 3? Theorem rfüllbarkeit für Formeln in 3-KNF (3-ST) ist NP-vollständig Beweis (Teil 4) C = L 1 L 2 L 3 L 4 ; C 0 = (L 1 L 2 H) ( H L 3 L 4 ), F sei aus F entstanden durch rsetzung von C durch C 0. zu zeigen: F erfüllbar gdw. F erfüllbar Sei eine erfüllende Belegung für F. weist mindestens einem Literal aus C den Wert 1 zu. Wir unterscheiden zwei Fälle: 1) Falls L 1 oder L 2 den Wert 1 haben, so ist F für (H) = 0 erfüllt. 2) Falls L 3 oder L 4 den Wert 1 haben, so ist F für (H) = 1 erfüllt. lso ist F in beiden Fällen erfüllbar. 213 215 3-ST 3-ST Theorem rfüllbarkeit für Formeln in 3-KNF (3-ST) ist NP-vollständig Beweis (Teil 3) Sei C beispielsweise eine 4-Klausel der Form C = L 1 L 2 L 3 L 4. In einer Klauseltransformation ersetzen wir C durch die Teilformel C 0 = (L 1 L 2 H) ( H L 3 L 4 ), wobei H eine zusätzlich eingeführte Hilfsvariable bezeichnet. F sei aus F entstanden durch rsetzung von C durch C 0. zu zeigen: F erfüllbar gdw. F erfüllbar Theorem rfüllbarkeit für Formeln in 3-KNF (3-ST) ist NP-vollständig Beweis (Teil 5) C = L 1 L 2 L 3 L 4 ; C 0 = (L 1 L 2 H) ( H L 3 L 4 ), F sei aus F entstanden durch rsetzung von C durch C 0. zu zeigen: F erfüllbar gdw. F erfüllbar Sei eine erfüllende Belegung für F. Wir unterscheiden zwei Fälle: 1) Falls (H) = 0, so muss (L 1 ) = 1 oder (L 2 ) = 1. 2) Falls (H) = 1, so muss (L 3 ) = 1 oder (L 4 ) = 1 In beiden Fällen erfüllt somit auch C, i.e. auch F. 214 216

3-ST Horn-Formeln Theorem rfüllbarkeit für Formeln in 3-KNF (3-ST) ist NP-vollständig Beweis (Teil 6) Wir verallgemeinern die Klauseltransformation für k 4: Jede Klausel der Form wird durch eine Formel der Form ersetzt. L 1 L 2 L k 1 L k (L 1 L 2... L k 2 H) ( H L k 1 L k ) Die rfüllbarkeitsäquivalenz folgt analog zum Fall k = 4. Defintion: Horn-Formel: Formel in KNF, in der jede Klausel höchstens ein positives Literal enthält Notation: als Implikation P 1 P n P P 1 P n P P 1 P n P P n P P 1 P n : Rumpf P: Kopf P 217 219 Bis jetzt Horn Formel: Beispiele Das ST-Problem (rfüllbarkeitsproblem) Teilklassen des rfüllbarkeitsproblems k-knf Formel: KNF-Formeln, deren Klauseln höchstens k Literale haben Theorem rfüllbarkeit für Formeln in KNF: NP-vollständig rfüllbarkeit für Formeln in 3-KNF (3-ST): NP-vollständig rfüllbarkeit für Formeln in 2-KNF: polynomiell entscheidbar (ohne Beweis) (nächste Vorlesung) rfüllbarkeit für Formeln in DNF: polynomiell entscheidbar F = W n i=1 (V m j=1 L ij) Formel in DNF unerfüllbar gdw. für alle i, ( V m j=1 L ij) enthält zwei komplementäre Literale. Klausel Literalmengen Implikationen P { P} P Q R S {Q, R, S} R S Q Q S { Q, S} Q S R {R} R Q P { Q,P} Q P 218 220

Horn Formel: Beispiele rfüllbarkeitsproblem für Horn-Formeln Klausel Literalmengen Implikationen P { P} P Q R S {Q, R, S} R, S Q Q S { Q, S} Q,S R {R} R Q P { Q,P} Q P Theorem Die rfüllbarkeit von Horn-Formeln ist in quadratischer Zeit entscheidbar. Beweis: (Idee) Ziel: : Π {0,1} mit (F) = 1. Falls keine Fakten in F: F erfüllbar. Sonst: Für alle Fakten P in F: (P) := 1; Wiederhole das Verfahren für F, entstanden aus F durch rsetzung von P mit. 221 223 rfüllbarkeitsproblem für Horn-Formeln rfüllbarkeitstest für Horn-Formeln Lemma. Sei F Hornformel die keine Fakten enthält. Dann ist F erfüllbar. Beweis: Sei : Π {0,1} mit (P) = 0 für alle P Π. Dann (F) = 1. ingabe: F = D 1 D n eine Hornformel (die Klausel D i enthält höchstens ein positives Literal) in tom in H zu markieren, bedeutet, es an allen Stellen seines uftretens in H zu markieren 222 224

rfüllbarkeitstest für Horn-Formeln 2.5 Der aussagenlogische Resolutionkalkül 0: IF keine Fakten (Klausel ) vorhanden THN usgabe: erfüllbar LS markiere alle Fakten in F (tome mit in H) 1: IF keine Klausel 1 n B in F, so dass alle tome in 1,..., n markiert aber B nicht THN usgabe: erfüllbar LS wähle die erste solche Klausel IF B leer THN usgabe: unerfüllbar LS markiere überall B in F GOTO 1 225 227 Zusammenfassung: Normalformen Der aussagenlogische Resolutionkalkül Literale, Klauseln Konjunktive und Disjunktive Normalform blesen von DNF und KNF aus Wahrheitstafeln Umformen in KNF Mengenschreibweise Wesentliche igenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Voraussetzung: lle Formeln in konjunktiver Normalform ine einzige Regel Operiert auf Klauseln (in Mengenschreibweise) Subsumption ST-Problem (ST, 3-ST, 2-ST, DNF-ST) Horn-Formeln rfüllbarkeitstest für Hornformeln 226 228

Resolutionskalkül Resolution: Weiteres Beispiel Definition: Resolutionsregel (einzige Regel des Kalküls) wobei C 1 {P} { P} C 2 C 1 C 2 P eine aussagenlogische Variable C 1,C 2 Klauseln (können leer sein) Zu zeigen: (P Q) ((Q R) (P R)) ist allgemeingültig Dazu zeigen wir, dass [(P Q) ((Q R) (P R))] unerfüllbar ist. Definition: C 1 C 2 heißt Resolvente von C 1 {P},C 2 { P} Klauselnormalform: {{ P,Q}, { Q,R}, {P}, { R}} 229 231 Resolution: Beispiel Resolution: Weiteres Beispiel Gegeben die Klauselmenge: Resolution: Insgesamt: M Res also: M unerfüllbar M = {{P 1,P 2 }, {P 1, P 2 }, { P 1,P 2 }, { P 1, P 2 }} {P 1,P 2 } {P 1, P 2 } {P 1 } { P 1,P 2 } { P 1, P 2 } { P 1 } {P 1 } { P 1 } Klauselnormalform: M = {{ P,Q}, { Q,R}, {P}, { R}} bleitung der leeren Klausel aus M: (1) { P, Q} gegeben (2) { Q, R} gegeben (3) {P} gegeben (4) { R} gegeben (5) {Q} aus (1) und (3) (6) {R} aus (2) und (5) (7) aus (4) und (6) 230 232

Resolution: Bemerkungen Ohne Mengenschreibweise Vorsicht bei Klauseln mit mehreren Resolutionsmöglichkeiten Zwei Klauseln können mehr als eine Resolvente haben z.b.: {, B} und {, B} {, B,C} und {, B,D} haben NICHT {C,D} als Resolvente Resolutionsregel: C 1 P P C 2 C 1 C 2 Heuristik: Immer möglichst kleine Klauseln ableiten Faktorisieren: C L L C L 233 235 Notwendigkeit der Mengenschreibweise Resolution mit Faktorisierung Die Menge = {P 1 P 2, P 1 P 2, P 1 P 2,P 1 P 2 } ist unerfüllbar. s gibt folgende Resolutionsmöglichkeiten (ohne Mengenschreibweise) Die Menge = {P 1 P 2, P 1 P 2, P 1 P 2,P 1 P 2 } ist unerfüllbar. s gibt folgende Resolutionsmöglichkeiten (mit Faktorisieren) P 1 P 2 P 1 P 2 P 2 P 2 P 1 P 2 P 1 P 2 P 1 P 1 P 1 P 2 P 1 P 2 P 2 P 2 P 1 P 2 P 1 P 2 P 1 P 1 P 1 P 2 P 1 P 2 P 1 P 1 P 1 P 2 P 1 P 2 P 2 P 2 P 1 P 2 P 1 P 2 P 1 P 1 P 1 P 2 P 1 P 2 P 2 P 2 uf diese Weise ist nicht herleitbar P 1 P 2 P 1 P 2 P 2 P 2 P 1 P 2 P 1 P 2 P 1 P 1 P 1 P 2 P 1 P 2 P 2 P 2 P 1 P 2 P 1 P 2 P 1 P 1 P 1 P 2 P 1 P 2 P 1 P 2 P 1 P 2 P 1 P 2 P 1 P 2 2 P 1 P 2 P 1 P 2 P 1 P 1 P 2 P 2 P 1 P 1 P 2 P 2 P 1 P 1 P 1 P 1 P P 2 P 2 P 2 P 1 P 1 P 2 P 2 P 1 P 1 234 236

Resolution: Beispiel Resolution: Korrektheit Gegeben die Klauselmenge: M = {{P 1,P 2 }, {P 1, P 2 }, { P 1,P 2 }, { P 1, P 2 }} Theorem Für eine Menge M von Klauseln gilt: Falls M Res, so M unerfüllbar. Resolution: Insgesamt: M Res also: M unerfüllbar {P 1,P 2 } {P 1, P 2 } {P 1 } { P 1,P 2 } { P 1, P 2 } { P 1 } {P 1 } { P 1 } Beweis: nnahme: M Res. Zu zeigen: M unerfüllbar. Widerspruchsbeweis: wir zeigen, dass ein Widerspruch entsteht, wenn die zu beweisende Behauptung falsch wäre. Wir nehmen an, dass M erfüllbar. Sei : Π {0,1} mit (C) = 1 für alle C M. Lemma: C 1 P, C 2 P = C 1 C 2 Beweis: Sei Interpretation mit (C 1 P) = 1 und (C 2 P) = 1. Zu zeigen: (C 1 C 2 ) = 1 Fall 1: (C 1 ) = 1. Dann (C 1 C 2 ) = 1. Fall 2: (C 1 ) = 0. Dann (P) = 1. Da (C 2 P) = 1, so (C 2 ) = 1, d.h. (C 1 C 2 ) = 1. 237 239 Resolution Resolution: Korrektheit Sei F eine Klauselmenge und Res(F) = F {R R ist eine Resolvente zweier Klauseln aus F } Theorem Für eine Menge M von Klauseln gilt: Falls M Res, so M unerfüllbar. Res 0 (F) = F Res n+1 (F) = Res(Res n (F)) Res (F) = S n N Resn (F) (bezeichnet die Vereinigung der Resolventen aus aller möglichen Resolutionsschritte auf F) Notation: Falls C Res (F), so schreiben wir F Res C. Definition: Beweis für C (aus F): C 1,... C n, wobei: C n = C und für alle 1 i n: (C i F oder C i Resolvente für C j 1 C j2 C i j 1,j 2 <i). mit Beweis: nnahme: M Res, i.e. Res n (M) Zu zeigen: M unerfüllbar. Widerspruchsbeweis: wir zeigen, dass ein Widerspruch entsteht, wenn die zu beweisende Behauptung falsch wäre. Wir nehmen an, dass M erfüllbar. Sei : Π {0,1} mit (C) = 1 für alle C M. Lemma: C 1 P, C 2 P = C 1 C 2 Induktion: Fur alle m N gilt: Falls D Res m (M), so (D) = 1. Da Res n (M), ( ) = 1. Widerspruch! 238 240

Resolution: Vollständigkeit Resolution: Vollständigkeit Theorem. Für jede endliche Menge M von Klauseln gilt: falls M unerfüllbar, so M Res. Beweis: Induktion: p(n): Sei M Menge von Klauseln mit n ussagenvariablen. Falls M unerfüllbar, so M Res Induktionsbasis: n = 0. dann M = { }, d.h. M Res Induktionsschritt: nnahme: p(n) gilt. Beweise p(n + 1). Sei M Menge von Klauseln mit ussagenvariablen {P 1,...,P n,p n+1 }. M 0 sei aus M entstanden durch rsetzung von P n+1 durch M 1 sei aus M entstanden durch rsetzung von P n+1 durch M 0 sei aus M entstanden durch rsetzung von P n+1 durch : - P n+1 wird aus allen Klauseln gelöscht, - Klauseln, die P n+1 enthalten werden ebenfalls gelöscht M 1 sei aus M entstanden durch rsetzung von P n+1 durch : - P n+1 wird aus allen Klauseln gelöscht, - Klauseln, die P n+1 enthalten werden ebenfalls gelöscht Fakten: M 0, M 1 enthalten nur ussagenvariablen {P 1,..., P n } M 0, M 1 unerfüllbar Induktionsvoraussetzung: M 0 Res, i.e. es gibt C 1, C 2,..., C m Beweis (aus M 0 ) für P n+1 zurück: C 1, C 2,..., C m Beweis (aus M) für oder P n+1 M 1 Res, i.e. es gibt D 1, D 2,..., D k Beweis (aus M 1 ) für P n+1 zurück: D 1, D 2,..., D k Beweis (aus M) für oder P n+1 9 >= >; M Res 241 243 Resolution: Vollständigkeit Resolution: Vollständigkeit M 0 sei aus M entstanden durch rsetzung von P n+1 durch : - P n+1 wird aus allen Klauseln gelöscht, - Klauseln, die P n+1 enthalten werden ebenfalls gelöscht M 1 sei aus M entstanden durch rsetzung von P n+1 durch : - P n+1 wird aus allen Klauseln gelöscht, - Klauseln, die P n+1 enthalten werden ebenfalls gelöscht Fakten: M 0, M 1 enthalten nur ussagenvariablen {P 1,..., P n } M 0, M 1 unerfüllbar Induktionsvoraussetzung: M 0 Res, i.e. es gibt C 1, C 2,..., C m Beweis (aus M 0 ) für Theorem. Für jede endliche Menge M von Klauseln gilt: falls M unerfüllbar, so M Res. s gilt auch: Theorem. Für jede Menge M von Klauseln gilt: falls M unerfüllbar, so M Res. M 1 Res, i.e. es gibt D 1, D 2,..., D k Beweis (aus M 1 ) für 242 244

2-ST 2.5 1-Resolution Theorem rfüllbarkeit für Formeln in 2-KNF (2ST) ist polynomiell entscheidbar Korrekt aber unvollständig. Beweis (Krom, 1967) Fall 1: Für jede ussagenvariable P, entweder enthalten alle Klauseln P oder P: erfüllbar. Fall 2: s gibt Klauseln C 1 = L 1 P, C 2 = L 2 P Resolutionschritt; Resolvente L 1 L 2 (Mengennotation) Fakt: Resolventen sind immer auch in 2-KNF. Wenn F n ussagenvariablen enthält, gibt es 2n mögliche Literale, und 4n 2 nicht-leere verschiedene 2-KNF Klauseln. F ist erfüllbar gdw. Res (F) Wenn wir Res (F) berechnen: nicht mehr als (4n 2 ) 2 Resolutionsschritte notwendig. rfüllbarkeit von F ist polynomiell entscheidbar. 245 247 ndere Kalküle 1-Resolution 1-Resolution Syllogismus (in der ersten Vorlesung erwähnt): Das Davis-Putnam-Verfahren Semantische Tableaux P P C C 1-Resolution (unit resolution) {P} { P} C C { P} {P} C C 246 248

1-Resolution ndere Kalküle Die 1-Resolution (unit resolution) benutzt dieselbe Notation wie im Resolutionskalkül. Die 1-Resolutionsregel ist ein Spezialfall der allgemeinen Resolutionsregel: {P} { P} C C { P} {P} C C 1-Resolution Das Davis-Putnam-Verfahren Semantische Tableaux 249 251 1-Resolution 2.7 Das Davis-Putnam-Verfahren Die 1-Resolution (unit resolution) benutzt dieselbe Notation wie im Resolutionskalkül. Die 1-Resolutionsregel ist ein Spezialfall der allgemeinen Resolutionsregel: {P} { P} C C { P} {P} C C Der 1-Resolutionskalkül ist nicht vollständig. Die Klauselmenge M = {{P 1,P 2 }, {P 1, P 2 }, { P 1,P 2 }, { P 1, P 2 }} ist nicht erfüllbar, aber mit 1-Resolution ist aus M nichts ableitbar, also auch nicht. 250 252

Das Davis-Putnam-Verfahren Das Davis-Putnam-Verfahren Gegeben: N Klauselmenge Ziel: ntscheide, ob N erfüllbar ist. (Falls ja: Modell) Martin Davis and Hilary Putnam, 1960 Gegeben: N Klauselmenge Ziel: ntscheide, ob N erfüllbar ist. (Falls ja: Modell) llgemenine Idee: 1-Resolution + Fallunterscheidung N Klauselmenge, P ussagenvariable in N. N[P ]: aus N entstanden durch rsetzung von P durch - P wird aus allen Klauseln gelöscht, Resolventen mit { P} - Klauseln, die P enthalten werden ebenfalls gelöscht Subsumption N[P ]: aus N entstanden durch rsetzung von P durch - P wird aus allen Klauseln gelöscht, Resolventen mit {P} - Klauseln, die P enthalten werden ebenfalls gelöscht Subsumption N unerfüllbar gdw. (N[P ] unerfüllbar und N[P ] unerfüllbar) 253 255 Das Davis-Putnam-Verfahren Das Davis-Putnam-Verfahren Gegeben: N Klauselmenge Ziel: ntscheide, ob N erfüllbar ist. (Falls ja: Modell) llgemeine Idee: 1-Resolution + Fallunterscheidung N Klauselmenge, P ussagenvariable in N. N[P ]: aus N entstanden durch rsetzung von P durch - P wird aus allen Klauseln gelöscht, - Klauseln, die P enthalten werden ebenfalls gelöscht N[P ]: aus N entstanden durch rsetzung von P durch - P wird aus allen Klauseln gelöscht, - Klauseln, die P enthalten werden ebenfalls gelöscht N unerfüllbar gdw. (N[P ] unerfüllbar und N[P ] unerfüllbar) N: eine Menge von Klauseln Programm DP(N): IF (N = ) THN Return wahr LS IF (N = ) THN Return falsch LS IF (N enthält Klausel {P}) THN return DP(N[P ]) LS IF (N enthält Klausel { P}) THN return DP(N[P ]) LS IF (N enthält pures Literal P (d.h. P kommt in N nicht vor)) THN return DP(N[P ]) LS IF (N enthält pures Literal P (d.h. P kommt in N nicht vor)) THN return DP(N[P ]) LS { Sei P ussagenvariable in N IF (DP(N { P}) THN return wahr LS return DP(N {P}) } 254 256

Das Davis-Putnam-Verfahren Das Davis-Putnam Verfahren: Beispiel N: eine Menge von Klauseln Programm DP(N): IF (N = ) THN Return wahr LS IF (N = ) THN Return falsch LS IF (N enthält Klausel {P}) THN return DP(N[P ]) LS IF (N enthält Klausel { P}) THN return DP(N[P ]) LS IF (N enthält pures Literal P (d.h. P kommt in N nicht vor)) THN return DP(N[P ]) LS IF (N enthält pures Literal P (d.h. P kommt in N nicht vor)) THN return DP(N[P ]) LS { Sei P ussagenvariable in N IF (DP(N[P ]) THN return wahr LS return DP(N[P ]) } ( P Q R) ( Q R) ( Q R) (P Q R) R R (P R) Q 257 259 Das Davis-Putnam Verfahren: Beispiel Das Davis-Putnam Verfahren: Beispiel ( P Q R) ( Q R) ( Q R) (P Q R) ( P Q R) ( Q R) ( Q R) (P Q R) R R (P R) Q R R (oder: R ) 258 260

Das Davis-Putnam Verfahren: Beispiel Das Davis-Putnam Verfahren: Beispiel ( P Q R) ( Q R) ( Q R) (P Q R) R R (P R) R R (oder: R ) Q Q P R ( P Q R) ( Q R) ( Q R) (P Q R) R R (P R) R R (oder: R ) Q Q P R R P P = (P 0,R 1,Q 0) 261 263 Das Davis-Putnam Verfahren: Beispiel Das Davis-Putnam Verfahren ( P Q R) ( Q R) ( Q R) (P Q R) R R (P R) R R (oder: R ) Q Q P R R P Das Davis-Putnam Verfahren: 1-Resolution + Fallunterscheidung Weiterentwicklung: Das Davis-Putnam-Logemann-Loveland Verfahren (DPLL) Martin Davis, Hilary Putnam, George Logemann and Donald W. Loveland 1962 262 264

DPLL DPLL Gegeben: N Klauselmenge Ziel: ntscheide, ob N erfüllbar ist. (Falls ja: Modell) Gegeben: N Klauselmenge Ziel: ntscheide, ob N erfüllbar ist. (Falls ja: Modell) Idee: rfüllende Wertebelegung inkrementell gebildet. Idee: rfüllende Wertebelegung inkrementell gebildet. partielle Wertebelegungen Wir beginnen mit der leeren Belegung und versuchen diese Belegung zu einem Modell für N zu erweitern. Falls partielle Wertebelegung, so können Literale und Klauseln in wahr, falsch oder undefiniert sein. ine Klausel ist wahr in, wenn ein Literal in C wahr ist; falsch, wenn alle Literale falsch sind. Sonst ist C undefiniert (unresolved). 265 267 DPLL inerklauseln (Unit clauses) Gegeben: N Klauselmenge Ziel: ntscheide, ob N erfüllbar ist. (Falls ja: Modell) Idee: rfüllende Wertebelegung inkrementell gebildet. partielle Wertebelegungen Wir beginnen mit der leeren Belegung und versuchen diese Belegung zu einem Modell für N zu erweitern. Definition. Sei eine Interpretation. Sei C = L 1 L n L N, so dass L 1,...,L n falsch in und L nicht definiert. Dann heißt C inerklausel (Unit clause). Lemma. Seien eine Interpretation und C = L 1 L n L N, so dass L 1,...,L n falsch in und L nicht definiert. s gibt ein Modell von N, das erweitert, genau dann, wenn es ein Modell von N gibt, das erweitert und L wahr macht. 266 268

Pure Literale Definition: in Literal L heißt pur in einer Klauselmenge N (Klauseln seien Mengen von Literalen), wenn L lement einer Klausel in N ist und das Komplement von L in keiner Klausel von N enthalten ist. ine Klausel C in einer Klauselmenge N heißt pur in N, wenn C ein in N pures Literal enthält. Lemma. Für jede pure Klausel C in einer Klauselmenge N: N erfüllbar gdw. N\{C} erfüllbar Pure Literale Definition: in Literal L heißt pur in einer Klauselmenge N (Klauseln seien Mengen von Literalen), wenn L lement einer Klausel in N ist und das Komplement von L in keiner Klausel von N enthalten ist. ine Klausel C in einer Klauselmenge N heißt pur in N, wenn C ein in N pures Literal enthält. Lemma. Für jede pure Klausel C in einer Klauselmenge N: N erfüllbar gdw. N\{C} erfüllbar Beweis: Falls N erfüllbar, ist N\{C} auch erfüllbar. nnahme: N\{C} erfüllbar (sei Modell), C enthält ein in N pures Literal L. L = P: : Π {0, 1} mit (Q) = ( (Q) falls Q P 0 falls Q = P ist Modell für N. 269 271 Pure Literale Definition: in Literal L heißt pur in einer Klauselmenge N (Klauseln seien Mengen von Literalen), wenn L lement einer Klausel in N ist und das Komplement von L in keiner Klausel von N enthalten ist. ine Klausel C in einer Klauselmenge N heißt pur in N, wenn C ein in N pures Literal enthält. Lemma. Für jede pure Klausel C in einer Klauselmenge N: N erfüllbar gdw. N\{C} erfüllbar Pure Literale Definition: in Literal L heißt pur in einer Klauselmenge N (Klauseln seien Mengen von Literalen), wenn L lement einer Klausel in N ist und das Komplement von L in keiner Klausel von N enthalten ist. ine Klausel C in einer Klauselmenge N heißt pur in N, wenn C ein in N pures Literal enthält. Lemma. Für jede pure Klausel C in einer Klauselmenge N: N erfüllbar gdw. N\C erfüllbar Beweis: Falls N erfüllbar, ist N\{C} auch erfüllbar. nnahme: N\{C} erfüllbar (sei Modell), C enthält ein in N pures Literal L. ( (Q) falls Q P L = P: : Π {0, 1} mit (Q) = 1 falls Q = P ist Modell für N. Lemma. Sei eine partielle Wertebelegung. Für jedes pure Literal L in einer Klauselmenge N gilt: s gibt ein Modell von N, das erweitert genau dann, wenn es ein Modell von N gibt, das erweitert und L wahr macht. 270 272

DPLL ine alternative Formulierung N: eine Menge von Klauseln, partielle Wertebeleung Programm DPLL(N, ): IF (alle Klauseln in N wahr in ) THN Return wahr LS IF (eine Klausel in N falsch in ) Return falsch LS IF (N enthält inerklausel {P}) THN return DPLL(N, {P 1}) LS IF (N enthält inerklausel { P}) THN return DPLL(N, {P 0}) LS IF (N enthält pures Literal P) THN return DPLL(N, {P 1}) LS IF (N enthält pures Literal P) THN return DPLL(N, {P 0}) LS { Sei P undefinierte ussagenvariable in N IF (DPLL(N, (P 0))) THN return wahr LS return DPLL(N, {P 1}) Zustand: M F wobei: - M Sequenz von Literalen (partielle Wertebelegung) (L d : ntscheidungsliteral) - F Klauselmenge 273 275 DPLL ine alternative Formulierung N: eine Menge von Klauseln, partielle Wertebeleung Programm DPLL(N, ): IF (alle Klauseln in N wahr in ) THN Return wahr LS IF (eine Klausel in N falsch in ) Return falsch LS IF (N enthält inerklausel {P}) THN return DPLL(N, {P 1}) LS IF (N enthält inerklausel { P}) THN return DPLL(N, {P 0}) LS IF (N enthält pures Literal P) THN return DPLL(N, {P 1}) LS IF (N enthält pures Literal P) THN return DPLL(N, {P 0}) LS { Sei P undefinierte ussagenvariable in N IF (DPLL(N, (P 0))) THN return wahr LS return DPLL(N, {P 1}) m nfang: = DPLL(N, ) UnitPropagation M F,C L M, L F,C L falls M = C, und L undef. in M Decide M F M, L d F falls L oder L kommt in F vor, L undef. in M Fail M F, C Fail falls M = C, M enthält kein ntscheidungsliteral Backjump 8 >< M,L d,n F M, L F falls >: es gibt eine Klausel C L mit: F = C L,M = C, L undef. in M L oder L kommt in F vor. 274 276

ine alternative Formulierung Beispiel Backjump M,L d,n F M, L F 8 >< falls >: es gibt eine Klausel C L mit: F = C L,M = C, L undef. in M L oder L kommt in F vor. Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) s gibt mehrere mögliche backjump Klauseln. in Kandidat ist L 1 L n wo L 1,..., L n alle ntscheidungsliterale in ML d N sind. (s gibt manchmal bessere Kandidaten). 277 279 Beispiel Beispiel Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 278 280

Beispiel Beispiel Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) d P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) P 1 P 3 P d 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Backtrack) 281 283 Beispiel Beispiel Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) d P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) d P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) P 1 P 3 P d 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Backtrack) P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 282 284

Beispiel DPLL Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) d P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) P 1 P 3 P d 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Backtrack) P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) Das DPLL-Verfahren (Davis-Putnam-Logemann-Loveland) Das bekannteste und am meisten verbreitete Verfahren zur systematischen Suche eines Modells wurde in den letzten Jahrzehnten mit Hilfe von Heuristiken und Lernverfahren stark verbessert P 1 P 3 P 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 285 287 Beispiel ndere Kalküle Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) d P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) P 1 P 3 P d 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Backtrack) P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) 1-Resolution Das Davis-Putnam-Verfahren Semantische Tableaux P 1 P 3 P 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 Die Klauselmenge ist erfüllbar. Modell: (P 1 ) = 0, (P 3 ) = 0, (P 5 ) = 0, (P 6 ) = 1 (P 2 ), (P 4 ) beliebig. 286 288

2.8 Der aussagenlogische Tableaukalkül Der aussagenlogische Tableaukalkül Wesentliche igenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Beweis durch Fallunterscheidung Top-down-nalyse der gegebenen Formeln 289 291 Der aussagenlogische Tableaukalkül Der aussagenlogische Tableaukalkül Geschichte Beth (1955), Hintikka (1955) and Schütte (1956) nalytic tableaus: Smullyan 1968 utomatisches Beweisen/Mechanisierung: Kanger 1957, Prawitz 1960, Wang 1960, Davis 1960, Maslov 1968. Weiterentwicklung/Verfeinerungen: Loveland 1968 (Model elimination), Kowalski, Kuehner 1971 (SL-resolution) Bibel 1975, ndrews 1976... Vorteile Intuitiver als Resolution Formeln müssen nicht in Normalform sein Falls Formelmenge erfüllbar ist (Test schlägt fehl), wird ein Gegenbeispiel (eine erfüllende Interpretation) konstruiert Nachteile Mehr als eine Regel 290 292

Formeltypen Formeltypen Konjunktive Formeln: Typ α F F G (F G) (F G) Disjunktive Formeln: Typ β (F G) F G F G Disjunktive Formeln: Typ β (F G) F G F G Zuordnungsregeln Formeln / Unterformeln β β 1 β 2 (F G) F G F G F G F G F G 293 295 Formeltypen Regeln des (aussagenlogischen) Tableaukalküls Konjunktive Formeln: Typ α F F G (F G) α α 1 α 2 Konjunktiv p q p q (F G) Zuordnungsregeln Formeln / Unterformeln α α 1 α 2 β β 1 β 2 Disjunktiv p p q / \ q F G F G (F G) F G (F G) F G F F φ φ Widerspruch φ φ 294 296

Instanzen der α und β-regel Determinismus von Kalkül und Regeln Instanzen der α-regel Determinismus P Q (P Q) (P Q) P Die Regeln sind alle deterministisch P Q P Q P Q P Der Kalkül aber nicht: uswahl der nächsten Formel, auf die eine Regel angewendet wird Instanzen der β-regel Heuristik P Q (P Q) P Q Nicht-verzweigende Regeln zuerst: α vor β P Q P Q P Q Nota bene: Dieselbe Formel kann mehrfach (auf verschiedenen Ästen) verwendet werden 297 299 in Tableau für {P (Q R), Q R} Formale Definition des Kalküls Definition 1. P (Q R) 2. Q R Dieses Tableau ist nicht maximal, aber der erste 3. Q 4. R st ist. 5. P 10. P Dieser st ist nicht geschlossen (enthält 6. (Q R) 11. (Q R) keinen Widerspruch), 7. Q 8. R 9. R also ist die Menge {1,2} erfüllbar. (Diese Begriffe werden auf den nächsten Seiten erklärt.) Tableau: Binärer Baum, dessen Knoten mit Formeln markiert sind Definition Tableauast: Maximaler Pfad in einem Tableau (von Wurzel zu Blatt) 298 300

Formale Definition des Kalküls Formale Definition des Kalküls Sei M eine Formelmenge Initialisierung Das Tableau, das nur aus dem Knoten 1 besteht, ist ein Tableau für M rweiterung T ein Tableau für M B ein st von T F eine Formel auf B oder in M, die kein Literal ist T entstehe durch rweiterung von B gemäß der auf F anwendbaren Regel (α oder β) Dann ist T ein Tableau für M. Definition. st B eines Tableaus für M ist geschlossen, wenn Definition. F, F B M in Tableau ist geschlossen, wenn jeder seiner Äste geschlossen ist. Definition. in Tableau für M, das geschlossen ist, ist ein Tableaubeweis für (die Unerfüllbarkeit von) M 301 303 Formale Definition des Kalküls Beispiel Nota bene: lle Äste in einem Tableau für M enthalten implizit alle Formeln in M Zu zeigen: (P (Q R)) ((P S) ((Q R) S)) allgemeingültig Wir zeigen, dass unerfüllbar ist. [(P (Q R)) ((P S) ((Q R) S))] 302 304

Beispiel Klauseltableau: Beispiel 1. [(P (Q R)) ((P S) ((Q R) S))] 2. (P (Q R)) [1 1 ] 3. ((P S) ((Q R) S)) [1 2 ] 4. P S [3 1 ] 5. ((Q R) S)) [3 2 ] 6. (Q R) [5 1 ] 7. S [5 2 ] 8. P [2 1 ] 9. Q R [2 2 ] 10. P [4 1 ] 11. S [4 2 ] geschlossenes Tableau. M = { {P,Q,R}, { R}, { P,Q}, {P, Q}, { P, Q} } 305 307 Klauseltableau Klauseltableau: Beispiel M Menge von Klauseln M = { {P,Q,R}, { R}, { P,Q}, {P, Q}, { P, Q} } Änderungen Keine α-regel 1. P Q rweiterungsregel kann Verzweigungsgrad > 2 haben lle Knoten im Tableau enthalten Literale 306 308

Klauseltableau: Beispiel Klauseltableau: Beispiel M = { {P,Q,R}, { R}, { P,Q}, {P, Q}, { P, Q} } P 1. Q P Q P Q M = { {P,Q,R}, { R}, { P,Q}, {P, Q}, { P, Q} } P P Q 1. P Q Q P Q R P Q 309 311 Klauseltableau: Beispiel Korrektheit und Vollständigkeit des Tableaukalküls M = { {P,Q,R}, { R}, { P,Q}, {P, Q}, { P, Q} } P P Q 1. P P Q R P Q Q Q Theorem. ine Formelmenge M ist unerfüllbar genau dann, wenn es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt 310 312

Theorem. Korrektheit und Vollständigkeit des Tableaukalküls ine Formelmenge M ist unerfüllbar genau dann, wenn es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt Kern des Korrektheitsbeweises Theorem (Korrektheit) Falls es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt (d.h. ein Tableau für M, das geschlossen ist) so ist M unerfüllbar.... alternativ: Falls M erfüllbar ist, hat M kein geschlossenes Tableau. Korrektheit: Falls es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt (d.h. ein Tableau für M, das geschlossen ist) so ist M unerfüllbar.... alternativ: Falls M erfüllbar ist, hat M kein geschlossenes Tableau. 313 315 Theorem. Korrektheit und Vollständigkeit des Tableaukalküls ine Formelmenge M ist unerfüllbar genau dann, wenn es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt Vollständigkeit: Falls M unerfüllbar ist, gibt es einen Tableaubeweis für (die Unerfüllbarkeit von) M (d.h. ein Tableau für M, das geschlossen ist). Kern des Korrektheitsbeweises Theorem (Korrektheit) Falls es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt (d.h. ein Tableau für M, das geschlossen ist) so ist M unerfüllbar.... alternativ: Falls M erfüllbar ist, hat M kein geschlossenes Tableau. Definition. in Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist in Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren st hat Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar Lemma 2. in geschlossenes Tableau ist nicht erfüllbar... lso: Kein geschlossenes Tableau für erfüllbare Formelmenge 314 316

Lemma 1: Beweis Definition. Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist. Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren st hat Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar Beweis: Induktion p(n): Falls M erfüllbar und das Tableau T in n Schritten aus M gebildet wurde, ist T erfüllbar Induktionsbasis: T wurde in einem Schritt gebildet. Initialisierung Das Tableau, das nur aus dem Knoten 1 besteht, ist ein Tableau für M da M erfüllbar ist, ist ein solches Tableau erfüllbar Lemma 1: Beweis Definition.Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist. Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren st hat Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar Beweis: Induktion p(n): Falls M erfüllbar und das Tableau T in n Schritten aus M gebildet wurde, ist T erfüllbar Induktionsschritt: nnahme p(n) gilt. Zu zeigen: p(n + 1). Sei T ein in n + 1 Schritten gebildetes Tableau für M. Dann gibt es ein Tableau T für M (in n Schritten gebildet), ein st B von T und eine Formel F auf B oder in M, die kein Literal ist, so dass T durch die rweiterung von B gemäß der auf F anwendbaren Regel (α oder β) entstanden ist. Induktionsvoraussetzung: T erfüllbar, d.h. hat (mindestens) einen erfüllbaren st B. Fall 2: B = B d.h. B erfüllbar. Sei Modell für die Formeln N B auf B. Fall 2a: α-regel angewandt F F 1 F 2. Dann ist Modell für N B {F 1, F 2 }, d.h.: die rweiterung von B mit dieser α-regel ist erfüllbar, so T erfüllbar. 317 319 Lemma 1: Beweis Definition.Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist. Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren st hat Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar Beweis: Induktion p(n): Falls M erfüllbar und das Tableau T in n Schritten aus M gebildet wurde, ist T erfüllbar Induktionsschritt: nnahme p(n) gilt. Zu zeigen: p(n + 1). Sei T ein in n + 1 Schritten gebildetes Tableau für M. Dann gibt es ein Tableau T für M (in n Schritten gebildet), ein st B von T und eine Formel F auf B oder in M, die kein Literal ist, so dass T durch die rweiterung von B gemäß der auf F anwendbaren Regel (α oder β) entstanden ist. Induktionsvoraussetzung: T erfüllbar, d.h. hat (mindestens) einen erfüllbaren st B. Fall 1: B B. Dann ist B auch st in T, d.h. T erfüllbar. Lemma 1: Beweis Definition.Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist. Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren st hat Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar Beweis: Induktion p(n): Falls M erfüllbar und das Tableau T in n Schritten aus M gebildet wurde, ist T erfüllbar Induktionsschritt: nnahme p(n) gilt. Zu zeigen: p(n + 1). Sei T ein in n + 1 Schritten gebildetes Tableau für M. Dann gibt es ein Tableau T für M (in n Schritten gebildet), ein st B von T und eine Formel F auf B oder in M, die kein Literal ist, so dass T durch die rweiterung von B gemäß der auf F anwendbaren Regel (α oder β) entstanden ist. Induktionsvoraussetzung: T erfüllbar, d.h. hat (mindestens) einen erfüllbaren st B. Fall 2: B = B d.h. B erfüllbar. Sei Modell für die Formeln N B auf B. Fall 2b: β-regel angewandt F F 1 F 2. Dann 1=(F)=(F 1 ) (F 2 ), so (F 1 )=1 oder (F 2 )=1. Dann =N B {F i }, i=1 oder 2, d.h. Modell für alle Formeln auf der rweiterung von B mit F 1 oder F 2, so T erfüllbar. 318 320

Lemma 2: Beweis Lemma 3: Beweis Definition. Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren st hat Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar Lemma 2. in geschlossenes Tableau ist nicht erfüllbar Beweis: Kontraposition nnahme: T erfüllbar. Dann hat T einen erfüllbaren st B. Falls die Menge der Formeln auf B (und M) erfüllbar ist, kann B nicht enthalten, d.h. B kann nicht geschlossen sein. Lemma 3. B offener st in voll expandiertem Tableau, dann B M erfüllbar. Beweis: (für klausale Tableaux) Sei N die Menge der Formeln auf B. Da B offen ist, ist nicht in N. Seien C, D zwei Klauseln in N die komplementäre Literale enthalten. iner von C, D ist nicht leer (sonst wäre B geschlossen). nnahme: C nicht leer. Da B voll expandiert ist, wurde die β-regel für C angewandt (auch für D falls D nicht leer). Fall 1:, B: unmöglich, da B offen ist. Fall 2:, L B mit L Literal in D. N erfüllbar gdw. N\{D } erfüllbar. Fall 3: L, B, mit L Literal in C. N erfüllbar gdw. N\{C } erfüllbar. Fall 4: L 1, L 2 B, mit L 1 Literal in C, L 2 Literal in D. N erfüllbar gdw. N\{C, D } erfüllbar. N N, N Klauselmenge ohne komplementäre Literale und ohne Die rfüllbarkeit von N folgt aus der Vollständigkeit der Resolution. 321 323 Kern des Vollständigkeitsbeweises Klauseltableau: inschränkungen des Suchraums Definition. in Tableau heißt voll expandiert, wenn Regularität: Kein Literal darf auf einem st mehr als einmal vorkommen jede Regel auf jede passende Formel auf jedem offenen st angewendet worden ist. Schwache Konnektionsbedingung (Connection calculus) Bei rweiterung von st B muss mindestens eines der neuen Literale komplementär zu Literal in B M sein. Lemma 3. B offener st in voll expandiertem Tableau, dann B M erfüllbar.... lso: Voll expandiertes Tableau für unerfüllbares M ist geschlossen Starke Konnektionsbedingung (Modellelimination) Bei rweiterung von st B muss mindestens eines der neuen Literale komplementär zum Blatt von B sein außer beim ersten Schritt. 322 324

Klauseltableau: inschränkungen des Suchraums Klauseltableau: Weiteres Beispiel Theorem (hier ohne Beweis) Regularität, starke und schwache Konnektionsbedingung erhalten Vollständigkeit. Behauptung Dann müssen sie ans Meer mit Vollpension, mit Pool und ohne Flug. M V P F Jedoch Bei starker Konnektionsbedingung kann ungünstige rweiterung in Sackgasse führen. (bei schwacher Konnektionsbedinung nicht) Beispiel: M = {{P}, { Q}, { P, Q}, { P, R}} Zuerst { P, Q}: OK Zuerst { P, R}: Sackgasse Zu zeigen: { F (V M),(M F) (M P) (V P), P (F M V),(P F) (V P)} = M V P F Wir zeigen, dass die folgende Konjunktion unerfüllbar ist: ( F (V M), (M F)) ((M F) (M P) (V P)) ( P (F M V)) ((P F) (V P)) M V P F (Negation der Behauptung) 325 327 Klauseltableau: Weiteres Beispiel Klauseltableau: Weiteres Beispiel Signatur: F: Flugreise V: Vollpension M: Meer P: Pool Falls sie nicht mit dem Flugzeug fliegen, besteht der Vater auf Vollpension am Meer. F (V M) Die Mutter möchte mindestens einen ihrer drei Wünsche erfüllt sehen: ans Meer fliegen, oder am Meer ohne Pool, oder Vollpension und Pool. (M F) (M P) (V P) Gibt es keinen Pool, so besteht Tochter Lisa auf einer Flugreise und Urlaub am Meer und darauf, dass keine Vollpension gebucht wird. P (F M V) uch dem Baby soll einer seiner Wünsche erfüllt werden: erstens einen Pool und nicht fliegen oder zweitens Vollpension, dann aber ohne Pool. (P F) (V P) F (V M) (1) F V (2) F M (M F) (M P) (V P) (3) M V (4) M P (5) M P V (6) F M V (7) F M P (8) F P V P (F M V) (9) P F (10) P M (11) P V (P F) (V P) (12) P V (13) F V (14) F P Negation der Behauptung (15) M V P F 326 328

Klauseltableau: Weiteres Beispiel Terminierung Beobachtung Konstruktion des Konnektionstableaus bei Beginn mit Klausel (1) mit Regularität mit starker Konnektionsbedingung ussagenlogische Resolution (für Klauselmengen in Mengennotation) terminiert, für jede endliche Menge von Klauseln. Beweis: s gibt nicht mehr als 2 2n Klauseln (in Mengennotation) mit n ussagenvariablen. nicht mehr als (2 2n ) 2 mögliche nwendungen der Resolutionsregel. Dann: Nahezu deterministische Beweiskonstruktion 329 331 Klauseltableau: Weiteres Beispiel Terminierung (1) F V (2) F M (3) M V (4) M P (5) M P V (6) F M V (7) F M P (8) F P V (9) P F (10) P M (11) P V (12) P V (13) F V (14) F P (15) M V P F F 1 F V V P V V P P F P F F M M V P F Das Davis-Putnam und das DPLL Verfahren terminieren ebenfalls. Beweis (Idee auf Beispiel) Wertebelegung: Klauselmenge: P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Pure Literal) P 1 P 3 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Decide) P 1 P 3 P d 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) P 1 P 3 P d 5 P6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (Backtrack) P 1 P 3 P 5 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 (UnitProp) P 1 P 3 P 5 P 6 P 1 P 2, P 3 P 4, P 5 P 6, P 6 P 5, P 6 P 5 Noether sche Ordnung auf partiellen Wertebelegungen (Wieviele Literale sind undefiniert? Gibt es ntscheidungsliterale? Partielle Wertebelegungen werden mit jedem Schritt kleiner. 330 332

Terminierung Zusammenfassung: Tableaukalkül Ähnliches Resultat für Tableaux? Beweis durch Widerspruch und Fallunterscheidung Tableauregeln (mit uniformer Notation) Formale Definition des Kalküls Korrektheit und Vollständigkeit Klauseltableau Regularität Schwache und starke Konnektionsbedingung Strikte Tableaux Terminierung 333 335 Terminierung 3. Prädikatenlogik Definition. in Tableau ist strikt, falls für jede Formel F die entsprechende rweiterungsregel höchstens einmal auf jeden st, der die Formel enthält, angewandt wurde. Theorem. Sei T ein striktes aussagenlogisches Tableau. Dann ist T endlich. Beweis: Neue Formeln mit denen ein Tableau erweitert wird sind, ( ) oder Teilformeln der Formel, auf der die rweiterungsregel angewandt wird. Da T strikt ist, wird für jede Formel F die entsprechende rweiterungsregel höchstens einmal auf jeden st, der die Formel enthält, angewandt. Dann sind alle Äste in T endlich, und so ist auch T endlich (König s Lemma). 334 336

Rückblick: Vor- und Nachteile von ussagenlogik Prädikatenlogik + ussagenlogik ist deklarativ: Syntaxelemente entsprechen Fakten + ussagenlogik erlaubt konjunktive / disjunktive / negative ussagen (im Gegensatz zu vielen Datenstrukturen und Datenbanken) + ussagenlogik ist kompositional: Bedeutung von F 1 F 2 leitet sich ab aus der von F 1 und F 2 + Bedeutung in ussagenlogik ist kontextunabhängig (im Gegensatz zu natürlicher Sprache) ussagenlogik hat nur beschränkte usdruckskraft (im Vergleich zu natürlicher Sprache) Beispiele: Die ussage lle Menschen sind sterblich erfordert eine Formel für jeden Mensch. Reichere Struktur Objekte (lemente) Leute, Häuser, Zahlen, Theorien, Farben, Jahre,... Relationen (igenschaften) rot, rund, prim, mehrstöckig,... ist Bruder von, ist größer als, ist Teil von, hat Farbe, besitzt,.. =,,... Funktionen +, Mitte von, Vater von, nfang von,... 337 339 Rückblick: Vor- und Nachteile von ussagenlogik Weitere Logiken + ussagenlogik ist deklarativ: Syntaxelemente entsprechen Fakten + ussagenlogik erlaubt konjunktive / disjunktive / negative ussagen (im Gegensatz zu vielen Datenstrukturen und Datenbanken) + ussagenlogik ist kompositional: Bedeutung von F 1 F 2 leitet sich ab aus der von F 1 und F 2 + Bedeutung in ussagenlogik ist kontextunabhängig (im Gegensatz zu natürlicher Sprache) ussagenlogik hat nur beschränkte usdruckskraft (im Vergleich zu natürlicher Sprache) Beispiele: Die ussage Jede natürliche Zahl ist entweder gerade oder ungerade erfordert eine Formel für jede Zahl. Logik ussagenlogik Fakten wahr/falsch Prädikatenlogik Objekte, Funktionen, wahr/falsch Relationen Temporallogik Fakten, Zeitpunkte wahr/falsch Mehrwertige Logik Fakten wahr/falsch/unbekannt Fuzzy-Logik Fakten [0, 1]......... 338 340

Syntax der Prädikatenlogik: Logische Zeichen Syntax der Prädikatenlogik: Vokabular Wie in der ussagenlogik Symbol für die Formel wahr (Formel, die immer wahr ist) Symbol für die Formel falsch (Formel, die immer falsch ist) Negationssymbol ( nicht ) Konjunktionssymbol ( und ) Disjunktionssymbol ( oder ) Implikationssymbol ( wenn... dann ) Symbol für Äquivalenz ( genau dann, wenn ) ( ) die beiden Klammern Quantoren llquantor ( für alle ) xistenzquantor ( es gibt ) Definition Prädikatenlogische Signatur: Paar Σ = (Ω, Π) wobei: Ω eine Menge von Funktionssymbolen f mit Stelligkeit n 0, geschrieben f /n, z.b. 2/0, koblenz/0, c/0, sqrt/1, leftlegof/1, +/2, -/2 Π Menge von Prädikatensymbolen p mit Stelligkeit m 0, geschrieben p/m z.b. brudervon/1, > /2, /2,... Bemerkung: Das Gleichheitsprädikat kann (muss aber nicht) enthalten sein. s wird infix notiert. 341 343 Syntax der Prädikatenlogik: Vokabular Syntax der Prädikatenlogik: Vokabular Signatur Zweck: Festlegung der nichtlogischen Symbole Σ = (Ω,Π), Definition. Funktionsssymbole mit Stelligkeit n = 0 heißen Konstante z.b. 2, koblenz, c Definition. Prädikatensymbole mit Stelligkeit n = 0 heißen ussagenvariablen 342 344

Syntax der Prädikatenlogik: Vokabular Terme Variablen Prädikatenlogik erlaubt die Formulierung abstrakter (schematischer) ussagen. Technisches Hilfmittel hierfür sind die Variablen. Wir nehmen an, dass X Terme sind also vollständig geklammerte usdrücke, die wir auch als markierte, geordnete Bäume auffassen können. Die Knoten sind mit Funktionssymbolen oder Variablen markiert. Jeder mit einem Funktionssymbol f der Stelligkeit n markierte Knoten hat genau n Unterbäume, einen für jedes rgument von f. eine vorgegebene Menge von abzählbar unendlich vielen Symbolen ist, die wir für (die Bezeichnung von) Variablen verwenden. 345 347 Terme Beispiele Terme über Σ (bzw. Σ-Terme) werden nach folgenden syntaktischen Regeln gebildet: s,t,u,v ::= x, x X (Variable) f (s 1,..., s n ), f /n Ω (F-Terme) Mit T Σ (X) bezeichnen wir die Menge der Σ-Terme Menge T Σ (X) der Σ-Terme: Die kleinste Menge mit: X T Σ (X) Wenn f Ω, n ist die Stelligkeit von f t 1,...,t n T Σ (X) dann f (t 1,...,t n ) T Σ (X) Σ = (Ω,Π) Ω = {Jan/0, Vater/1, Mutter/1} {x,y,z} X Terme: x Jan Vater(x) Vater(Jan) Mutter(x) Mutter(Jan) Vater(Mutter(x)) Vater(Mutter(Jan)) 346 348

Beispiele Beispiele Σ = (Ω,Π) Σ = {0/0,1/0, succ/1,+/2} {x,y,z} X Terme: x, y,z, 0,1 succ(x), succ(0), succ(1) x + y,x + z, x + 0, x + 1,(x + (succ(y) + 1)),... +(x, y),+(x,z), +(x,0),+(x,1),+(x,+(succ(y),1)) Infix Präfix Σ = (Ω,Π) Ω = {Jan/0, nna/0, Vater/1, Mutter/1} Π = {Mann/1,Frau/1, Bruder/2, /2} {x,y,z} X tome: Mann(x) Mann(Jan) Mann(nna) Mann(Vater(x)) Frau(Vater(Jan)) Mann(Vater(Jan)) Bruder(x, y) Bruder(x, Jan) Bruder(x, nna) Vater(Jan) Vater(nna) Vater(x) Mutter(y) 349 351 tome Beispiele tome (tomare Formeln) über Σ genügen dieser Syntax:,B h ::= p(s 1,...,s m ), p/m Π (s t) (Gleichung) Ist m = 0, so handelt es sich bei p um eine ussagenvariable. Wir verwenden insbesondere die Buchstaben P, Q, R, S, um ussagenvariablen zu bezeichnen i Σ = (Ω,Π) Ω = {0/0,1/0, succ/1,+/2} Π = {, } {x,y,z} X tome: x y, z 0, 0 1 succ(x) succ(0), succ(1) succ(0) x + y x + z, x + 0 x + 1 (x + (succ(y) + 1)) z,... Infix Präfix: (+(x, y),+(x,z)), + (x, 0) +(x,1), (+(x,+(succ(y),1)), z) 350 352

Literale Formeln L ::= (positives Literal) (negatives Literal) Formeln über Σ: F,G,H ::= (Falsum) (Verum) (atomare Formel) F (Negation) (F G) (Konjunktion) (F G) (Disjunktion) (F G) (Implikation) (F G) (Äquivalenz) xf xf (llquantifizierung) (xistenzquantifizierung) 353 355 Klauseln Formeln C, D ::= (leere Klausel) L 1... L k, k 1 (nichtleere Klausel) Menge For Σ der Formeln über Σ: Die kleinste Menge, die lle atomare Formeln enthält, For Σ, For Σ, Wenn F,G For Σ, dann auch F,F G,F G,F G,F G For Σ, Wenn F For Σ und x X, dann xf For Σ, xf For Σ 354 356

Konventionen zur Notation Beispiel Klammereinsparungen werden nach folgenden Regeln vorgenommen: > p > p > p > p (Präzedenzen), und sind assoziativ und kommutativ. Qx 1,...,x n F für Qx 1... Qx n F. Terme und tome in Infix-, Präfix-, Postfix- oder Mixfixnotation; Beispiele: s + t s t s für +(s,t) für (s,t) für (s) 0 für 0() s gibt jemand, der in Landau studiert und schlau ist Ω = {landau/0} Π = {studiertin/2, schlau/1} x(studiertin( x,landau) schlau( x )) {z} {z } {z} Variable Konstante Term Term Variable Term {z } {z } tom tom {z } Formel {z } Formel 357 359 Beispiel Beispiel: Peano-rithmetik lle, die in Koblenz studieren, sind schlau Ω = {koblenz/0} Π = {studiertin/2, schlau/1} x(studiertin( x,koblenz) schlau( x )) {z} {z } {z} Variable Term Konstante Term Variable Term {z } {z } tom tom {z } Formel {z } Formel Σ P = (Ω P, Π P ) Ω P = {0/0, +/2, /2, s/1} Π P = { /2, < /2, /2} +, infix; > p + Formelbeispiele über dieser Signatur sind x,y(x y z(x + z y)) x y(x + y y) x,y(x s(y) x y + x) x,y(s(x) s(y) x y) x y x < y 358 360

Bemerkungen zum Beispiel Beispiel: Tante gatha Wie man an diesen Formeln sieht, sind die Symbole, <, 0 redundant, da sie über + in PL mit Gleichheit definiert werden können. So definiert die erste Formel, während die zweite Formel die Null definiert. Die liminierung der zugehörigen xistenzquantoren durch Skolemisierung (siehe unten) führt dann aber die Funktionssymbole wieder ein. Zuerst formalisieren wir das Problem: Jemand, der in Schloss Dreadbury wohnt, hat Tante gatha ermordet. x (schlossbewohner(x) ermordet(x, a)) gatha, ihr Butler und ihr Neffe Charles waren die einzigen Bewohner von Schloss Dreadbury. x (schlossbewohner(x) (x a x b x c)) 361 363 Beispiel: Tante gatha Beispiel: Tante gatha Jemand, der in Schloss Dreadbury wohnt, hat Tante gatha ermordet. gatha, ihr Butler und ihr Neffe Charles waren die einzigen Bewohner von Schloss Dreadbury. in Mörder hasst immer sein Opfer und ist niemals reicher als sein Opfer. Charles hasst niemanden, den Tante gatha gehasst hat. gatha hat jeden gehasst außer ihrem Butler. Der Butler hasst jeden, der nicht reicher ist als Tante gatha. Der Butler hasst jeden, den Tante gatha gehasst hat. Niemand hasst jeden. gatha war nicht der Butler. Wer hat Tante gatha ermordet? in Mörder hasst immer sein Opfer und ist niemals reicher als sein Opfer. x, y (ermordet(x, y) hasst(x, y)) x, y (ermordet(x, y) reicher(x, y)) Charles hasst niemanden, den Tante gatha gehasst hat. x (hasst(c, x) hasst(a, x)) gatha hat jeden gehasst außer ihrem Butler. x ( hasst(a,x) x b) 362 364

Beispiel: Tante gatha Beispiel Der Butler hasst jeden, der nicht reicher ist als Tante gatha. x ( reicher(x, a) hasst(b, x)) Der Butler hasst jeden, den Tante gatha gehasst hat. Bindungsbereich z } { y ( Bind. z } { x p(x) q(x, y)) x (hasst(a, x) hasst(b, x)) Niemand hasst jeden. x y ( hasst(x, y)) gatha war nicht der Butler. a b 365 367 Gebundene und freie Variablen Beispiel In QxF, Q {, }, heißt F der Bindungsbereich des Quantors Qx. in uftreten einer Variablen x heißt gebunden, wenn es zum Bindungsbereich eines Quantors Qx gehört. lle anderen uftreten von Variablen heißen frei. Formeln ohne freie Variablen heißen Satzformen. Variablenfreie Formeln heißen Grundformeln. p(z) x gebunden y frei z frei und gebunden x (q(x,z) z r(y,z)) 366 368

Substitution eines Termes für eine Variable Mit F[s/x] bezeichnen wir das Resultat der Substitution aller freien uftreten von x in F durch den Term s. F[s/x] sei durch strukturelle Induktion über den ufbau von F wie folgt definiert: Beispiel Σ = (Ω,Π), mit Ω = {f /1,g/2, a/0}, Π = {p/2, /2} x[s/x] = s x [s/x] = x ; falls x x f (s 1,..., s n )[s/x] = f (s 1 [s/x],..., s n [s/x]) [s/x] = [s/x] = p(s 1,..., s n )[s/x] = p(s 1 [s/x],..., s n [s/x]) (u v)[s/x] = (u[s/x] v[s/x]) F[s/x] = (F[s/x]) (F ρg)[s/x] = (F[s/x]ρG[s/x]) ; für alle binären Junktoren ρ {,,, } (QxF)[s/x] = QxF (QyF)[s/x] = Qz((F[z/y])[s/x]) ; falls y x, z neue Variable ( x(p(x,g(f (x), y))) = = = = z(x g(y, z)))[g(y, z)/x] x(p(x,g(f (x), y)))[g(y, z)/x] x(p(x,g(f (x), y))) x(p(x,g(f (x), y))) x(p(x,g(f (x), y))) z(x g(y,z))[g(y, z)/x] u(((x g(y,z))[u/z])[g(y, z)/x]) u((x g(y,u))[g(y,z)/x]) u(g(y, z) g(y,u)) 369 371 Problematik Substitution allgemein Der Grund für die Umbenennung der gebundenen Variablen y in eine neue unbenutzte Variable z ist die Vermeidung des infangens freier Variablen in s. Sollte y in s auftreten, wären sonst diese uftreten nach erfolgter Substitution gebunden. Definition. Substitutionen sind bbildungen σ : X T Σ (X), so dass der Bereich von σ, d.h. die Menge dom(σ) = {x X σ(x) x}, endlich ist. Die Menge der eingeführten Variablen, d.h. der Variablen die in einem der Terme σ(x), für x dom(σ), auftreten, wird mit codom(σ) bezeichnet. Substitutionen schreiben wir auch als [s 1 /x 1,..., s n /x n ], x i pw. verschieden, und meinen dann die bbildung ( si, falls y = x i [s 1 /x 1,..., s n /x n ](y) = y, sonst b jetzt schreiben wir für die pplikation σ(x) von Substitutionen xσ. 370 372

nwendung einer Substitution 3.2 Semantik Homomorphe Fortsetzung von σ auf Terme und Formeln: f (s 1,..., s n )σ = f (s 1 σ,..., s n σ) σ = σ = p(s 1,..., s n )σ = p(s 1 σ,..., s n σ) (u v)σ = (uσ vσ) Fσ = (Fσ) (FρG)σ = (FσρGσ) ; für alle binären Junktoren ρ (QxF)σ = Qz((F[z/x])σ); wobei z neue Variable bänderung einer Substitution σ an x zu t: ( t, falls y = x σ[x t](y) = σ(y), sonst 373 375 Beispiel Semantik Σ = (Ω,Π), mit Ω = {f /1,g/2, a/0}, Π = {p/2, /2} ( x(p(x,g(f (x), y))) = = = = z(x g(y,z)))[g(y, z)/x,f (x)/y,a/z] x(p(x,g(f (x), y)))[g(y, z)/x, f (x)/y, a/z] z(x g(y,z))[g(y, z)/x, f (x)/y,a/z] u(p(u,g(f (u), f (x)))) u(p(u,g(f (u), f (x)))) u(p(u,g(f (u), f (x)))) v(((x g(y,z))[v/z])[g(y, z)/x, f (x)/y, a/z]) v((x g(y,v))[g(y, z)/x, f (x)/y,a/z]) v(g(y, z) g(f (x), u)) Semantik geben bedeutet für logische Systeme, einen Begriff von Wahrheit für Formeln zu definieren. Das hier für die Prädikatenlogik zu definierende Konzept geht auf Tarski zurück. In der klassischen Logik (zurückgehend auf ristoteles) gibt es nur die zwei Wahrheitswerte wahr und falsch, die wir mit 1 und 0 bezeichnen. 374 376

Strukturen Wert eines Terms in bzgl. β Definition. ine Σ-Struktur (bzw. Σ-Interpretation bzw. Σ-Modell) ist ein Tripel = (U, (f : U n U) f /n Ω, (p U m ) p/m Π ) wobei U eine Menge, genannt Universum von. Durch strukturelle Induktion definieren wir: (β)(x) = β(x), x X (β)(f (s 1,...,s n )) = f ((β)(s 1 ),..., (β)(s n )), f /n Ω Oft identifizieren wir U mit, wenn die Interpretation der Funktions- und Prädikatensymbole eindeutig aus dem Kontext hervorgeht. Mit Σ-Str bezeichnen wir die Menge aller Σ-Strukturen. 377 379 Valuationen Wert eines Terms in bzgl. β Variablen für sich haben keine Bedeutung. Hierfür müssen Wertebelegungen (Valuationen) explizit oder implizit aus dem Kontext zur Verfügung stehen. Definition. Unter einer (Variablen-) Belegung oder einer Valuation (über einer Σ-Struktur ) versteht man eine bbildung β : X U Wert eines Terms in bzgl. β, (β)(t): Falls t = x X: (β)(t) = β(x) Falls t = c eine Konstante: (β)(t) = c Falls t = f (t 1,...,t n ): (β)(t) = f ((β)(t 1 ),..., (β)(t n )) Beispiel: Σ = ({+/2,0/0}, {, }) N = (N, {0 N,+ N : N N N}, { N N N, N }) 0 N = 0 N, + N (n 1, n 1 ) = n 1 + n 2 N β : {x,y,z} N mit β(x) = 5, β(y) = 10, β(z) = 3 N(β)((x + (y + z)) + (z + 0)) = = (β(x) + N (β(y) + N β(z))) + N (β(z) + N 0 N ) = = (5 + (10 + 3)) + (3 + 0) = 21 378 380

Wahrheitswert einer Formel in bzgl. β Wahrheitswert einer Formel in bzgl. β Die Menge der Wahrheitswerte sei {0,1}. (β) : For Σ {0,1} wird induktiv über ufbau von F wie folgt definiert: (β)( F) = 1 g.d.w. (β)(f) = 0 (β)(fρg) = B ρ ((β)(f), (β)(g)) mit B ρ die ρ zugeordnete Boolesche Funktion (β)( ) = 0 (β)( ) = 1 381 383 Wahrheitswert einer Formel in bzgl. β Wahrheitswert einer Formel in bzgl. β (β)(p(s 1,...,s n )) = 1 (β)(s t) = 1 g.d.w. ((β)(s 1 ),..., (β)(s n )) p g.d.w. (β)(s) = (β)(t) (β)( (β)( xf) = min{(β[x a])(f)} = a U 8 >< xf) = max{(β[x a])(f)} = a U >: ( 1 falls (β[x a])(f) = 1 für alle a U 0 sonst 1 falls (β[x a])(f) = 1 für mindestens ein a U 0 sonst Für x X und a U bezeichne β[x a] : X U die Belegung, mit 8 < a falls x = y β[x a](y) := : β(y) sonst 382 384

Beispiel Gültigkeit und rfüllbarkeit U N = {0, 1, 2,...} 0 N = 0 U N s N : U N U N, s N (n) = n + 1 + N : UN 2 U N, + N (n, m) = n + m N : UN 2 U N, N (n, m) = n m N = kleiner-gleich UN 2 < N = kleiner UN 2 Mit β(x) = 1, β(y) = 3 ergibt sich beispielsweise: N(β)(s(x) + s(0)) = 3 N(β)(x + y s(y)) = 1 N(β)( N(β)( N(β)( x, y(x + y y + x)) = 1 z z y) = 0 x y x < y) = 1 Definition. F gilt in unter β:, β = F g.d.w. (β)(f) = 1 Definition. F gilt in ( ist Modell von F): = F g.d.w., β = F, für alle β : X U Definition. F ist (allgemein-) gültig: = F g.d.w. = F, für alle Σ-Str F heißt erfüllbar gdw. es und β gibt, so daß, β = F. Sonst heißt F unerfüllbar. 385 387 Modelle, Gültigkeit, rfüllbarkeit Folgerung und Äquivalenz Definition. F impliziert G (oder G folgt aus F), i.z. F = G gdw. für alle Σ-Str und β : X U gilt: Falls, β = F, so, β = G. Definition. F und G sind äquivalent gdw. für alle Σ-Str und β : X U gilt:, β = F genau dann, wenn, β = G. Satz. F impliziert G gdw. (F G) ist gültig Satz. F und G sind äquivalent gdw. (F G) ist gültig. rweiterung auf Formelmengen N in natürlicher Weise, z.b.: N = G gdw. für alle Σ-Str und β : X U : falls, β = F, für alle F N, so, β = G. 386 388

Gültigkeit und Unerfüllbarkeit Universelle Quantifizierung Nachweis von Gültigkeit (und damit Folgerung oder Äquivalenz) durch Unerfüllbarkeitstest: Faustregel ist der logische (Top-level-)Operator mit F gültig genau dann, wenn F unerfüllbar Häufiger Fehler Verwendung von mit Beispiel lle, die in Koblenz studieren, sind schlau Richtig: Falsch: x(studiertin(x, koblenz) schlau(x)) x(studiertin(x, koblenz) schlau(x)) lle studieren in Koblenz und sind schlau, d.h. lle studieren in Koblenz und alle sind schlau 389 391 Universelle Quantifizierung xistenzielle Quantifizierung Intuition xf entspricht in etwa der (unendlichen) Konjunktion aller Instanzen von F Intuition. xf entspricht in etwa der (unendlichen) Disjunktion aller Instanzen von F. Beispiel: x(studiertin(x, koblenz) schlau(x)) entspricht: (studiertin(student1, koblenz) schlau(student1)) (studiertin(student2, koblenz) schlau(student2))... (studiertin(koblenz, koblenz) schlau(koblenz)) Beispiel: x(studiertin(x, landau) schlau(x)) entspricht (studiertin(student1, landau) schlau(student1)) (studiertin(student2, landau) schlau(student2))... (studiertin(landau, landau) schlau(landau)) 390 392

Universelle Quantifizierung igenschaften von Quantoren Faustregel ist der logische (Top-level-)Operator mit Häufiger Fehler Verwendung von mit Beispiel s gibt jemand, der in Landau studiert und schlau ist Richtig: Falsch: x(studiertin(x, landau) schlau(x)) x(studiertin(x, landau) schlau(x)) s gibt jemanden, der, falls er/sie in Landau studiert, schlau ist Trivial wahr, wenn es irgendjemanden gibt, der nicht in Landau studiert Verschiedene Quantoren kommutieren NICHT Beispiel: x y y Mutter(y, x) Jeder hat eine Mutter x Mutter(y, x) s gibt eine Person, die die Mutter von jedem ist Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F gilt: x y F = y x F s gibt eine Signatur Σ = (Ω,Π) und eine Formel F mit: x y F = y x F (richtig) (falsch) 393 395 igenschaften von Quantoren igenschaften von Quantoren Quantoren gleicher rt kommutieren x x y ist das gleiche wie y ist das gleiche wie y y x x Dualität der Quantoren x... ist das gleiche wie x... ist das gleiche wie x... x... Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F gilt: (1) (2) x x y F y F y y x F x F Beispiel: x mag(x, eiskrem) ist das gleiche wie x mag(x,broccoli) ist das gleiche wie x mag(x, eiskrem) x mag(x, broccoli) Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F gilt: (1) x F x F (2) x F x F 394 396

igenschaften von Quantoren igenschaften von Quantoren distributiert über x(......) ist das gleiche wie ( x...) ( x...) distributiert NICHT über x(......) ist NICHT das gleiche wie ( x...) ( x...) Beispiel ( x (studiert(x) arbeitet(x)) ist das gleiche wie x studiert(x)) ( x arbeitet(x)) Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F, G gilt: x(f G) xf xg Beispiel ( ( x (eiskrem(x) broccoli(x)) ist NICHT das gleiche wie x eiskrem(x)) ( x broccoli(x)) x (gerade(x) ungerade(x)) ist NICHT das gleiche wie x gerade(x)) ( x ungerade(x)) s gibt eine Signatur Σ = (Ω,Π) und Σ-Formeln F, G mit: x(f G) xf xg 397 399 igenschaften von Quantoren igenschaften von Quantoren distributiert über distributiert NICHT über x(......) ist das gleiche wie ( x...) ( x...) x(......) ist NICHT das gleiche wie ( x...) ( x...) Beispiel Beispiel ( x (eiskrem(x) broccoli(x)) ist das gleiche wie x eiskrem(x)) ( x broccoli(x)) ( x (gerade(x) ungerade(x)) ist NICHT das gleiche wie x gerade(x)) ( x ungerade(x)) Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F, G gilt: x (F G) ( x F) ( x G) s gibt eine Signatur Σ = (Ω,Π) und Σ-Formeln F, G mit: x(f G) xf xg 398 400

igenschaften von Quantoren Beispiele: Familienverhältnisse Quantoren gleicher rt kommutieren Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F gilt: (1) x y F y x F (2) x y F y x F Verschiedene Quantoren kommutieren NICHT Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F gilt: x y F = y x F s gibt eine Signatur Σ = (Ω,Π) und eine Formel F mit: x y F = y x F Dualität der Quantoren Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F gilt: (1) x F x F (2) x F x F Brüder sind Geschwister x y(bruder(x, y) geschwister(x, y)) bruder ist symmetrisch x y(bruder(x, y) bruder(y, x)) in Cousin ersten Grades ist das Kind eines Geschwisters eines lternteils x y(cousin1(x,y) p p s (elternteil(p, x) geschwister(p s,p) elternteil(p s,y))) Definition für Bruder, der nicht nur Halbbruder ist x ybruder(x, y) ( (x y) m v( (m = v) elternteil(m, x) elternteil(v, x) elternteil(m, y) elternteil(v, y))) 401 403 igenschaften von Quantoren Strukturelle Induktion distributiert über Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F, G gilt: x(f G) xf xg distributiert über Sei Σ = (Ω,Π) eine Signatur. Für alle Σ-Formeln F, G gilt: x (F G) ( x F) ( x G) distributiert NICHT über s gibt eine Signatur Σ = (Ω,Π) und Σ-Formeln F, G mit: x(f G) xf xg distributiert NICHT über s gibt eine Signatur Σ = (Ω,Π) und Σ-Formeln F, G mit: x(f G) xf xg Sei p(f) eine igenschaft der Formeln in Prädikatenlogik Behauptung: Für alle Formeln F, p(f) gilt Beweis durch Strukturelle Induktion: Induktionsbasis: Zu zeigen: p(f) gilt für F {, } und für alle atomaren Formeln. Induktionsvoraussetzung: Sei F eine Formel (nicht atomar oder oder ). nnahme: p(g) gilt für alle Teilformeln G von F (mit G F) Induktionsschritt: Zu zeigen: p(f) gilt: Fall 1 F = G Fall 2 F = G 1 G 2 Fall 3 F = G 1 G 2 Fall 4 F = G 1 G 2 Fall 5 F = G 1 G 2 Fall 6 F = Fall 7 F = xg xg 402 404

Strukturelle Induktion Substitutionen und Valuationen Sei p(t) eine igenschaft der Terme in Prädikatenlogik Behauptung: Für alle Terme t, p(t) gilt Beweis durch Strukturelle Induktion: Induktionsbasis: Zu zeigen: p(t) gilt für t X und für alle Konstanten. Induktionsvoraussetzung: Sei t ein Term (nicht Variable oder Konstante). nnahme: p(s) gilt für alle Teilterme s von t (mit s t) Induktionsschritt: Zu zeigen: p(t) gilt: Fallunterschied über alle f Ω mit t = f (t 1,...,t n ). Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt:, β = F[t/x] g.d.w., β[x (β)(t)] = F Beweis: Strukturelle Induktion 1. Induktionsbasis: Zu zeigen: Die igenschaft gilt für, und alle atomaren Formeln. Fall 1: F = Dann F[t/x] = ; (β)(f[t/x])=(β)( )=1=(β[x (β)(t)])( )=(β[x (β)(t)])(f) Fall 2: F = Dann F[t/x] = ; (β)(f[t/x])=(β)( )=0=(β[x (β)(t)])( )=(β[x (β)(t)])(f). Fall 3: F = p(t 1,..., t n ) mit p/n Ω. Dann F[t/x] = p(t 1 [t/x],..., t n [t/x]). (β)(f[t/x])=(β)(p(t 1 [t/x],.., t n [t/x]))=1 iff ((β)(t 1 [t/x]),.., (β)(t n [t/x])) p (β[x (β)(t)])(p(t 1,.., t n ))=1 iff ((β[x (β)(t)])(t 1 ),.., (β[x (β)(t)])(t n )) p Lemma: (β)(t i [t/x]) = (β[x (β)(t)])(t i ). Äquivalenz folgt daraus. 405 407 Substitutionen und Valuationen Substitutionen und Valuationen Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt:, β = F[t/x] g.d.w., β[x (β)(t)] = F Beweis: Strukturelle Induktion Wir benutzen folgendes Lemma: Lemma: Für alle Σ-Strukturen, Wertebelegungen β, Variable x und Terme t i,t: (β)(t i [t/x]) = (β[x (β)(t)])(t i ) Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt:, β = F[t/x] g.d.w., β[x (β)(t)] = F Beweis: ctd. 2. Induktionsvoraussetzung: Sei F eine Formel (nicht atomar oder oder ). nnahme: p(g) gilt für alle Teilformeln G von F (mit G F) 3. Induktionsschritt: Zu zeigen: p(f) gilt: Fall 1: F = G. Dann F[t/x] = (G[t/x]). (β)(f[t/x]) = (β)( (G[t/x]) = 1 iff (β)(g[t/x]) = 0 iff (Ind.Voraus.) (β[x (β)(t)])(g)=0 iff (β[x (β)(t)])( G)=1 iff (β[x (β)(t)])(f)=1 Fall 2-5: F = G 1 opg 2, op {,,,. Dann F[t/x] = G 1 [t/x]opg 2 [t/x]. (β)(f[t/x])=(β)(g 1 [t/x]opg 2 [t/x])=(β)(g 1 [t/x])op B (β)(g 2 [t/x])= (I.V.) (β[x (β)(t)])(g 1 )op B (β[x (β)(t)])(g 2 )=(β[x (β)(t)])(g 1 opg 2 ). {z } F 406 408

Substitutionen und Valuationen Substitutionen und Valuationen Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt: Fall 6: F =, β = F[t/x] g.d.w., β[x (β)(t)] = F yg. Fall 6.1: y = x. Dann F[t/x] = xg[t/x] = xg. (β)(f[t/x])=(β)( xg)=min{(β[x a])(g) a U } (β[x (β)(t)])( xg)=min{(β[x (β)(t)][x a])(g) a U } = min{(β[x a])(g) a U }. Fall 6.2: y x, t enthält nicht y. Dann F[t/x] = yg[t/x] = y(g[t/x]). (β)(f[t/x])=(β)( y(g[t/x])=min{(β[y a])(g[t/x]) a U } = (Ind.Vor.) min{(β[y a, x (β[y a])(t))(g) a U }= min{(β[y a, x (β)(t)])(g) a U } (y kommt in t nicht vor) (β[x (β)(t)])( yg)= = min{(β[x (β)(t)][y a])(g) a U }= min{(β[y a, x (β)(t)])(g) = a U }. Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt:, β = F[t/x] g.d.w., β[x (β)(t)] = F Fall 7: F = yg. Ähnlich zu Fall 6. 409 411 Substitutionen und Valuationen Substitutionen und Valuationen Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt: Fall 6: F =, β = F[t/x] g.d.w., β[x (β)(t)] = F yg. Fall 6.3: y x, t enthält y. Dann F[t/x] = (β[x (β)(t)])( (β)(f[t/x])=(β)( y (G[y /y][t/x])= y G[y /y][t/x]. =min{(β[y a])(g[y /y][t/x]) a U } = (Ind.Vor.) = min{(β[y a, x (β[y a])(t))(g[y /y]) a U }= (Ind.Vor.) = min{(β[y a, x (β[y a])(t), y a])(g) a U } = [ Rem: (β[y a, x (β[y a])(t)])(y ) = a] = min{(β[x (β)(t), y a])(g) a U } (y kommt in t u. G nicht yg)=min{(β[x (β)(t)][y a])(g) a U }= =min{(β[y a, x (β)(t)])(g) a U }. Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt:, β = F[t/x] g.d.w., β[x (β)(t)] = F llgemeiner gilt für beliebige Substitutionen σ: Theorem., β = Fσ g.d.w., β σ = F, wobei β σ : X die Wertebelegung mit β σ(x) = (β)(xσ), für alle Variablen x. 410 412

Substitutionen und Valuationen 2.3 lgorithmische Probleme Theorem (Substitutionslemma) Für alle Σ-Strukturen, Wertebelegungen β, Σ-Formeln F, Variablen x und Terme t gilt:, β = F[t/x] g.d.w., β[x (β)(t)] = F llgemeiner gilt für beliebige Substitutionen σ: Theorem., β = Fσ g.d.w., β σ = F, wobei β σ : X die Wertebelegung mit β σ(x) = (β)(xσ), für alle Variablen x. Beweis: σ = [t 1 /x 1,... t n /x n ] Induktion nach nzahl n von Variablen in dom(σ) = {x 1,...,x n } 413 415 Umbenennung von Variablen lgorithmische Probleme Lemma Für alle Σ-Formeln F, Variablen x gilt: x F z F[z/x] wobei z eine neue Variable ist. Gültigkeit(F): = F? (Σ fest) rfüllbarkeit(f): F erfüllbar? Modelltest(F,): = F? (Σ fest) (Σ fest) 414 416

usblick: Kalküle, ntscheidbarkeit usblick: Kalküle, ntscheidbarkeit Kalküle s gibt korrekte und vollständige Kalküle für Prädikatenlogik (z.b. Resolution) Kalküle s gibt korrekte und vollständige Kalküle für Prädikatenlogik (z.b. Resolution) ber diese Kalküle können die rfüllbarkeit von Formeln NICHT entscheiden ussagenlogik llgemeingültigkeit, rfüllbarkeit, Unerfüllbarkeit NTSCHIDBR Prädikatenlogik s gibt Σ, so dass Gültigkeit(F) unentscheidbar. Menge der allgemeingültigen Formeln RKURSIV UFZÄHLBR Menge der unerfüllbaren Formeln RKURSIV UFZÄHLBR Menge der erfüllbaren Formeln NICHT RKURSIV UFZÄHLBR 417 419 usblick: Kalküle, ntscheidbarkeit Rekursiv ufzählbar Kalküle s gibt korrekte und vollständige Kalküle für Prädikatenlogik (z.b. Resolution) ber diese Kalküle können die rfüllbarkeit von Formeln NICHT entscheiden Informelle Definition. ls rekursiv aufzählbare Menge (auch semi-entscheidbare Menge, positiv semi-entscheidbare Menge, halb-entscheidbare Menge, berechenbar aufzählbare Menge, kurz r.e., c.e) wird in der Berechenbarkeitstheorie eine aufzählbare Menge (z.b. eine Teilmenge von N) bezeichnet, wenn es einen lgorithmus gibt, der die lemente von aufzählt. Äquivalent ist folgende Definition: es gibt einen lgorithmus, der 1 ausgibt wenn die ingabe in ist, und auf anderen ingaben 0 ausgibt oder nicht hält. 418 420

Zusammenfassung: Syntax und Semantik 2.4 Normalformen Prädikatenlogische Signatur Term, tom, Formel Prädikatenlogisches Modell uswertung von Formeln in Modellen rfüllbarkeit, Gültigkeit; Folgerung, Äquivalenz igenschaften von Quantoren (Vertauschbarkeit untereinander und mit, ) ntscheidbarkeit der rfüllbarkeit von Formeln 421 423 Unser Ziel Kalküle zur systematischen Überprüfung von rfüllbarkeit (für Formeln und/oder Formelmengen) Vorteile von Normalformen Normalformen, Skolemisierung, Herbrandmodelle Reduktion der logischen Konzepte einfache Datenstrukturen für Beweisverfahren 422 424

Negationsnormalform Bereinigte Formeln Definition. ine Formel F For Σ ist in Negationsnormalform (NNF), falls:, kommen in F nicht vor jedes Negationszeichen in F steht direkt vor einem tom (insbes. auch kein ) Definition. ine Formel F For Σ ist bereinigt, falls: Keine Variable in F sowohl gebunden als auch frei vorkommt Keine Variable mehr als einmal in F quantifiziert ist 425 427 Negationsnormalform Bereinigte Formeln Definition. ine Formel F For Σ ist in Negationsnormalform (NNF), falls:, kommen in F nicht vor jedes Negationszeichen in F steht direkt vor einem tom (insbes. auch kein ) Definition. ine Formel F For Σ ist bereinigt, falls: Keine Variable in F sowohl gebunden als auch frei vorkommt Keine Variable mehr als einmal in F quantifiziert ist Beispiele: Beispiele: NNF: P, P, ( P Q) (R (Q P)) p(x,y) q(y) nicht NNF: P, (P Q) p(x,y) q(x) Bereinigt P Q x y(p(x) q(x,y) z r(x,z)) 426 428

Bereinigte Formeln Definition. ine Formel F For Σ ist bereinigt, falls: Keine Variable in F sowohl gebunden als auch frei vorkommt Keine Variable mehr als einmal in F quantifiziert ist Beispiele: Bereinigt P Q x Nicht bereinigt p(x) ( y(p(x) q(x,y) x q(x) x p(x)) ( x q(x)) z r(x,z)) Pränexe Normalform Definition: Pränexe Formeln sind von der Form Q 1 x 1... Q n x n F, wobei F quantorenfrei, Q i {, }. Hierbei heißt Q 1 x 1... Q n x n der Quantorenpräfix und F die Matrix der Formel. Beispiele In Pränexnormalform p(x) q(x) x y (p(x) q(y)) Nicht in Pränexnormalform ( x p(x)) ( y q(y)) 429 431 Pränexe Normalform Definition: Pränexe Formeln sind von der Form Q 1 x 1... Q n x n F, wobei F quantorenfrei, Q i {, }. Hierbei heißt Q 1 x 1... Q n x n der Quantorenpräfix und F die Matrix der Formel. Pränexe Normalform Theorem. Zu jeder Formel F For Σ gibt es eine äquivalente Formel in Pränexnormalform Konstruktiver Beweis Formel bereinigen Formel in NNF transformieren (Negationszeichen nach innen) F F aussagenlogische Umformungen lle Quantoren nach vorne (Reihenfolge unverändert lassen) 430 432

Beispiel Pränexe Normalform F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) Theorem. Zu jeder Formel F For Σ gibt es eine äquivalente Formel in Pränexnormalform 1. Bereinigung F F 1 := ( x ((p(x ) q(x, y)) z r(x, y, z ))) ((p(z) q(x, z)) z r(z, x, y)) 2. NNF F 1 ( x ((p(x ) q(x, y)) z r(x, y, z ))) ((p(z) q(x, z)) z r(z, x, y)) x ((p(x ) q(x, y)) z r(x, y, z ))) ((p(z) q(x, z)) z r(z, x, y)) x ( (p(x ) q(x, y)) z r(x, y, z ))) ((p(z) q(x, z)) z r(z, x, y)) =: F 2 x (( p(x ) q(x, y)) z r(x, y, z )) ((p(z) q(x, z)) 3. lle Quantoren nach vorne Pränexnormalform z r(z, x, y)) F 2 x z z (( p(x ) q(x, y)) r(x, y, z )) ((p(z) q(x, z)) r(z, x, y)) {z } Pränexnormalform von F (DeMorgan) (De Morgan) Konstruktiver Beweis Formel bereinigen Formel in NNF transformieren (Negationszeichen nach innen) F F aussagenlogische Umformungen lle Quantoren nach vorne (Reihenfolge unverändert lassen) 433 435 Pränexe Normalform Pränexe Normalform Theorem. Zu jeder Formel F For Σ gibt es eine äquivalente Formel in Pränexnormalform Direkter Beweis: Strukturelle Induktion Induktionsbasis:, und jede atomare Formel F = q(t 1,..., tn) sind in Pränexnormalform, d.h. sind äquivalent zu einer Formel in Pränexnormalform. Sei F eine Formel, die nicht, und nicht atomar ist. Induktionsvoraussetzung (I.V.): Jede Teilformel G von F (G F) ist äquivalent zu einer Formel in Pränexnormalform. Induktionsschritt: Zu zeigen: F äquivalent zu einer Formel in Pränexnormalform. Fall 1: F = G I.V. (Q 1 x 1... QnxnG ) Q 1 x 1... Qnxn G (wobei Fall 2: F = G 1 G 2 I.V. (Q 1 x 1... QnxnG 1 ) (Q 1 y 1... Q m y mg 2 ) (Bereinigung) (Q 1 x 1... Q nx n G 1 [x i /x i ]) (Q 1 y 1... Q m y m G 2 [y i /y i ]) Q 1 x 1... Q nx n Q 1 y 1... Q m y m (G 1 [x i /x i ] G 2 [y i /y i ]) Fall 3,4,5: F = G 1 opg 2 (op {,, }) analog Fall 6: F = xg I.V. x(q 1 x 1... QnxnG ) Fall 6: F = xg analog =, = ). (Quantoren nach vorne) (Pränexnormalform) (Pränexnormalform) Äquivalenzbeweis Folgt aus: F F F F ussagenlogische Umformungen zur Berechnung der NNF: Äquivalenzerhaltend Falls x nicht in G vorkommt: ( ( ( ( xf) G xf) G xf) G xf) G x(f G) x(f G) x(f G) x(f G) 434 436

Pränexe Normalform Beispiel lternatives Verfahren (ohne Bereinigung, ohne NNF) Herstellung von pränexer Normalform durch P : F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) (F G) P (F G) (G F) P x ((p(x ) q(x,y)) z r(x,y,z)) ((p(z) q(x,z)) z r(z, x,y)) QxF P Qx F ( Q) (QxF ρ G) P Qy(F[y/x] ρ G), y neu, ρ {, } (QxF G) P Qy(F[y/x] G), y neu (F ρ QxG) P Qy(F ρ G[y/x]), y neu, ρ {,, } Hierbei ist Q der zu Q duale Quantor, d.h. = und =. 437 439 Beispiel Beispiel F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) P P x ((p(x ) q(x,y)) x ( z r(x,y, z)) ((p(z) q(x,z)) z ((p(x ) q(x,y)) r(x,y, z ))) ((p(z) q(x,z)) z r(z, x,y)) z r(z, x,y)) 438 440

Beispiel Beispiel F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) P P P x ((p(x ) q(x,y)) x ( x z r(x,y,z))) ((p(z) q(x,z)) z ((p(x ) q(x,y)) r(x,y,z ))) ((p(z) q(x,z)) z (((p(x ) q(x,y)) r(x,y,z ))) ((p(z) q(x,z)) z r(z, x,y)) z r(z, x,y)) z r(z, x,y) P P P P P x ((p(x ) q(x,y)) x ( x x x z r(x,y,z))) ((p(z) q(x,z)) z ((p(x ) q(x,y)) r(x,y, z ))) ((p(z) q(x,z)) z ((p(x ) q(x, y)) r(x,y,z )) ((p(z) q(x,z)) z ((p(x ) q(x, y)) r(x,y,z )) z z r(z, x,y)) z r(z, x,y)) z r(z, x,y)) z ((p(z) q(x,z)) r(z,x,y z (((p(x ) q(x,y)) r(x,y,z )) ((p(z) q(x,z)) r(z, x,y 441 443 Beispiel Skolemnormalform F := ( x((p(x) q(x,y)) z r(x,y,z))) ((p(z) q(x,z)) z r(z, x,y)) Definition. ine Formel F For Σ ist in Skolemnormalform (SNF), falls: F ist in Pränexnormalform P P P P x ((p(x ) q(x,y)) x ( x x z r(x,y,z))) ((p(z) q(x,z)) z ((p(x ) q(x,y)) r(x,y,z ))) ((p(z) q(x,z)) z ((p(x ) q(x, y)) r(x,y,z )) ((p(z) q(x,z)) z ((p(x ) q(x, y)) r(x,y,z )) z r(z, x,y)) z r(z, x,y)) z r(z, x,y)) z ((p(z) q(x,z)) r(z,x,y F enthält nur universelle Quantoren Beispiele: In Skolemnormalform x y(p(x) q(y)) Nicht in Skolemnormalform x p(x) y q(y) x y (p(x) q(y)) 442 444

Skolemisierung Skolemisierung Skolemisierung: Transformation S : x 1,...,x n yf S x 1,...,x n F[f (x 1,...,x n )/y] wobei f /n ein neues Funktionssymbol (Skolemfunktion). Zusammen: F P G {z} pränexe Form S H {z} pränex, kein Theorem: Seien F, G und H wie oben angenommen. Dann: (1) F und G sind äquivalent. (2) G erfüllbar gdw. H erfüllbar (bzgl. Σ-Str) (bzgl. Σ -Str) wobei Σ = (Ω SKF,Π), wenn Σ = (Ω,Π). 445 447 Skolemisierung Klauselnormalform (konjunktive Normalform) Beispiel Gegeben: w( x(p(w,x) Pränexnormalform: w x y Skolemisierung: w y (q(w, x, y) z r(y,z)))) z((p(w, x) (q(w,x,y) r(y, z)))) y((p(w,sk(w)) (q(w,sk(w), y) r(y,g(w,y))))) Transformationsregeln K (1) (F G) K (F G) (G F) (2) (F G) K ( F G) (3) (F G) K ( F G) (4) (F G) K ( F G) (5) F K F (6) (F G) H K (F H) (G H) (7) (F ) K F (8) (F ) K (9) (F ) K (10) (F ) K F Die ersten 5 Regeln, zusammen mit Regel ( Q), stellen die Negationsnormalform (NNF) her. 446 448

Gesamtbild 2.5 Herbrand-Interpretationen F P Q 1 y 1... Q n y n G (G quantorenfrei) S K x 1,..., x m H k^ _ n i x 1,..., x n L ij {z } i=1 j=1 weglassen {z } {z Klauseln C i } F (H quantorenfrei) N = {C 1,..., C k } heißt Klausel(normal)form (KNF) von F. Merke: Die Variablen in Klauseln sind implizit allquantifiziert. Falls F freie Variablen enthält, werden diese Variablen mit Konstanten ersetzt (F(x) erfüllbar gdw. xf(x) erfüllbar) Theorem: F ist erfüllbar, gdw. F erfüllbar, gdw. N erfüllbar. Viel Optimierungspotential vorhanden, wenn nur rfüllbarkeit bewahrt werden muß und kann: Größenexplosion, kleine Stelligkeit von Skolemfunktionen. 449 451 Beispiel Herbrand-Interpretationen F Pränexnormalform: F z(( z(( z(( z x z(( x(p(z, x))) ( xp(z, x)) ( x p(z, x)) ( y x(p(z, x))) ( y(q(z, y) ( y(q(z, y) ( y(q(z, y) ( y(q(z, y) ( x r(y, x ))))) x r(y, x ))))) x r(y, x ))))) x ( p(z, x) (q(z, y) r(y, x ))) Skolemisierung z sk 1 ; x sk 2 ; x sk 3 (y) S y( p(sk 1, sk 2 ) (q(sk 1, y) r(y, sk 3 (y)))) (rfüllbarkeitsäquivalente Formel in Skolemnormalform) Klauselnormalform: K xr(y, x))))) y(( p(sk 1, sk 2 ) q(sk 1, y)) ( p(sk 1, sk 2 ) r(y, sk 3 (y)))) (Bereinigung) (NNF) (Pränexnormalform) Klauselmenge: N = {{ p(sk 1, sk 2 ), q(sk 1, y)}, { p(sk 1, sk 2 ), r(y, sk 3 (y))}} b jetzt betrachten wir, falls nichts nderes angegeben, immer nur PL ohne Gleichheit. Ω enthalte immer mindestens ein Konstantensymbol. Definition. Herbrand-Interpretationen (über Σ) sind Σ-Strukturen mit: 1. U = T Σ Menge der Grundterme, d.h. variablenfreien Terme über Σ 2. f : (s 1,..., s n ) f (s 1,..., s n ), f /n Ω f (,..., ) = f... d.h. vorgegeben sind Terme als Daten und Funktionen als Termkonstruktoren. Variabel sind nur die Interpretationen der Prädikatensymbole p T m Σ, p m Π 450 452

Herbrand-Interpretationen als Mengen von Grundatomen Satz. Jede Menge von Grundatomen I identifiziert genau eine Herbrand- Interpretation durch (s 1,...,s n ) p genau dann, wenn p(s 1,...,s n ) I Im folgenden werden wir daher nicht zwischen Herbrand-Interpretationen (über Σ) und Mengen von Σ-Grundatomen unterscheiden. xistenz von Herbrand-Modellen Definition. ine Herbrand-Interpretation I heißt Herbrand-Modell von F, falls I = F. Theorem [Herbrand] Sei N eine Menge von Σ-Klauseln. N erfüllbar g.d.w. N hat Herbrand-Modell (über Σ) wobei g.d.w. G Σ (N) hat Herbrand-Modell (über Σ) G Σ (N) = {Cσ Grundklausel C N, σ : X T Σ } die Menge der Grundinstanzen von N ist. [Beweis später im Zusammenhang mit dem Vollständigkeitsbeweis für Resolution.] 453 455 Herbrand-Interpretationen als Mengen von Grundatomen Beispiel: Σ Pres = ({0/0,s/1,+/2}, {< /2, /2}) N als Herbrand-Interpretation über Σ Pres I = { 0 0, 0 s(0), 0 s(s(0)),..., 0 + 0 0, 0 + 0 s(0),...,..., (s(0) + 0) + s(0) s(0) + (s(0) + s(0))... s(0) + 0 < s(0) + 0 + 0 + s(0)...} Bzgl. Σ Pres erhält man für folgende Grundinstanzen: Beispiel für G Σ C = (x < y) (y s(x)) (0 < 0) (0 s(0)) (s(0) < 0) (0 s(s(0)))... (s(0) + s(0) < s(0) + 0) (s(0) + 0 s(s(0) + s(0)))... 454 456

2.6 Prädikatenlogische Resolution Wiederholung: Resolutionskalkül (Mengennotation) Resolutionsregel: C {} { } D C D C D: Resolvente : resolviertes tom 457 459 Wiederholung: ussagenlogische Resolution Beispielrefutation (Mengennotation) ussagenlogische Klauseln entsprechen Grundklauseln und umgekehrt. 1. { P(f (a)), P(f (a)), Q(b)} (gegeben) 2. {P(f (a)), Q(b)} (gegeben) 3. { P(g(b, a)), Q(b)} (gegeben) 4. {P(g(b, a))} (gegeben) 5. { P(f (a)), Q(b)} (Res. 2. in 1.) 6. {Q(b)} (Res. 2. in 5.) 7. { P(g(b, a))} (Res. 6. in 3.) 8. (Res. 4. in 9.) 458 460

Wiederholung: Resolutionskalkül (Klauselnotation) Wiederholung: Korrektheit und Vollständigkeit Resolutionsregel: C D C D C D: Resolvente : resolviertes tom ussagenlogische Resolution ist korrekt und vollständig. Mengennotation: Resolutionsregel Klauselnotation: Resolutionsregel + Faktorisieren Faktorisieren: C L L C L wird in Klauseln als assoziativ und kommutativ aufgefaßt. 461 463 Beispielrefutation (Klauselnotation) Prädikatenlogische Resolution: Idee 1. P(f (a)) P(f (a)) Q(b) (gegeben) 2. P(f (a)) Q(b) (gegeben) 3. P(g(b, a)) Q(b) (gegeben) 4. P(g(b, a)) (gegeben) 5. P(f (a)) Q(b) Q(b) (Res. 2. in 1.) 6. P(f (a)) Q(b) (Fakt. 5.) 7. Q(b) Q(b) (Res. 2. in 6.) 8. Q(b) (Fakt. 7.) 9. P(g(b, a)) (Res. 8. in 3.) 10. (Res. 4. in 9.) Grundidee Vor Resolutionsschritt durch geeignete Substitution komplementäres Paar von Literalen erzeugen Möglichkeit für Resolutionsregel wobei C 1 {L} C 2 { L } C 1 σ C 2 σ die lternklauseln keine Variablen gemeinsam haben (bereinigt) ggf. umbenennen σ(l) = σ(l ) Nachteil: Viel zu viele Substitutionen σ mit σ(l) = σ(l ) Idee: Wähle die allgemeinste Substitution, mit σ(l) = σ(l ) 462 464

Unifikation Unifikation nach Martelli/Montanari.. Sei = {s 1 = t 1,...,s n = t n } (s i,t i Terme oder tome) eine Menge von Gleichheitsproblemen. Definition: ine Substitution σ heißt ein Unifikator von g.d.w. (1) t. = t, MM (2) f (s 1,...,s n ). = f (t 1,...,t n ), MM s 1. = t 1,..., s n. = t n, 1 i n : s i σ = t i σ. (3) f (...). = g(...), MM xistiert ein Unifikator, so heißt unifizierbar. Definition: σ heißt allgemeiner als τ σ τ : es gibt Subst. : σ = τ wobei (σ )(x) := (xσ) die Komposition von σ und als bbildungen. a a Ist wohldefiniert, weil σ einen endlichen Bereich hat. (4) x =. t, MM x =. t,[t/x] falls x var(), x var(t) (5) x =. t, MM falls x t, x var(t) (6) t =. x, MM x =. t, falls t X 465 467 in paar simple Fakten Beispiel 1 Jeder Term ist mit sich selbst unifizierbar (mittels id) {f (g(a, x), g(y,b)). = f (x,g(v,w)), f (x, g(v,w)). = f (g(x, a), g(v,b)} Terme der Gestalt f (s 1,...,s n ), f (t 1,...,t n ) sind unifizierbar g.d.w. si und t i unifizierbar für 1 i n tome der Gestalt p(s 1,...,s n ), p(t 1,...,t n ) sind unifizierbar g.d.w. si und t i unifizierbar für 1 i n (2) MM (5) MM {g(a, x). = x,g(y, b). = g(v,w), x. = g(x,a), g(v, w). = g(v,b)} Terme der Gestalt f (s 1,...,s n ), g(t 1,...,t m ) sind niemals unifb. tome der Gestalt p(s 1,...,s n ), q(t 1,...,t n ) sind niemals unifb. nicht unifizierbar ine Variable x und ein Term t, der x nicht enthält, sind immer unifb. (mittels [t/x]) ine Variable x und ein Term t x, der x enthält, sind niemals unifizierbar 466 468

Beispiel 2 Unifikation: Haupteigenschaften {f (g(a, x), g(y,b)). = g(x,g(v, w)), f (x, g(v,w)). = f (g(x,a), g(v,b)} Definition. ine Substitition σ heißt idempotent, wenn σ σ = σ. (3) MM Lemma. σ ist idempotent gdw. dom(σ) codom(σ) =. nicht unifizierbar Theorem. 1. MM gdw. nicht unfizierbar... 2. unifizierbar gdw. MM x 1 = u 1,...,x k = u k, mit x i pw. verschieden, x i var(u j ),1 i,j k... 3. Falls MM x 1 = u 1,...,x k = u k, mit x i pw. verschieden, x i var(u j ) so σ = [u 1 /x 1,...,u k /x k ] ist allgemeinster Unifikator von. 469 471 Beispiel 3 Unifikation: Haupteigenschaften {f (g(a, x), g(y,b)). = f (z, g(v,w)), f (z, g(v,w)). = f (g(x, a), g(v,b)} (2) MM (4) MM {g(a, x). = z,g(y,b). = g(v, w), z. = g(x,a), g(v,w). = g(v,b)} {z. = g(a, x), g(y, b). = g(v, w), g(a, x). = g(x,a), g(v, w). = g(v,b)} MM {z. = g(a, x), y. = v,b. = w,a. = x,x. = a, v. = v,w. = b} MM {z. = g(a, x), y. = v,b. = w,a. = x,x. = a,w. = b} MM {z. = g(a, a), y. = v,b. = b,a. = a,x. = a,w. = b} MM {z. = g(a, a), y. = v,x. = a, w. = b} llgemeinster Unifikator: [g(a, a)/z, v/y, a/x, w/b] Theorem. unifizierbar g.d.w. es gibt allgemeinsten Unifikator σ von, so dass: (1) σ idempotent und (2) dom(σ) codom(σ) var(). Notation: σ = mgu() ( most general unifier ) Problem: exponentielles nwachsen der Terme möglich. Beispiel: = {x 1 f (x 0,x 0 ), x 2 f (x 1,x 1 ),...,x n f (x n 1,x n 1 )} m.g.u. [x 1 f (x 0,x 0 ), x 2 f (f (x 0, x 0 ), f (x 0, x 0 )),...] x i kompletter binärer Baum der Höhe i Zeit/Raum: exponentiell Idee: Terme: azyklische Termgraphen 470 472

Beweisideen Beispiel Falls MM, dann σ Unifikator von gdw. σ Unifikator von. ( habe keinen Unifikator.) Bzgl. MM irreduzible sind trivialerweise nicht unifizierbar ( = ) oder haben die Form einer idempotenten Substitution. In diesem Fall ist die Substitution der allgemeinste Unifikator. MM ist Noethersch. ine geeignete lexikographische Ordnung auf Gleichungsmengen (mit minimal und kleiner als alle Gleichungsmengen) zeigt dieses. Man vergleiche in dieser Reihenfolge: 1. nzahl der definierten Variablen (d.h. Variablen x in Gleichung x. = t mit x var(t)), die auch außerhalb ihrer Definition in vorkommen 2. Mengenordnung induziert von (i) der Größe (nzahl der Symbole) einer Gleichung; (ii) bei gleicher Größe betrachten wir x. = t kleiner als t. = x, falls t X. σ ist idempotent wegen der Substitution in Regel 4. dom(σ) var(), weil keine neuen Variablen eingeführt werden. {L} C 1 = {p(a,x),p(x,x)} {z } L {L } C 2 = { p(y,y)} {z } L llgemeinster Unifikator von L,L : {p(a, x). = p(y,y)} MM {a. = y,x. = y} σ = [a/y, a/x] R := {p(x,x)}σ {}σ = {p(a,a)} MM {y. = a, x. = a} C 1 {L} C 2 { L } C 1 σ C 2 σ 473 475 Prädikatenlogische Resolutionsregel Prädikatenlogische Resolutionsregel Prädikatenlogische Resolutionsregel wobei C 1 {L} C 2 { L } C 1 σ C 2 σ die lternklauseln keine Variablen gemeinsam haben (bereinigt) ggf. umbenennen Resolutionsregel in dieser Form alleine unvollständig für Prädikatenlogik Beispiel: {{p(x), p(y)}, { p(u), p(v)}} unerfüllbar aber nur Resolventen der Länge 2 σ ein allgemeinster Unifikator (MGU) von L,L ist. 474 476

Faktorisierung Beispiel Faktorisierung wobei {L 1,..., L n } C ({L 1,...,L n } C)σ σ allgemeinster Unifikatior (MGU) von {L 1,...,L n } ist 1. P(x) P(f (x)) Q(x) [Gegeben] 2. P(y) [Gegeben] 3. P(g(x,x )) Q(x ) [Gegeben; Bereinigt] 4. P(f (x)) Q(x) [Res. 1, 2] 5. Q(x) [Res. 4, 2] 6. Q(x ) [Res. 3, 2] 7. ({L 1,...,L n } C)σ heißt Faktor von {L 1,...,L n } C 477 479 Beispiel für Faktorisierung Resolutionskalkül Res für allgemeine Klauseln {p(x), p(y), r(y,z)} {p(x), r(x,z)} C D B (C D)σ falls σ = mgu(,b) [Resolution] {p(x),p(y), p(a), r(y,z)} {p(a), r(a, z)} C L 1 L 2 (C )σ falls σ = mgu(,b) [Faktorisierung] s wird immer implizit angenommen, dass die Variablen in einer der beiden Prämissen der Resolutionsregel ggfs. (bijektiv) umbenannt werden, so dass sie disjunkt mit denen der anderen Prämisse sind. Dieses implizite Umbenennen werden wir nicht formalisieren. Welche Variablennamen man verwendet ist egal. Beispielsweise könnte man sich vorstellen, dass am nfang alle Klauseln paarweise variablendisjunkt sind und das Unifikatoren so gewählt werden, dass in ihrem Wertebereich nur neue Variablen vorkommen. 478 480

llgemeine Resolution mit implizitem Faktorisieren Günstiger ist es, Resolutionsregel und Faktorisierungsregel in eine Regel zusammenzuziehen. Wichtig: Häufige Fehlerquellen Das Bereinigen (Umbenennen) nicht vergessen! Das Faktorisierungen (falls möglich) nicht vergessen! Selbstresolution ist möglich! C L 1... L n D L 1... L m (C D)σ wobei die lternklauseln keine Variablen gemeinsam haben (bereinigt) ggf. umbenennen σ = mgu(l 1,..., L n,l 1,...,L m ) 481 483 llgemeine Resolution: Beispiel Notation (Hier verwenden wir Resolution mit implizitem Faktorisieren.) Man sieht, dass (i) beim Instanziieren verschiedene Literale gleich werden können, und dass (ii) i. allg. mehrere verschiedene Instanzen einer Klausel an einem Beweis partizipieren. 1. P(x) P(f (a)) Q(x) [Gegeben] 2. P(y) [Gegeben] 3. P(g(x,x )) Q(x ) [Gegeben] 4. Q(f (a)) [RIF 1, 2] 5. Q(x ) [RIF 3, 2] 6. [RIF 4, 5] Sei N eine Klauselmenge und Res(N) = N {R R ist eine Resolvente zweier Klauseln aus N oder Resultat der Faktorisierung einer Klausel aus N} Res 0 (N) = N Res n+1 (N) = Res(Res n (N)) Res (N) = S n N Resn (N) (bezeichnet die Vereinigung der rgebnisse aus aller möglichen Resolutions- und Faktorisierungsschritte auf N) 482 484

Resolution: Korrektheit Resolution: Vollständigkeit Theorem Für eine Menge N von Klauseln gilt: Falls Res (N), so N unerfüllbar. Beweis: Wie bei ussagenlogik. inzelne Regelanwendung erhält die rfüllbarkeit der Klauselmenge uch dies einfach zu beweisen wie in ussagenlogik (beachte dabei: Variablen in Klauseln sind universell quantifiziert) Theorem Für eine Menge N von Klauseln gilt: Falls N unerfüllbar, so Res (N). Beweisplan: 1. Sei N eine unter Res saturierte Menge allgemeiner Klauseln, d.h. Res(N) N. Dann ist auch G Σ (N) saturiert. Beweis: Lifting-Lemma 2. Sei N eine Menge von Σ-Klauseln. N erfüllbar g.d.w. N besitzt Herbrand-Modell über Σ. 3. Sei N Menge allgemeiner Klauseln mit Res(N) N. Dann N = genau dann, wenn N. 485 487 Resolution: Korrektheit Lifting-Lemma Theorem Für eine Menge N von Klauseln gilt: Falls Res (N), so N unerfüllbar. Beweis: nnahme: = C 1 L 1, = C 2 L 2 (d.h. = Sei σ = mgu(l 1, L 2 ). Zu zeigen: = x(c 1 C 2 )σ. Sei β beliebig. (β)((c 1 C 2 )σ) = (β σ)(c 1 C 2 ) x(c 1 L 1 ), = Fall 1: (β σ)(c 1 ) = 1. Dann (β)((c 1 C 2 )σ) = 1. x(c 2 L 2 )) (Substitution-Lemma) Fall 2: (β σ)(c 1 ) = 0. Laut nnahme, (β σ)(c 1 L 1 ) = 1, so (β σ)(l 1 ) = 1. Dann: (β σ)(l 2 ) = (β)(l 2 σ) = (β)(l 1 σ) = (β σ)(l 1 ) = 1. lso: (β σ)( L 2 ) = 0. ber (β σ)(c 2 L 2 )=1, so (β σ)(c 2 )=1. Dann (β)((c 1 C 2 )σ)=1. Lemma. Falls C? y σ Cσ C D? y σ Dσ dann gibt es τ, so dass C C? y D C = C τ ntsprechend für Faktorisieren. τ [aussagenlogische Resolution] [allgemeine Resolution] 486 488

Lifting-Lemma: Beweis Saturiertheit von Mengen allgemeiner Klauseln Beweis (Idee) Sei C = C 1 L 1, D = C 2 L 2. Cσ = C 1 σ L 1 σ, Dσ = C 2 σ L 2 σ. L 1 σ = L 2 σ und C = (C 1 C 2 )σ. L 1,L 2 unifizierbar. Sei ρ = mgu(l 1,L 2 ). Die Resolvente C ist dann (C 1 C 2 )ρ. ρ ist allgemeiner als σ, d.h. es gibt eine Substitution τ mit σ(x) = τ(ρ(x)) für alle x X. C τ = (C 1 C 2 )ρτ = (C 1 C 2 )σ = C. Theorem. Sei N eine unter Res saturierte Menge allgemeiner Klauseln, d.h. Res(N) N. Dann ist auch G Σ (N) saturiert, d.h. Res(G Σ (N)) G Σ (N). Beweis. Sei C Res(G Σ (N)). D.h. es gibt: (i) Grundinstanzen Cσ und Dσ von N mit Resolvente C, oder (ii) Grundinstanz Cσ s.d. C durch Faktorisierung abgeleitet. (i) Ist C Resolvente, so können wir o.b.d.. annehmen, dass σ = σ. (Nur wenn C und D nicht variablen-disjunkt wären, könnte dies schiefgehen. Dann aber dürfen und müssen wir die Variablen in einer Klausel umbenennen.) Wegen des Lifting-Lemmas sind C und D resolvierbar mit einer Resolvente C so dass C τ = C, für eine geeignete Substitution τ. Weil C N nach Voraussetzung, ist C G Σ (N). (ii) nalog für den Fall, dass C durch Faktorisierung abgeleitet wurde. 489 491 Saturiertheit von Mengen allgemeiner Klauseln Satz von Herbrand Sei N eine Klauselmenge und Res(N) = N {R R ist eine Resolvente zweier Klauseln aus N oder Resultat der Faktorisierung einer Klausel aus N} Res 0 (N) = N Res n+1 (N) = Res(Res n (N)) Res (N) = S n N Resn (N) (bezeichnet die Vereinigung der Resolventen aus aller möglichen Resolutionsschritte auf N) Theorem (Herbrand) Sei N eine Menge von Σ-Klauseln. Beweis: trivial N erfüllbar g.d.w. N besitzt Herbrand-Modell über Σ N = Res (N) (Res. korrekt) G Σ (Res (N)) G Σ (Res (N)) hat ein ( aussagenlogisches ) Modell G Σ (Res (N)) hat ein Herbrand Modell I I = Res (N) I = N (I Herbrand-Modell) (N Res (N)) 490 492

Korrektheit und Vollständigkeit der allgemeinen Resolution Prädikatenlogische Resolution: Beispiel (1) Gegeben die Formel F: Theorem Sei N Menge allgemeiner Klauseln mit Res(N) N. Dann: Proof: trivial N = genau dann, wenn N : Sei N Klauselmenge mit Res(N) N. Dann Res(G Σ (N)) G Σ (N) (Theorem Seite 10) nnahme: N =. Dann G Σ (N) = (Wir haben gezeigt, dass G Σ (N) = G Σ (N) hat Herbrand Modell I und I = N) ber G Σ (N) = gdw. G Σ (N) (aussag.log. Resol. vollständig + korrekt). s ist leicht zu sehen, dass G Σ (N) gdw. N. ( x x ) ( ) x y(p(x,y) q(x,y)) y(r(x, y) s(x,y)) y(( z(p(x,z) r(z, y))) ( z(q(x, z) s(z, y))))) Gezeigt werden soll die llgemeingültigkeit von F mittels Resolution 493 495 Resolution: Vollständigkeit Prädikatenlogische Resolution: Beispiel (2) Theorem Für eine Menge N von Klauseln gilt: Falls N unerfüllbar, so Res (N). Beweis: Sei M = Res (N). Dann Res(M) M. So: M = gdw. M. Widerspruchsbeweis: nnahme: Res (N). Dann Res (N) =, d.h. Res (N) hat ein Modell. Da N Res (N), = N, d.h. N =. Dazu zeigen wir die Unerfüllbarkeit von F: (( x x ) ( )) x y(p(x,y) q(x,y)) y(r(x, y) s(x, y)) y(( ( z(p(x, z) r(z, y))) z(q(x,z) s(z, y)))) Diese Formel muss zunächst in Klauselnormalform transformiert werden 494 496

Prädikatenlogische Resolution: Beispiel (3) Prädikatenlogische Resolution: Beispiel (5) limination der Implikationen: ( ( ( x x ) )) x y( p(x,y) q(x,y)) y( r(x, y) s(x, y)) y( ( ( z(p(x, z) r(z, y))) z(q(x, z) s(z, y)))) Negation an den llquantoren vorbei: (( ( )) x x ) x y( p(x, y) q(x, y)) y( r(x, y) s(x, y)) y ( ( z(p(x, z) r(z, y))) z(q(x,z) s(z, y))) 497 499 Prädikatenlogische Resolution: Beispiel (4) Prädikatenlogische Resolution: Beispiel (6) Äußere Negation nach innen schieben: (( ( )) x x ) x y( p(x,y) q(x,y)) y( r(x,y) s(x, y)) y( ( z(p(x, z) r(z, y))) z(q(x, z) s(z, y))) De Morgan: (( ( )) x x ) x y( p(x,y) q(x,y)) y( r(x, y) s(x,y)) y(( z(p(x, z) r(z, y))) z(q(x, z) s(z, y))) 498 500

Prädikatenlogische Resolution: Beispiel (7) Prädikatenlogische Resolution: Beispiel (9) Negation am Quantor vorbei: (( ( )) x x ) x y( p(x,y) q(x,y)) y( r(x, y) s(x, y)) y(( z(p(x, z) r(z, y))) z (q(x, z) s(z, y))) Bereinigen der Formel führt zu: (( ( )) x x ) x y ( p(x, y ) q(x, y )) y ( r(x, y ) s(x,y )) y (( z(p(x,z) r(z, y ))) z ( q(x, z ) s(z, y ))) 501 503 Prädikatenlogische Resolution: Beispiel (8) Prädikatenlogische Resolution: Beispiel (10) De Morgan (( ( )) x x ) x y( p(x,y) q(x,y)) y( r(x, y) s(x,y)) y(( z(p(x,z) r(z, y))) z( q(x, z) s(z, y))) Nun ist die Formel in Negationsnormalform Da die Formel bereinigt und in NNF ist, kann man alle Quantoren nach vorne ziehen: x y x y x y z z ( ( p(x,y) q(x,y)) ( r(x,y ) s(x,y )) p(x,z) r(z, y ( q(x,z ) s(z,y )) ) Nun ist die Formel in Pränexnormalform, die Matrix der Formel ist auch schon in konjunktiver Normalform 502 504

Prädikatenlogische Resolution: Beispiel (11) Prädikatenlogische Resolution: Beispiel (13) Skolemisieren von x und y : In Klauselmengenschreibweise: x y x y z z ( ( p(x,y) q(x,y)) ( r(x,y ) s(x,y )) p(f (x,y,x,y ), z) r(z, g(x,y,x,y )) ( q(f (x,y,x,y ), z ) s(z, g(x,y,x,y ))) ) 1. { p(x,y), q(x,y)} 2. { r(x,y ), s(x,y )} 3. {p(f (x,y,x, y ), h(x,y,x, y ))} 4. {r(h(x, y,x,y ), g(x,y,x,y ))} 5. { q(f (x, y,x,y ), z ), s(z,g(x,y,x,y ))} 505 507 Prädikatenlogische Resolution: Beispiel (12) Prädikatenlogische Resolution: Beispiel (14) Skolemisieren von z: x y x y z z ( ( p(x,y) q(x,y)) ( r(x,y ) s(x,y )) p(f (x,y,x,y ), h(x,y,x,y )) r(h(x,y,x,y ), g(x,y,x,y )) ( q(f (x,y,x,y ), z ) s(z,g(x,y,x,y ))) ) 1. { p(x,y), q(x,y)} 2. { r(x,y ), s(x,y )} 3. {p(f (x,y,x, y ), h(x,y,x, y ))} 4. {r(h(x, y,x,y ), g(x,y,x,y ))} 5. { q(f (x, y,x,y ), z ), s(z,g(x,y,x,y ))} Resolution der Klauseln 1. und 3. Dazu zunächst Umbenennung der Variablen x,y in 3., um die Klauseln variablendisjunkt zu machen Verwendeter MGU: [f (u,v,x,y )/x,h(u,v,x,y )/y] 1 : { p(x,y), q(x,y)} 3 : {p(f (u,v,x,y ), h(u,v,x,y ))} 6 : {q(f (u,v,x,y ), h(u,v,x,y ))} 506 508

Prädikatenlogische Resolution: Beispiel (15) Prädikatenlogische Resolution: Beispiel (17) 1. { p(x,y), q(x,y)} 1. { p(x,y), q(x,y)} 2. { r(x,y ), s(x,y )} 3. {p(f (x,y,x,y ), h(x,y,x,y ))} 4. {r(h(x,y,x,y ), g(x,y,x,y ))} 5. { q(f (x, y,x,y ), z ), s(z,g(x,y,x,y ))} 6. {q(f (u,v,x,y ), h(u,v,x,y ))} Resolution der Klauseln 2 und 4. Dazu zunächst Umbenennung der Variablen x,y in 4, um die Klauseln variablendisjunkt zu machen Verwendeter MGU: [h(x,y,u,v)/x,g(x, y,u,v)/y ] 2 : { r(x,y ), s(x,y )} 4 : {r(h(x,y,u,v), g(x,y,u,v))} 7 : {s(h(x, y,u,v), g(x,y,u,v))} 2. { r(x,y ), s(x,y )} 3. {p(f (x,y,x, y ), h(x,y,x, y ))} 4. {r(h(x, y,x,y ), g(x,y,x,y ))} 5. { q(f (x, y,x,y ), z ), s(z,g(x,y,x,y ))} 6. {q(f (u,v,x,y ), h(u,v,x,y ))} 7. {s(h(x,y,u,v), g(x, y,u,v))} 8. { s(h(u,v,u, v ), g(u,v,u,v ))} Resolution der Klauseln 7 und 8. Dazu zunächst Umbenennung der Variablen u,v in 8, um die Klauseln variablendisjunkt zu machen. Verwendeter MGU: [u /x,v /y,u /u,v /v] 7 : {s(h(x, y, u, v), g(x, y, u, v))} 8 : { s(h(u, v, u, v ), g(u, v, u, v ))} 509 511 Prädikatenlogische Resolution: Beispiel (16) 1. { p(x,y), q(x,y)} 2. { r(x,y ), s(x,y )} 3. {p(f (x,y,x,y ), h(x,y,x,y ))} 4. {r(h(x,y,x,y ), g(x,y,x,y ))} 5. { q(f (x, y,x,y ), z ), s(z,g(x,y,x,y ))} 6. {q(f (u,v,x,y ), h(u,v,x,y )} 7. {s(h(x,y,u, v), g(x,y,u,v))} Prädikatenlogische Resolution: Beispiel (18) Damit ist die leere Klausel abgeleitet, also ist die Klauselmenge unerfüllbar, also ist die Formel F unerfüllbar, also ist die Formel F allgemeingültig Resolution der Klauseln 5 und 6. Dazu zunächst Umbenennung der Variablen x,y in 6, um die Klauseln variablendisjunkt zu machen. Verwendeter MGU: [u/x,v/y,u /x,v /y,h(u,v, u,v )/z ] 5 : { q(f (x, y, x, y ), z ), s(z, g(x, y, x, y ))} 6 : {q(f (u, v, u, v ), h(u, v, u, v )} 8 : { s(h(u, v, u, v ), g(u, v, u, v ))} 510 512

Zusammenfassung: Prädikatenlogische Resolution Prädikatenlogische Resolutionsregel Faktorisierung Kombination von Resolution und Faktorisierung Häufige Fehlerquellen Korrektheit und Vollständigkeit Wiederholung: Der aussagenlogische Tableaukalkül Wesentliche igenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Beweis durch Fallunterscheidung Top-down-nalyse der gegebenen Formeln 513 515 2.7 Tableaukalkül Wiederholung: Der aussagenlogische Tableaukalkül Vorteile Intuitiver als Resolution Formeln müssen nicht in Normalform sein Falls Formelmenge erfüllbar ist (Test schlägt fehl), wird ein Gegenbeispiel (eine erfüllende Interpretation) konstruiert Nachteile Mehr als eine Regel 514 516

Formeltypen Formeltypen Konjunktive Formeln: Typ α F F G (F G) (F G) Disjunktive Formeln: Typ β (F G) F G F G Disjunktive Formeln: Typ β (F G) F G F G Zuordnungsregeln Formeln / Unterformeln β β 1 β 2 (F G) F G F G F G F G F G 517 519 Formeltypen Regeln des (aussagenlogischen) Tableaukalküls Konjunktive Formeln: Typ α F F G (F G) α α 1 α 2 Konjunktiv p q p q (F G) Zuordnungsregeln Formeln / Unterformeln α α 1 α 2 β β 1 β 2 Disjunktiv p p q / \ q F G F G (F G) F G (F G) F G F F φ φ Widerspruch φ φ 518 520

Instanzen der α und β-regel Beispiel Instanzen der α-regel 1. [(P (Q R)) ((P S) ((Q R) S))] P Q (P Q) (P Q) P 2. (P (Q R)) [1 1 ] P P P P 3. ((P S) ((Q R) S)) [1 2 ] Q Q Q 4. P S [3 1 ] Instanzen der β-regel 5. ((Q R) S)) [3 2 ] P Q P Q (P Q) P Q P Q P Q 6. (Q R) [5 1 ] 7. S [5 2 ] 8. P [2 1 ] 9. Q R [2 2 ] 10. P [4 1 ] 11. S [4 2 ] geschlossenes Tableau. 521 523 Beispiel Beispiel Zu zeigen: (P (Q R)) ((P S) ((Q R) S)) allgemeingültig Geschlossenes Tableau gefunden... also ist die Formel [(P (Q R)) ((P S) ((Q R) S))] Wir zeigen, dass unerfüllbar, [(P (Q R)) ((P S) ((Q R) S))] unerfüllbar ist.... d.h. die Formel ist allgemeingültig (P (Q R)) ((P S) ((Q R) S)) 522 524

Zusätzlich: Prädikatenlogische Formeltypen Instanzen der γ und δ-regel universell existentiell γ γ(t) δ δ(t) xf F[t/x] xf F[t/x] xf xf F[t/x] F[t/x] Instanzen der γ-regel xf(x) F(t) xf(x) F(t) Instanzen der δ-regel xf(x, y 1,...,y n ) F(f (y 1,...,y n ), y 1,...,y n ) xf(x, y 1,...,y n ) F(f (y 1,...,y n ), y 1,...,y n ) wobei f eine neue Skolemfunktion ist und y 1,...,y n die freien Variablen in xf(x, y 1,...,y n ) (resp. xf(x, y 1,...,y n )) sind. 525 527 Zusätzlich: Prädikatenlogische Tableauregeln Determinismus der Regeln γ-regel δ-regel γ γ(t) universell wobei t ein beliebiger Term ist. δ δ(f (y 1,...,y n )) existentiell xq(x) q(t) xp(x, y 1,..., y n ) p(f (y 1,..., y n ), y 1,..., y n ) wobei f eine neue Skolemfunktion ist, und y 1,..., y n die freien Variablen in δ sind. Skolemisierung ist also ein Bestandteil des Kalküls und wird nicht als ein Vorverarbeitungsschritt vorausgesetzt. ber natürlich könnte man ebensogut vorher Skolemisieren, was auch Vorteile haben kann. α- und β-regeln deterministisch (wie in ussagenlogik) γ-regel hochgradig nicht-deterministisch muss für Vollständigkeit mehrfach angewendet werden (pro st) Grund für Nicht-Terminierung δ-regel nicht-deterministisch muss dennoch nur einmal pro st und Formel angewendet werden 526 528

Formale Definition des Kalküls Definition: Tableau (mit freien Variablen) Fast wie in der ussagenlogik definiert (kleine Änderungen) (Definition auf den folgenden Seiten). Sei M = {F 1,...,F n } eine Formelmenge Initialisierung Das Tableau, das nur aus dem Knoten 1 besteht, ist ein Tableau für M rweiterung T ein Tableau für M B ein st von T F eine Formel auf B oder in M, die kein Literal ist T entstehe durch rweiterung von B gemäß der auf F anwendbaren Regel (α, β, γ oder δ) Dann ist T ein Tableau für M. Substitutionsregel Ist T ein Tableau für M und ist σ eine Substitution, so ist auch Tσ ein Tableau für M. 529 531 Formale Definition des Kalküls Formale Definition des Kalküls Definition Tableau: Binärer Baum, dessen Knoten mit Formeln markiert sind Definition Tableauast: Maximaler Pfad in einem Tableau (von Wurzel zu Blatt) Definition. st B eines Tableaus für M ist geschlossen, wenn F, F B M Definition. in Tableau ist geschlossen, wenn jeder seiner Äste geschlossen ist. Definition. in Tableau für M, das geschlossen ist, ist ein Tableaubeweis für (die Unerfüllbarkeit von) M 530 532

Beispiel Beispiel ine ussage über Mengen (1) S Q = (2) P Q R (3) P = Q (4) Q R S (5) P R Modellierung ( x(s(x) Q(x)) x(p(x) (Q(x) R(x)) ( ( xp(x))) ( yq(y)) x((q(x) R(x)) S(x)) ) x((p(x) R(x))) Unerfüllbarkeit der Menge M x(s(x) Q(x)) (1) x(p(x) (Q(x) R(x)) (2) ( ( xp(x))) ( yq(y)) (3) x((q(x) R(x)) S(x)) (4) x((p(x) R(x))) (5) 533 535 Beispiel Beispiel ine ussage über Mengen (1) S Q = (2) P Q R (3) P = Q (4) Q R S (5) P R ( Modellierung x(s(x) Q(x)) x(p(x) (Q(x) R(x)) ( ( xp(x))) ( yq(y)) x((q(x) R(x)) S(x)) ) x((p(x) R(x))) 1 (6) xp(x) [3 1, β] (7) yq(y) [3 2, β] (8) xp(x) [6 1, α] (9) Q(d) [7, δ] (10) P(c) [8, δ] ( ) (11) (P(c) R(c)) [5, γ] (12) P(c) [11 1, β] (13) R(c) [11 2, β] 14 : P(c) (Q(c) R(c)) [2, γ] 15 : P(c) [14 1, β] 16 : Q(c) R(c) [14 2, β] 17 : Q(c) [16 1, β] 18 : R(c) [16 2, β] ( ) 534 536

Beispiel Bemerkungen st (*), Fortsetzung: 17 : Q(c) [16 1, β] Nota bene: lle Äste in einem Tableau für M enthalten implizit alle Formeln in M 19 : (S(c) Q(c)) [1, γ] 20 : S(c) [19 1, β] 21 : Q(c) [19 2, β] 22 : Q(c) R(c) S(c) [4, γ] 23 : (Q(c) R(c)) [22 1, β] 24 : S(c) [22 2, β] 25 : Q(c) [23 1, α] 26 : R(c) [23 2, α] Die Substitutionsregel ändert potentiell alle Formeln des Tableau. Das ist das Globale an der Beweismethode. Nimmt man die Substitutionsregel wörtlich, so zählt man, in Verbindung mit der γ-regel, alle Substitutionsinstanzen allquantifizierter Formeln auf, ein Rückschritt im Vergleich zur Resolution. Das braucht man aber nicht. 537 539 Beispiel Beispiel st (**), Fortsetzung: (7) yq(y) [3 2, β] (9) Q(d) [7, δ] (27) : (S(d) Q(d)) [1, γ] (28) : S(d) [27 1, β] (29) : Q(d) [27 2, β] (30) : Q(d) R(d) S(d) [4, γ] (31) : (Q(d) R(d)) [30 1, β] (32) : S(d) [30 2, β] (33) : Q(d) [31 1, α] (34) : R(d) [31 2, α] 1. [ 2. 3. 4. 5. 6. w w w x p(x,w,f (x, w)) x p(x,w,f (x,w)) x y p(x, w,y) x p(x,a, f (x, a)) x y p(x,v 1,y) y p(b(v 1 ), v 1,y) w x y p(x,w,y)] 1 1 [α] 1 2 [α] 2(a) [δ] 3(v 1 ) [γ] 5(b(v 1 )) [δ] 7. p(v 2,a,f (v 2,a)) 4(v 2 ) [γ] 8. p(b(v 1 ), v 1,v 3 ) 6(v 3 ) [γ] 7. und 8. sind (modulo Unifikation) komplementär: v 2. = b(v 1 ), a. = v 1, f (v 2,a). = v 3 ist lösbar mit mgu σ = [a/v 1,b(a)/v 2,f (b(a), a)/v 3 ] und somit ist Tσ ein geschlossenes (lineares) Tableau für Formel 1. 538 540

Formale Definition des Kalküls Tableaus mit freien Variablen Problem: s ist sehr schwierig, zu raten, welche Instanzen im Beweis nützlich sind. Neue γ-regel γ γ(y) universell xq(x) q(y) Idee: wobei y eine neue freie Variable ist Substitutionsregel auf Unifikatoren komplementärer Formeln beschränken! γ-regel führen nur freien Variablen ein (Tableaus mit freien Variablen) Freie Variablen (Dummies, Platzhalten) werden bei Bedarf (bei bschluss) instantiiert (wie bei Resolution). Wir sprechen von einem MGU-Tableau, wenn die Substitutionsregel nur für Substitutionen σ angewendet wird, für die es einen Pfad in T mit Literalen und B gibt, so daß σ = mgu(,b). Neue bschlussregel L 1 L 2 Widerspruch wobei L 1, L 2 unifizierbare Literale. p(y) p(a) Nota bene: llgemeinster Unifikator von L 1, L 2 wird auf das ganze Tableau angewendet. mgu: [a/y] 541 543 Tableaus mit freien Variablen Konvention Neue γ-regel γ γ(y) universell xq(x) q(y) Wir nehmen an, dass die Menge der Variablen X in 2 disjunkte unendliche Teilmengen X f und X g partitioniert ist, und dass: Für gebundene Variablen nur solche aus X g verwendet werden. wobei y eine neue freie Variable ist (Vermeidet das infangproblem bei Substitution.) Neue bschlussregel L 1 Die Variabeln, die durch die neue γ-regel eingeführt werden immer aus Menge X f gewählt sind. L 2 Widerspruch p(y) p(a) mgu: [a/y] wobei L 1, L 2 unifizierbare Literale. 542 544

Prädikatenlogische Klauseltableaux Korrektheit und Vollständigkeit Klauseltableaux für eine Klauselmenge S bschlussregel wie zuvor Keine α, keine δ-regel β- und γ-regel zusammengefasst: Sei B ein st in T Sei C = {L 1,..., L n } eine Klausel in S Sei C = Cσ = {L 1,...,L n} aus C durch Variablenumbenennung Theorem ine Formelmenge M ist unerfüllbar genau dann, wenn es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt. Dann kann B erweitert werden, indem n Blätter mit L 1,...,L n angehängt werden. 545 547 Beispiel Korrektheit S = {{p(0)}, { p(x), p(s(x))}, { p(s(s(0)))}} 1 p(0) p(x 1 ) p(s(x 1 )) p(x 2 ) p(s(x 2 )) [0/x 1 ] p(s(s(0))) Bei gegebener Signatur Σ bezeichnen wir mit Σ sko das rgebnis der Hinzunahme unendlich vieler neuer Skolemfunktionen zu Σ, die wir in der δ-regel verwenden dürfen. Sei eine Σ sko -Interpretation, T ein Tableau, und β eine Variablenbelegung über. Definition. T heißt (, β)-erfüllt, wenn es einen Pfad P β in T gibt, so dass, β = F, für jede Formel F auf P β. [s(0)/x 2 ] [s(0)/x 2 ] Definition. T heißt erfüllbar, falls es ein gibt, so dass für jede Variablenbelegung β das Tableau T (, β)-erfüllt ist. (D.h. wir dürfen P β in bhängigkeit von β wählen.) 546 548

Korrektheit Striktheitbedingung Sei M = {F 1,...,F n } eine Formelmenge (so dass F i keine freien Variablen enthält). Theorem Sei T ein Tableau für {F 1,...,F n }. {F 1,...,F n } erfüllbar genau dann, wenn T erfüllbar. Definition. in Tableau ist strikt, falls für jede Formel F die entsprechende rweiterungsregel höchstens einmal auf jeden st, der die Formel enthält, angewandt wurde. Beweis: : Falls T erfüllbar, so gibt es eine Struktur, so dass für jede Variablenbelegung β das Tableau T (, β)-erfüllt ist, d.h. es gibt einen Pfad P β in T, so dass, β = F, für jede Formel F auf P β. Dann ist aber leicht zu sehen, dass, β = M (lle Äste in einem Tableau für M enthalten implizit alle Formeln in M). 549 551 Korrektheit Striktheitsbedingung für γ unvollständig Sei M = {F 1,...,F n } eine Formelmenge (so dass F i keine freien Variablen enthält). Theorem Sei T ein Tableau für {F 1,...,F n }. {F 1,...,F n } erfüllbar genau dann, wenn T erfüllbar. Beweis von durch Induktion über die Tiefe von T. Tableau mit Tiefe 1 (mit einem Knoten) erfüllbar wenn {F 1,..., F n } erfüllbar. Induktionsvoraussetzung: Implikation gilt für alle Tableaux mit Tiefe n. Induktionsschritt: Sei T ein Tableau mit Tiefe n + 1. T entsteht durch eine rweiterung mit einer α, β, γ oder δ-regel aus einem Tableau mit Tiefe n. α/β-regeln: Beweis wie für ussagenlogik; γ-regel: Offensichtlich. Bei δ müssen die Ideen aus dem Beweis der Bewahrung von rfüllbarkeit bei Skolemisierung verwendet werden. 1. [ 2. x p(x) (p(a) p(b))] x p(x) 1 1 3. (p(a) p(b)) 1 2 4. p(v 1 ) 2(v 1 ) 5. p(a) 3 1 6. p(b) 3 2 Würde die Striktheitsbedingung für γ gelten, wäre das Tableau nur noch durch nwendung der Substitutionsregel weiter expandierbar. ber es gibt keine Substitution (für v 1 ), unter der beide Pfade gleichzeitig abgeschlossen werden können. 550 552

Mehrfachanwendung von γ löst das Problem Vollständigkeit 1. [ 2. 5. p(a) 3 1 x p(x) (p(a) p(b))] x p(x) 1 1 3. (p(a) p(b)) 1 2 4. p(v 1 ) 2 v1 6. p(b) 3 2 7. p(v 2 ) 2 v2 Der Punkt ist, dass die verschiedenen nwendungen von γ auf jeweils neue freie Variablen für x einsetzen dürfen. x p(x) Jetzt liefert zweifache nwendung der MGU-Regel die Substitution [a/v 1,b/v 2 ] und somit ein geschlossenes Tableau. Theorem {F 1,...,F n } erfüllbar genau dann, wenn es kein geschlossenes, striktes (mit usnahme von γ) MGU-Tableau für {F 1,...,F n } gibt. Beweis (Idee, Klauseltableaux) Zum Beweis definiert man einen fairen Tableaux-xpansionssprozess, der gegen ein unendliches Tableau konvergiert, wo auf jedem Pfad jede γ-formel in alle Varianten (modulo Wahl der freien Variablen) expandiert wurde. Man kann dann wieder zeigen, dass alle Pfade bis auf Redundanz unter Resolution saturiert sind. Hierzu verwendet man die Lifting-rgumente für Resolutionsinferenzen, um die MGU-inschränkung als vollständig zu beweisen. 553 555 Wie oft muss γ angewendet werden? Vom Kalkül zur Beweissuchprozedur Theorem s gibt keine berechenbare Funktion f : For Σ For Σ N, so dass, falls eine Satzform F unerfüllbar, es ein geschlossenes Tableau für F gibt, wobei für Formeln xg, die in T vorkommen, die γ-regel auf jedem Pfad, auf dem xg vorkommt, höchstens f (F, xg)-mal angewendet worden ist. Sonst wäre Unerfüllbarkeit bzw. Gültigkeit in Logik erster Stufe entscheidbar, weil man nur Tableaux in einer Tiefe aufzählen müsste, die durch f beschränkt wird. Daher sind Tableaux mit freien Variablen i.allg. notwendigerweise unbeschränkt in ihrer Tiefe. wirkt wie eine unendliche Konjunktion. Durch iteratives nwenden von γ, in Verbindung mit der Substitutionsregel, können alle Instanzen F[t/x] aufgezählt und untereinander, also konjunktiv, in jedem Pfad durch xf eingesetzt werden. Vollständigkeit der Tableauregeln garantiert nur xistenz eines geschlossenen Tableaus. ine systematische Beweissuchprozedur ist notwendig, um einen Beweis zu finden. Tableaukonstruktion ist nicht-deterministisch: Choice points Nächster zu betrachtender st? bschluss- oder rweiterung? Falls bschluss: Mit welchem Literal-Paar? Falls rweiterung: Mit welcher Formel? 554 556

Vom Kalkül zur Beweissuchprozedur Beispiel Schlechte Wahl kann das Finden eines Beweises verhindern! Harmlos: stauswahl Beliebige Strategie (z.b. links nach rechts) führt zum rfolg Mit Fairnessstrategie handhabbar: Formelauswahl Jede Formel auf jedem st, γ-formeln beliebig oft Kritisch: bschluss erfordert Backtracking lternativ: Keinen bschluss machen, bis sich alle Äste zugleich schließen lassen Bevorzugung eines bschlusses p(0) x(p(x) p(s(x))) p(s(s(0))) p(x 1 ) p(s(x 2 )) p(x 1 ) p(s(x 1 )) p(x 2 ) p(s(x 2 )) (mgu: [0/X 1 ]) p(x 2 ) p(s(x 2 ))... (mgu: [0/X 2 ]) 557 559 Beispiel Beispiel Unfaire Bevorzugung einer Formel bschluss statt rweiterung xp(x) q q p(x 1 ) p(x 2 )... p(a) x((p(b) p(c) p(x)) (q(x) (q(b) q(c)))) q(d) ((p(b) p(c) p(x)) (q(x) (q(b) q(c)))) (p(b) p(c) p(x)) (q(x) (q(b) q(c)))) p(b) p(c) p(x) q(x) (q(b) q(c)) 558 560

Zusammenfassung nwendungsbereiche Prädikatenlogische Tableaukalküle γ- und δ-regel Determinismus der Regeln Tableaux mit freien Variablen neue γ- und neue bschlussregel Prädikatenlogische Klauseltableaux Beweissuchprozedur MTHMTIK ufgaben Beweisen Beweisuberprufung Theorien Zahlen Polynomen Funktionen auf Zahlenbereichen lgebren VRIFIKTION ufgaben Programme Korrektheit Terminierung reaktive/hybride Systeme Sicherheit Theorien Zahlen Datentypen Funktionen auf Zahlenbereichen DTNBNKN ufgaben Konsistenz nfragen beantworten Kleiner Suchraum Theorien Logik erster Stufe Datalog... KomplexeTheorien Funktionen Zahlen komplexe Systeme (MS, mit eingebetteter Software, Datenbanken) 561 563 4. nwendungen nwendungsbereiche MTHMTIK VRIFIKTION DTNBNKN ufgaben ufgaben ufgaben Beweisen Programme Konsistenz Korrektheit nfragen Beweisuberprufung Terminierung beantworten reaktive/hybride Kleiner Suchraum Theorien Systeme Theorien Sicherheit Zahlen Logik erster Stufe Formale Methoden Theorien Datalog Polynomen... Zahlen Verfahren: Funktionen - Probleme auf als logische Formeln kodiert KomplexeTheorien Datentypen Zahlenbereichen - Verifikationsaufgaben: Funktionen zu rfüllbarkeit/gültigkeitstests auf Funktionen reduziert lgebren Zahlenbereichen Zahlen komplexe Systeme (MS, mit eingebetteter Software, Datenbanken) 562 564

Beispiel: Sicherheitsprotokole Beispiel: Sicherheitsprotokolle Ziel: zwei Personen (lice und Bob) wollen miteinander kommunizieren über ein unsicheres Daten- oder Telefonnetz, Das folgende Schlüsselaustauschverfahren wurde 1993 von den beiden Kryptographen Neuman und Stubblebine vorgeschlagen: sicher, d. h., ohne dass ein indringling (Charlie) mithören oder sich als lice oder Bob ausgeben kann. Schritt 1: lice schickt Bob die Nachricht 1:, Na. Hilfsmittel: Verschlüsselung lice und Bob vereinbaren einen gemeinsamen Schlüssel und nutzen ihn, um ihr Gespräch zu verschlüsseln. Nur wer den Schlüssel kennt, kann das Gespräch entschlüsseln. Die Nachricht enthäit den Namen von lice,, und eine Zufallszahl Na. Die ufgabe von Na liegt darin, diesen Protokollauf eindeutig zu kennzeichnen, um das wiederholen von Nachrichten durch einen ngreifer sinnlos werden zu lassen. lice schickt (offen) Identifikation und Zufallszahl an Bob. 565 567 Beispiel: Sicherheitsprotokolle Beispiel: Sicherheitsprotokolle Problem: wie kommen die Gesprächspartner an den gemeinsamen Schlüssel? Persönliche Übergabe kommt nicht immer in Frage. Wird der gemeinsame Schlüssel über das Netz unverschlüsselt verschickt, könnte Charlie ihn abfangen oder austauschen. nnahme: es gibt eine sichere Schlüsselzentrale, mit der lice und Bob jeweils einen gemeinsamen Schlüssel vereinbart haben. Schritt 2: Bob schickt die Nachricht 2 : B, (Kbt,, Na, Tb), Nb an Trust. Nachdem Bob die Nachricht von lice erhalten hat, weiss er, dass sie einen sicheren Schlüssel mit ihm etablieren will. Deshalb schickt Bob die Nachricht 2 an Trust. Die Nachricht enthält: - seinen Namen, B, - einen verschlüsselten Mittelteil - eine von Bob generierte Zufallszahl, Nb, - Tb: Zeitspanne für die Gültigkeitsdauer des Schlüssels Der Term (Kbt,, Na, Tb) steht für die Nachricht, Na, Tb verschlüsselt mit dem Schlüssel Kbt, dem sicheren Schlüssel zwischen Bob und Trust. Bob leitet Nachricht weiter an Schlüsselzentrale ( Trust ). 566 568

Beispiel: Sicherheitsprotokolle Beispiel: Sicherheitsprotokolle Trust schickt die Nachricht 3 (Kat, B, Na, Kab, Tb), (Kbt,, Kab, Tb), Nb an lice. Bob liest Nachricht 4, entschlüsselt den ersten Teil und erhält so auch den Schlüssel Kab. Schritt 3: Nachdem Trust Bob s Nachricht gelesen und entschlüsselt hat, generiert er den sicheren Schlüssel Kab für die Kommunikation zwischen lice und Bob. r verschickt den Schlüssel mit Nachricht 3 an lice. Der erste Teil der Nachricht kann von lice entschlüsselt werden, während sie den zweiten Teil später einfach an Bob weiterleitet, siehe Schritt 4. Schritt 5: Diesen verwendet er dann zur ntschlüsselung des zweiten Teils und vergleicht die enthaltene Zufallszahl Nb mit der, die er ursprünglich in Nachricht 2 an Trust schickte. uf diese Weise ist sich Bob sicher, dass die Nachricht von lice stammt und Kab der gewünschte Schlüssel ist. Trust schickt Nachricht an lice. Darin: ein neuer gemeinsamer Schlüssel, einmal für lice und einmal für Bob verschlüsselt. lice und Bob können nun mit dem gemeinsamen Schlüssel kommunizieren. 569 571 Beispiel: Sicherheitsprotokolle Beispiel: Sicherheitsprotokolle lice schickt die Nachricht 4: (Kbt,, Kab, Tb), (Kab, Nb) an Bob. 1.,N a B Schritt 4: lice liest Nachricht 3, entschlüsselt den ersten Teil durch den gemeinsamen Schlüssel Kat mit Trust und erhält so den neuen Schlüssel Kab, um mit Bob zu kommunizieren. 2. B B, N b, Kbt (, N a,t b ) T Sie leitet den zweiten Teil von Trust s Nachricht an Bob weiter 3. T Kat (B, N a,k ab,t b ), Kbt (,K ab, T b ), N b und fügt die Nachricht (Kab, Nb) hinzu. 4. Kbt (, K ab,t b ), Kab (N b ) B lice leitet den neuen gemeinsamen Schlüssel weiter an Bob. 570 572

Beispiel: Sicherheitsprotokolle Formalisierung der igenschaften des Protokolls Ist das Verfahren sicher? 1., Na (1) k(key(at, t)) (2) M(sent(a, b, pair(a, na))) Formel (1) beschreibt, dass lice am nfang den Schlüssel at für die Kommunikation mit Trust besitzt. (Wir lassen K bei der Benamung von Schlüsseln weg.) Formel (2) formalisiert Nachricht 1. Nachrichten werden durch die dreistellige Funktion sent ausgedrückt, wobei das erste rgument den bsender bezeichnet, das zweite den mpfänger und das dritte den Inhalt der Nachricht. Wir übersetzen das Problem in Formeln und lassen sie von einem Theorembeweiser untersuchen. Die Konstante a bezeichnet lice, b Bob, t Trust und i Intruder. Die Funktionen pair (triple, quadr) gruppieren Sequenzen von Nachrichten entsprechender Länge. 573 575 Beispiel: Sicherheitsprotokolle Formalisierung der igenschaften des Protokolls Zuerst formalisieren wir die igenschaften des Protokolls: Wenn lice/bob/trust eine Nachricht in einem bestimmten Format bekommt, dann schickt er/sie eine andere Nachricht ab. Dann formalisieren wir die igenschaften des ngreifers: Wenn eine Nachricht übermittelt wird, kann Charlie sie mithören. Wenn Charlie eine verschlüsselte Nachricht bekommt und den passenden Schlüssel hat, kann er sie entschlüsseln. Wenn Charlie eine Nachricht hat, dann kann er sie an lice/bob/trust abschicken.... 2. B, Nb,(Kbt,,Na,Tb) (3) Bk(key(bt, t)) (4) xa, xna[m(sent(xa, b, pair(xa, xna))) M(sent(b, t, triple(b, nb(xna), encr(triple(xa, xna, tb(xna)), bt)))))] Formel (3): Bob besitzt den Schlüssel bt zur Kommunikation mit Trust. Formel (4): Wann immer er eine Nachricht in der Form von Nachricht 1 erhält (Formel 2), schickt er die nfrage nach einem Schlüssel an Trust wie in Nachricht 2 festgelegt. Die Verschlüsselung wird mit Hilfe der zweistelligen Funktion encr beschrieben. Das erste rgument der Funktion ist die zu verrschlüsselnde Nachricht und das zweite rgument der benutzte Schlüssel. lle Symbole die mit einem kleinen x anfangen, bezeichnen Variablen. Die Funktionen nb und tb generieren Bob s Zufallszahl und blaufdatum aus xna, xa s (lice s ) Zufallszahl. 574 576

Formalisierung der igenschaften des Protokolls Formalisierung des ngreifers 3. (Kat, B,Na, Kab,Tb), (Kbt,,Kab, Tb), Nb (5) Tk(key(at, a))) Tk(key(bt, b)) (6) xb,xnb,xa, xna,xbet,xbt,xat,xk [(M(sent(xb, t, triple(xb, xnb, encr(triple(xa, xna, xbet), xbt)))) Tk(key(xbt, xb)) Tk(key(xat, xa))) M(sent(t, xa, triple(encr(quadr(xb, xna, kt(xna), xbet), xat), encr(triple(xa, kt(xna), xbet), xbt), xnb)))] (5) Trust besitzt die Schlüssel für lice und Bob und... (6)... antwortet entsprechend des Protokolls auf Nachricht 2. ntschlüsselung wird hierbei durch Unifikation mit einer entsprechenden Termstruktur realisiert, wobei zusätzlich überprüft wird, dass Trust die benötigten Schlüssel auch besitzt. Trust generiert den neuen Schlüssel durch die Funktion kt aus der Zufallszahl xna. Der ngreifer wird als unermüdlicher Hacker implementiert, der keine Möglichkeit unversucht lässt, das Protokoll anzugreifen. r hört alle Nachrichten ab und zerlegt sie in ihre Bestandteile, solange er dazu nicht einen Schlüssel braucht, den er nicht hat. Die Bestandteile werden dann auf jeder rt und Weise zu neuen Nachrichten beliebiger Länge komponiert. Jeder Bestandteil wird als Schlüssel in Betracht gezogen und sowohl zum verschlüsseln als auch zum entschlüsseln verwendet. lle so generierten Nachrichten werden verschickt. Die Menge aller Nachrichten(teile), die der Intruder so erhält, wird durch das Prädikat Im ausgedrückt. 577 579 Formalisierung der igenschaften des Protokolls Der ngreifer 4. (Kbt,,Kab, Tb), (Kab,Nb) (7) xnb,xbet,xk,xm, xb,xna [M(sent(t, a, triple(encr(quadr(xb, xna, xk, xbet), at), xm, xnb)) (M(sent(a, xb, pair(xm, encr(xnb, xk)))) k(key(xk, xb)))] (8) xbet,xk,xnb,xa, xna [M(sent(xa, b, pair(encr(triple(xa, xk, tb(xna)), bt), encr(nb(xna), xk))) Bk(key(xk,xa))] Formel (7): lice antwortet in korrekter Weise auf Nachricht 3 und merkt sich den neuen Schlüssel. Formel (8) beschreibt Bob s Verhalten nachdem er lices Nachricht erhalten hat. Bob entschlüsselt die Nachricht und extrahiert den neuen Schlüssel. Die Teilnehmer (Participants) sind lice, Bob, Trust und Intruder: (9) P(a) P(b) P(t) P(i) Intruder hört alle Nachrichten ab. (10) xa, xb, xm[m(sent(xa, xb, xm)) Im(xm)] r dekomponiert und entschlüsselt alle Nachrichten, soweit er dafür den Schlüssel besitzt. (11) (12) (13) (14) u, v[im(pair(u, v)) (Im(u) Im(v))] u, v, w[im(triple(u, v, w)) (Im(u) Im(v) Im(w))] u, v, w, z[im(quadr(u, v, w, z)) (Im(u) Im(v) Im(w) Im(z))] u, v, w[(im(encr(u, v)) Ik(key(v, w)) Im(u)] 578 580

Der ngreifer utomatische nalyse lle Nachrichten(teile) werden auf alle möglichen rten neu komponiert. (15) (16) (17) u, v[(im(u) Im(v) Im(pair(u, v))] u, v, w[(im(u) Im(v) Im(w)) Im(triple(u, v, w)) u, v, w, z[(im(u) Im(v) Im(w) Im(z)) Im(quadr(u, v, w, z)) Jeder Nachrichtenteil wird auch als Schlüssel aufgefasst und zur Verschlüsselung benutzt. (18) (19) u, v, w[(im(v), P(w) Ik(key(v, w))] u, v, w[(im(v), P(w), Ik(key(v, w))) Im(encr(u, v))] Die Formalisierung des Protokolls, Formeln (1)-(8) zusammen mit den ngreiferformeln (9)-(20) und der rfolgsbedingung für den ngreifer kann man nun in einen Theorembeweiser eingeben. Dieser antwortet erfüllbar. Das beweist dann automatisch, dass der ngreifer das Protokoll brechen kann und der kritische Schlüssel die Zufallszahl Na ist. Der ngreifer schickt alles was er hat an jeden. (20) x, y, u[(p(x) P(y) Im(u)) M(sent(x, y, u))] 581 583 Formalisierung Beispiel: Sicherheitsprotokolle Zum Schluss müssen wir noch formalisieren was es bedeutet, dass der ngreifer rfolg hat. Was kann passieren? Dies ist dann der Fall, wenn er einen Schlüssel zur Kommunikation mit Bob hat, von dem Bob glaubt, es sei ein Schlüssel für lice. x[ik(key(x, b)) Bk(key(x, a))] Charlie fängt die letzte Nachricht von lice ab. 582 584

Beispiel: Sicherheitsprotokolle Beispiel: Sicherheitsprotokolle Was kann passieren? Intruder schickt die Nachricht 5: (Kbt,, Na, Tb), (Na, Nb) an Bob. Das Problem des Protokolls liegt darin, dass die Nachricht (Kbt,, Kab, Tb) in Nachricht 4 und die Nachricht (Kbt,, Na, Tb) in Nachricht 2 fast identisch sind. Die beiden Nachrichten unterscheiden sich nur an der 2. Position. (Nachricht 4 enthält dort den Schlüssel Kab, Nachricht 2 die Zufallszahl Na.) Was kann passieren? Da der Intruder alle Nachrichten lesen und auch selbst Nachrichten schicken kann, fängt er also Nachricht 4 ab, wiederholt den obigen Teil aus Nachricht 2 und fügt (Na, Nb) hinzu. Die beiden Zufallszahlen wurden bereits unverschlüsselt verschickt. Charlie schickt eine veränderte Nachricht an Bob. Bob startet Kommunikation mit lice... 585 587 Beispiel: Sicherheitsprotokolle Beispiel: Sicherheitsprotokolle Was kann passieren? Was kann passieren? Bob entschlüsselt die Nachricht und denkt, sie komme von lice, und dass Na der sichere Schlüssel zur Kommunikation mit lice ist.... aber spricht in Wirklichkeit mit Charlie. 586 588