Jan Hladik Wintersemester 2016/17

Werbung
Logik
Jan Hladik
DHBW Stuttgart
Wintersemester 2016/17
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
1 / 217
Inhalt
1
Einführung
Organisation
Motivation
Geschichte
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
2 / 217
Inhalt
1
Einführung
Organisation
Motivation
Geschichte
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
3 / 217
Dozent
Jan Hladik
Dipl.-Inform.: RWTH Aachen, 2001
Dr. rer. nat.: TU Dresden, 2007
Industrieerfahrung: SAP Research
Öffentlich geförderte Forschungsprojekte
Zusammenarbeit mit Produktgruppen
Betreuung von Studenten und Doktoranden
Professor: DHBW Stuttgart, 2014
Forschung
Semantic Web, Semantische Technologien, Schlussfolgerungsverfahren
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
4 / 217
Literatur
Vorlesungsmaterial
http://wwwlehre.dhbw-stuttgart.de/~hladik/Logik/
Logik
Dirk W. Hoffmann: Theoretische Informatik
Kurt-Ulrich Witt: Mathematische Grundlagen für die Informatik
Karl Stroetmann: Theoretische Informatik I - Logik und Mengenlehre
http://wwwlehre.dhbw-stuttgart.de/~stroetma/Logic/
Motivation
Apostolos Doxiadis, Christos Papadimitriou: Logicomix – Eine epische
Suche nach der Wahrheit
Douglas R. Hofstadter: Gödel Escher Bach
Prolog
Patrick Blackburn et. al.: Learn Prolog Now!
HTML-Version: http://learnprolognow.org/
mit Prolog-Interpreter: http://lpn.swi-prolog.org/
Prolog-Interpreter
http://swi-prolog.org/
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
5 / 217
Inhalt
1
Einführung
Organisation
Motivation
Geschichte
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
6 / 217
Warum Logik?
Logic is the beginning of wisdom,
not the end.
Mr. Spock, 2293 (Stardate 9522.6)
Programming is a creative art form
based in logic.
John Romero, 1993
kein Selbstzweck im Informatik-Studium
Grundlage für Programmierung, formale Sprachen, Mathematik, . . .
notwendig für ein fundiertes Verständnis der Informatik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
7 / 217
Automatisierung rationalen Denkens
Eindeutige Spezifikation
Syntax Was ist ein korrekter Ausdruck?
Semantik Was bedeutet ein korrekter Ausdruck?
If you cannot say what you mean, you will never
mean what you say and a gentleman should always
mean what he says.
R.J. Johnston in „The Last Emperor“
Objektiv richtige Ableitung von neuem Wissen
Was bedeutet „Richtigkeit“?
Kann man Richtigkeit automatisch sicherstellen?
Kann man neue Fakten automatisch herleiten?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
8 / 217
Logik in der Informatik
Technische Grundlagen
Boole’sche Schaltkreise (VL Digitaltechnik)
Anwendung innerhalb der Informatik
Spezifikation (VL Software-Engineering)
Programmentwicklung
Programmverifikation
„Erfüllt mein Programm die Spezifikation?“
„Ermöglicht mein Kommunikationsprotokoll Deadlocks?“
Berechenbarkeit (VL Formale Sprachen und Automaten)
Verständnis der Fähigkeiten und Grenzen von Computern
„Schreiben Sie einen Test, ob zwei Programme sich gleich verhalten.“
Werkzeug für Anwendungen der Informatik außerhalb der Informatik
Künstliche Intelligenz
Wissensrepräsentation (VL Wissensbasierte Systeme)
Automatisches Beweisen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
9 / 217
Informatik ohne Logik
Kann man nicht auch ohne Logik-Kenntnisse Programmierer sein?
Man kann auch ohne
Elektriker-Lehre Kabel
verlegen. . .
Ohne Verständnis von Logik
ist ein Informatiker nur ein
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
10 / 217
Ziele der Vorlesung
Begriffe
Syntax
Korrektheit
Term, Formel
Funktions-, Relationssymbole
Semantik
Wahrheit
Interpretation, Modell
Gültigkeit, Erfüllbarkeit
Folgerung
Beweisverfahren
Resolution
Tableaus
Praktische Anwendung von Logik
Formalisierung in Aussagen- und Prädikatenlogik
Prolog
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
11 / 217
Inhalt
1
Einführung
Organisation
Motivation
Geschichte
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
12 / 217
Logik: Wortherkunft
Logos
Gegenbegriff: Mythos
λόγος
μῦθος
verwandt mit λέγειν (sprechen)
Wort, Rede, Erzählung
Wort, Satz, Rede
Legende
Argumentation
Vermischung von Fakten und
Glauben
Beweis, Definition
Vernunft, Rationalität
Zentraler Begriff für Ursprung des abendländischen Denkens
Übergang „vom Mythos zum Logos“ (Wilhelm Nestle, 1940)
Wendung von Legenden zur Rationalität
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
13 / 217
Der Logos ist überall
Am Anfang war das Wort
᾿Εν ἀρχῇ ἦν ὁ λόγος,
καὶ ὁ λόγος ἦν πρὸς τὸν θεόν, und das Wort war bei Gott
und Gott war das Wort.
καὶ θεὸς ἦν ὁ λόγος.
...
Καὶ ὁ λόγος σὰρξ ἐγένετο
καὶ ἐσκήνωσεν ἐν ἡμῖν, . . .
...
Und das Wort ist Fleisch geworden
und hat unter uns gewohnt, . . .
Joh 1 1,14
Heutige Verwendung:
Logik
Dialog („durch Wörter“)
Wissenschaften enden auf -logie
Trilogie („drei Werke“)
Logopädie (Sprecherziehung)
Dekalog (Zehn Gebote)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
14 / 217
Ursprünge der Logik: Rationales Denken
Aristoteles (384–322 v.C.): „Metaphysik“
Satz vom ausgeschlossenen Widerspruch
Es ist unmöglich, dass dasselbe demselben in
derselben Beziehung zugleich zukomme und
nicht zukomme.
Satz vom ausgeschlossenen Dritten
Es ist unmöglich, dass es ein Mittleres zwischen den beiden Gliedern des Widerspruchs
gibt, sondern man muss eben eines von beiden entweder bejahen oder verneinen.
Jan Hladik (DHBW Stuttgart)
Logik
Aristoteles
Wintersemester 2016/17
15 / 217
Formalisierung rationalen Denkens
Gottfried Wilhelm Leibniz (1646–1716)
Dualsystem:
0 ; Nichts
1 ; Gott
Rechenmaschinen
Denn es ist ausgezeichneter Menschen unwürdig, gleich Sklaven Stunden zu verlieren mit
Berechnungen.
G.W. Leibniz
Idee der Formalisierung von Ausdrücken und
Beweisen
Philosophen werden nicht anders argumentieren als Rechenmeister. Sie werden die Feder in
die Hand nehmen und sagen: Calculemus!
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
16 / 217
Formalisierung von Aussagen- und Prädikatenlogik
George Boole (1815–1864):
„The Mathematical Analysis of Logic“
Operatoren × (und), + (oder), − (nicht)
Rechengesetze
disjunktive Normalform
Entscheidungsverfahren
; Aussagenlogik
Gottlob Frege (1848–1925):
„Begriffsschrift“
Formalisierung mathematischer Aussagen
„für alle x gilt . . . “
„es gibt ein x, für das gilt . . . “
; Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
17 / 217
Hilbert-Programm
Bertrand Russell (1872–1970),
A.N. Whitehead (1861–1947):
„Principia Mathematica“
Ziel: Fundierung der
Mathematik auf Logik
Formalisierung von Beweisen
Inferenz-Regeln
David Hilbert (1862–1943): Hilbert-Programm
Formalisierung aller Bereiche der Mathematik
Nachweis der Widerspruchsfreiheit der Formalisierung
Nachweis der Vollständigkeit der Beweisverfahren
; Mechanisches Ableiten aller wahren Sätze
Wir müssen wissen, wir werden wissen!
David Hilbert
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
18 / 217
Grenzen der Beweisbarkeit
Kurt Gödel (1906–1978): „Über formal
unentscheidbare Sätze der Principia Mathematica und
verwandter Systeme“
Vollständigkeit der Prädikatenlogik erster Stufe:
Jeder wahre Satz (in PL1) ist beweisbar.
Unvollständikeit der Prädikatenlogik zweiter Stufe:
Es gibt (in PL2) wahre Sätze, die nicht beweisbar sind. Kurt Gödel
Die Logik wird nie mehr dieselbe sein.
John von Neumann (1903–1957)
Alan Turing (1912–1954): „On computable numbers,
with an application to the Entscheidungsproblem“
Unentscheidbarkeit des Halteproblems für
Turing-Maschinen (Computer)
Unentscheidbarkeit des Erfüllbarkeitsproblems für PL1
; 3. Semester
Jan Hladik (DHBW Stuttgart)
Logik
Alan Turing
Wintersemester 2016/17
19 / 217
Selbstreferenz
„Dieser Satz ist nicht beweisbar.“
Russell’sche Antinomie: U = {T | T ∈
/ T}
„Der Barbier rasiert genau die Männer, die sich nicht selbst rasieren.“
Douglas R. Hofstadter:
Gödel
Escher
Bach
Musik ist die versteckte arithmetische
Tätigkeit der Seele, die sich nicht dessen bewusst ist, dass sie rechnet.
G.W. Leibniz
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
20 / 217
Das MIU-Rätsel
Gegeben ist ein formales System mir den folgenden Regeln:
1
Alle Wörter bestehen aus den Buchstaben M, I und U
2
Wenn ein Wort mit I endet, darf man U anhängen
3
III darf durch U ersetzt werden
4
UU darf entfernt werden
5
Das Teilwort nach einem M darf verdoppelt werden
6
Eine Ableitung beginnt immer mit MI
Nach Douglas R. Hofstadter, Gödel Escher Bach
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
21 / 217
Das MIU-Rätsel (formaler)
Alle Wörter bestehen aus den Buchstaben M, I und U
x und y stehen für beliebige (Teil-)wörter
Eine Ableitung beginnt immer mit MI
Ableitungsregeln:
1
2
3
4
xI → xIU
xIIIy → xUy
xUUy → xy
Mx → Mxx
Wir schreiben x ` y, wenn x durch eine Anwendung einer Regel in y
überführen lässt
Beispiel (Ableitung)
MI `4 MII `4 MIIII `2 MUI `4 MUIUI
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
22 / 217
Übung: Ableitungen im MIU-System
Regeln:
1
xI → xIU
2
xIIIy → xUy
3
xUUy → xy
4
Mx → Mxx
Geben Sie für die folgenden Wörter Ableitungen an:
1
MUIU
2
MIIIII
3
MUUUI
4
MU
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
23 / 217
MIU Lösungen (1)
1
xI → xIU
2
xIIIy → xUy
3
xUUy → xy
4
Mx → Mxx
1
MI ` MII ` MIIII ` MIIIIU ` MUIU
2
MI ` MII ` MIIII ` MIIIIIIII ` MIIIIIIIIU ` MIIIIIUU `
MIIIII
3
MI ` MII ` MIIII ` MIIIIIIII ` MUIIIII ` MUUII ` MUUIIUUII `
MUUIIII ` MUUUI
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
24 / 217
MIU Lösungen (2)
1
xI → xIU
2
xIIIy → xUy
3
xUUy → xy
4
Mx → Mxx
4. MU kann nicht hergeleitet werden!
Beweis: Betrachte Anzahl der I in ableitbaren Wörtern
Invariante: in allen herleitbaren Wörtern ist |x|I nicht ohne Rest durch 3
teilbar
|MI|I = 1; Rest 1
Regeln 1 und 3 ändern die Anzahl der I nicht
Regel 4 verdoppelt die Anzahl der I
Rest 1 ; Rest 2, Rest 2 ; Rest 1
Regel 2 reduziert die Anzahl der I um 3; Rest bleibt gleich
In keinem der Fälle wird aus einem nicht-Vielfachen von 3 ein
Vielfaches von 3. Aber |MU|I = 0. Also ist MU nicht herleitbar.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
25 / 217
MIU und Logik
MIU-System
Wörter über {M, I, U}
MI
Ableitungsregeln
Ableitbare Wörter
Logik
Syntaktisch korrekte Ausdrücke
Axiome
Beweisschritte
Beweisbare Sätze
Vollständigkeit Jedes ableitbare Wort wird durch iterierte
Regelanwendungen gefunden
Unentscheidbarkeit Um zu zeigen, dass MU nicht ableitbar ist, reicht
iterierte Regelanwendung nicht aus.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
26 / 217
Wenn Sie noch nicht überzeugt sind. . .
I have no respect for those with no respect for logic.
Julius Benedict, 1988
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
27 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
28 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
29 / 217
Definitionen
Definition (Definition)
Eine Definition ist eine genaue Beschreibung eines Objektes oder Konzepts.
kann einfach oder komplex sein
muss präzise sein - für jeden Kandidaten muss klar sein, ob er die
Definition erfüllt
ist nicht notwendig identisch mit der Intuition oder
umgangssprachlichen Verwendung des Worts
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
30 / 217
Mathematische Beweise
Definition (Beweis)
Ein Beweis ist ein Argument, das einen verständigen und
unvoreingenommenen Empfänger von der unbestreitbaren Wahrheit einer
Aussage überzeugt.
oft zumindest semi-formal
Die bewiesene Aussage ist fast immer ein Konditional (d. h. eine
bedingte Aussage)
aber die Annahmen sind für semi-formale Beweise oft implizit
z. B. Eigenschaften von natürlichen Zahlen, Bedeutung von Symbolen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
31 / 217
Mengenbegriff von Georg Cantor
Unter einer Menge verstehen wir jede Zusammenfassung M von bestimmten wohlunterschiedenen Objekten m unserer Anschauung oder unseres Denkens (welche
die Elemente von M genannt werden) zu
einem Ganzen.
Georg Cantor
(1845–1918)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
32 / 217
Mengen
Definition (Menge, Element)
Eine Menge ist eine Sammlung von Objekten, betrachtet als Einheit.
Die Objekte heißen auch Elemente der Menge.
Elemente können beliebige Objekte sein:
Zahlen
Wörter
Andere Mengen (!)
Listen, Paare, Funktionen, . . .
. . . aber auch Menschen, Fahrzeuge, Kurse an der DHBW, . . .
Die Menge aller in einem bestimmten Kontext betrachteten Objekte heißt
oft Universum oder Trägermenge.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
33 / 217
Definition von Mengen
Explizite Aufzählung:
A = {2, 3, 5, 7, 11, 13}
N = {0, 1, 2, 3, . . .}
Beschreibung („Deskriptive Form“):
A = {x | x ist Primzahl und x ≤ 13}
Mengenzugehörigkeit
2 ∈ A (2 ist in A, 2 ist Element von A)
4∈
/ A (4 ist nicht in A, 4 ist kein Element von A)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
34 / 217
Basiseigenschaften von Mengen
Mengen sind ungeordnet
{a, b, c} = {b, c, a} = {c, a, b}
Geordnet sind z. B. Folgen
Aber: Wir können eine externe Ordnung zu einer Menge definieren
Jedes Element kommt in einer Menge maximal einmal vor
{1, 1, 1} hat ein Element
Mehrfaches Vorkommen des gleichen Elements erlauben z. B.
Multimengen oder Folgen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
35 / 217
Teilmengen, Mengengleichheit
Definition (Teilmenge)
Eine Menge M1 heißt Teilmenge von M2 (M1 ⊆ M2 ), wenn für alle x ∈ M1
auch x ∈ M2 gilt.
Definition (Mengengleichheit)
Zwei Mengen M1 und M2 sind einander gleich (M1 = M2 ), wenn für alle
Elemente x gilt: x ∈ M1 gdw. x ∈ M2 , d. h. wenn M1 und M2 die selben
Elemente enthalten.
Es gilt: M1 = M2
gdw. M1 ⊆ M2 und M2 ⊆ M1 .
Vokabular:
gdw. steht für „genau dann, wenn“ (dann und nur dann, wenn)
englisch: iff; „if and only iff“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
36 / 217
Echte Teilmengen, Obermengen
Definition (Echte Teilmenge)
Eine Menge M1 heißt echte Teilmenge von M2 (M1 ⊂ M2 ), wenn
M1 ⊆ M2 und M1 6= M2 gilt.
Analog definieren wir Obermengen:
M1 ⊇ M2 gdw. M2 ⊆ M1
M1 ⊃ M2 gdw. M2 ⊂ M1
Wir schreiben M1 * M2 , falls M1 keine Teilmenge von M2 ist.
Notation: Manche Autoren verwenden ⊂ statt ⊆ und ( statt ⊂.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
37 / 217
Einige wichtige Mengen
Die leere Menge enthält kein Element
Schreibweise: ∅ oder {}
Es gilt: ∅ ⊆ M für alle Mengen M
N = {0, 1, 2, 3 . . .} (die natürlichen Zahlen)
Informatiker (und moderne Mathematiker) fangen bei 0 an zu zählen!
N+
= {1, 2, 3, . . .} (die positiven ganzen Zahlen)
Z = {. . . , −2, −1, 0, 1, 2, . . .} (die ganzen Zahlen)
Q = { pq | p ∈ Z, q ∈ N+ } (die rationalen Zahlen)
R, die reellen Zahlen
alle Zahlen auf der Zahlengerade
(keine „Löcher“ wie√bei Q)
enthält auch π, e, 2, . . .
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
38 / 217
Übung: Mengenbeschreibungen
Geben Sie formale Beschreibungen für die folgenden Mengen:
1
Alle geraden Zahlen
2
Alle Quadratzahlen
3
Alle Primzahlen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
39 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
40 / 217
Venn-Diagramme
Graphische Mengendarstellung
Mengen sind zusammenhängende Flächen
Überlappungen visualisieren gemeinsame Elemente
Zeigen alle möglichen Beziehungen
Quadratzahlen
36
Ungerade Zahlen
3
1
4
7
9
25
16
…
Jan Hladik (DHBW Stuttgart)
5
49
…
13
Logik
11
John Venn
(1834–1923)
Wintersemester 2016/17
41 / 217
Mengenoperationen
Annahme: Alle betrachteten Mengen sind Teilmengen einer gemeinsamen
Trägermenge T .
Wichtige Mengenoperationen sind:
Vereinigung
Schnitt
Differenz
Komplement
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
42 / 217
Vereinigungsmenge
M1 ∪ M2 = {x | x ∈ M1 oder x ∈ M2 }
x ∈ M1 ∪ M2 gdw. x ∈ M1 oder x ∈ M2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
43 / 217
Schnittmenge
M1 ∩ M2 = {x | x ∈ M1 und x ∈ M2 }
x ∈ M1 ∩ M2 gdw. x ∈ M1 und x ∈ M2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
44 / 217
Differenz
M1 \ M2 = {x | x ∈ M1 und x ∈
/ M2 }
x ∈ M1 \ M2 gdw. x ∈ M1 und x ∈
/ M2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
45 / 217
Komplement
M1 = {x | x ∈
/ M1 }
x ∈ M1 gdw. x ∈
/ M1
Achtung
Hier ist die implizite Annahme der Trägermenge T besonders wichtig.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
46 / 217
Übung: Mengenoperationen
1
Sei T = {1, 2, . . . , 12},
M1 = {1, 2, 3, 4, 5, 6, 7, 8}, M2 = {2, 4, 6, 8, 10, 12}.
Berechnen Sie die folgenden Mengen und visualisieren Sie diese.
a)
b)
c)
d)
2
M1 ∪ M2
M1 ∩ M2
M1 \ M2
M1 und M2
Sei T = N, M1 = {3i | i ∈ N}, M2 = {2i + 1 | i ∈ N}.
Berechnen Sie die folgenden Mengen. Geben Sie jeweils eine
mathematische und eine umgangssprachliche Charakterisierung des
Ergebnisses an.
a)
b)
c)
d)
M1 ∪ M2
M1 ∩ M2
M1 \ M2
M1 \ M2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
47 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
49 / 217
Kartesisches Produkt
Definition (Kartesisches Produkt)
Das kartesische Produkt (M1 × M2 ) zweier Mengen M1
und M2 ist die Menge {(x, y) | x ∈ M1 , y ∈ M2 }.
M1 × M2 ist eine Menge von Paaren oder 2-Tupeln
Verallgemeinerung:
M1 × M2 . . . × Mn = {(x1 , x2 , . . . , xn ) | xi ∈ Mi }
ist eine Menge von n-Tupeln
René Descartes
(1596–1650)
Beispiel
M1 = {1, 2, 3}, M2 = {a, b}
M1 × M2 = {(1, a), (2, a), (3, a), (1, b), (2, b), (3, b)}
M2 × M1 = ?
M1 × M1 = ?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
50 / 217
Potenzmenge
Definition (Potenzmenge)
Die Potenzmenge (2M ) einer Menge M ist die Menge aller Teilmengen von
M , also 2M = {M 0 | M 0 ⊆ M }.
M ∈ 2M und ∅ ∈ 2M
aber: M 6⊆ 2M
2M hat 2|M | Elemente
Alternative Notation: P(M )
Beispiel
M1 = {1, 2, 3}, M2 = {a, b}
2M1 = {∅, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}}
2M2 = ?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
51 / 217
Übung: Kartesisches Produkt und Potenzmenge
Sei M1 = {1, 3, 5, 7}, M2 = {2, 4, 6}.
Berechnen Sie:
1
M1 × M1
2
M1 × M2
3
M2 × M1
4
2M2
5
Warum berechnen wir nicht 2M1 ∪M2 ?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
52 / 217
Übung: M 3
Sei M = {a, b, c}.
Berechnen Sie M 3 (= M × M × M ).
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
53 / 217
Rechenregeln (1)
Es gelte M1 , M2 , M3 ⊆ T . Dann folgt:
Kommutativgesetze
M1 ∪ M2 = M2 ∪ M1
M1 ∩ M2 = M2 ∩ M1
Assoziativgesetze
M1 ∪ (M2 ∪ M3 ) = (M1 ∪ M2 ) ∪ M3
M1 ∩ (M2 ∩ M3 ) = (M1 ∩ M2 ) ∩ M3
Distributivgesetze
M1 ∪ (M2 ∩ M3 ) = (M1 ∪ M2 ) ∩ (M1 ∪ M3 )
M1 ∩ (M2 ∪ M3 ) = (M1 ∩ M2 ) ∪ (M1 ∩ M3 )
Gesetze von De Morgan
Augustus De Morgan
(1806-1871)
M1 ∪ M2 = M1 ∩ M2
M1 ∩ M2 = M1 ∪ M2
Für welche Regeln gibt es keine Entsprechung in der Arithmetik?
(mit „+“ statt „∪“ und „·“ statt „∩“)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
54 / 217
Rechenregeln (2)
Es gelte M1 , M2 , M3 ⊆ T .
Neutrale Elemente
M1 ∪ ∅ = M1
M1 ∩ T = M1
Inverse Elemente
M1 ∪ M1 = T
M1 ∩ M1 = ∅
Absorbierende Elemente
M1 ∪ T = T
M1 ∩ ∅ = ∅
Idempotenz
M1 ∪ M1 = M1
M1 ∩ M1 = M1
Doppelte Komplementbildung
M1 = M1
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
55 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
56 / 217
Allgemeine Relationen
Definition (Relation)
Seien M1 , M2 , . . . Mn Mengen. Eine (n-stellige) Relation R über
M1 , M2 , . . . Mn ist eine Teilmenge des kartesischen Produkts der Mengen,
also R ⊆ M1 × M2 × . . . × Mn .
Äquivalente Definition: R ∈ 2M1 ×M2 ×...×Mn
Notation: Statt (x, y) ∈ R schreibt man oft R(x, y)
Beispiel
M1 = {Müller, Mayer, Schulze, Doe, Roe} (z. B. Personen)
M2 = {Logik, LA, BWL, Digitaltechnik, PM} (z. B. Kurse)
Belegt = {(Müller, Logik), (Müller, BWL), (Müller, Digitaltechnik),
(Mayer, BWL), (Mayer, PM), (Schulze, LA), (Schulze,
Digitaltechnik), (Doe, PM)}
Welche Kurse hat Mayer / Roe belegt?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
57 / 217
Übung: Relationen
Geben Sie jeweils ein Beispiel für eine möglichst interessante Relation aus
dem realen Leben und aus der Mathematik an.
Welche Mengen sind beteiligt?
Welche Elemente stehen in Relation?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
58 / 217
Homogene Relationen
Definition (Homogenität)
Sei R eine Relation über M1 , M2 , . . . Mn . R heißt homogen, falls Mi = Mj
für alle i, j ∈ {1, . . . , n}.
Wenn R homogen ist, so nennen wir R auch eine Relation über M .
Eine n-stellige Relation R(n) über einer Menge M ist
eine Teilmenge von M × M × . . . × M
|
{z
}
n-mal
eine Menge von n-Tupeln von Elementen aus M
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
59 / 217
Homogene Relationen
Beispiele
Einstellige (unäre) Relationen sind Teilmengen von M
(1)
PN = {2, 3, 5, 7, 11, . . .} über N
Zweistellige (binäre) Relationen bestehen aus Paaren
(2)
TN = {(2, 2), (2, 4), (2, 6), . . . , (3, 3), (3, 6), (3, 9), . . .} über N
(2)
<N = {(0, 1), (0, 2), . . . , (1, 2), (1, 3), . . .} über N
Bei binären Relationen schreiben wir oft xRy statt R(x, y).
(z. B. 1 <N 2 statt <N (1, 2) oder (1, 2) ∈<N )
Nullstellige Relationen sind leer oder enthalten das leere Tupel die einzigen nullstelligen Relation über jeder Menge sind
F (0) = ∅ und W (0) = {}
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
60 / 217
Homogene binäre Relationen
Beispiele
=N = {(0, 0), (1, 1), (2, 2), . . .}
<Z = {(i, i + j) | i ∈ Z, j ∈ N+ }
6=N mit N = {w | w ist ein deutscher Name }
{(Müller, Mayer), (Müller, Schulze), (Mayer, Schulze), (Mayer, Müller),
(Schulze, Mayer), (Schulze, Müller)} ⊆ 6=N
⊆2M für eine Menge M
({a, b}, {a, b, c}) ∈ ⊆2M
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
61 / 217
Darstellung von Relationen: Menge
Man kann endliche Relationen auf verschiedene Arten darstellen und im
Computer repräsentieren.
Bisher: Mengendarstellung
Liste alle Tupel auf, die in Relation stehen
Z. B.: M = {0, 1, 2, 3}. R = {(0, 0), (0, 1), (1, 2), (2, 3), (3, 3), (3, 1)}
Vorteile:
Kompakt
Einfach zu implementieren
Nachteile:
Nicht anschaulich
Nicht übersichtlich
Prüfen, ob Tupel enthalten ist, dauert lange (Liste durchsuchen)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
62 / 217
Darstellung von Relationen: Graph
Graphdarstellung
Elemente sind Knoten
Zwei Elemente x, y sind mit einer Kante verbunden, wenn xRy gilt
Z. B.: M = {0, 1, 2, 3}. R = {(0, 0), (0, 1), (1, 2), (2, 3), (3, 3), (3, 1)}
2
0
1
3
Vorteile:
Übersichtlich (wenn der Graph nicht zu groß ist)
Anschaulich: Manche Eigenschaften können leicht erkannt werden
Nachteile:
Nur für binäre Relationen
Nur anschaulich - wie repräsentieren wir den Graph im Rechner?
Platzieren von Knoten und Kanten ist nicht trivial
Übersichtlichkeit geht bei komplexen Relationen verloren
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
63 / 217
Historisches Beispiel
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
64 / 217
Darstellung von Relationen: Tabelle
Darstellung als Tabelle oder Matrix
Tabellenzeilen und Spalten sind mit Elementen beschriftet
An Stelle Zeile x, Spalte y steht eine 1, wenn xRy gilt, sonst 0
Z. B.:


0 1 2 3
1 1 0 0
0 1 1 0 0
 0 0 1 0 

1 0 0 1 0 . . . oder als Matrix: 
 0 0 0 1 
2 0 0 0 1
0 1 0 1
3 0 1 0 1
Vorteile:
Sehr einfach im Rechner realisierbar
Prüfen, ob xRy gilt, geht schnell („lookup“)
Übersichtlicher als Mengen
Manche Eigenschaften können leicht erkannt werden
Nachteile:
Viel Speicherbedarf (immer n 2 Einträge)
Auf Papier nur für binäre Relationen praktikabel
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
65 / 217
Eigenschaften von Relationen
Definition (linkstotal, rechtseindeutig)
Sei R eine binäre Relation über A × B.
Gibt es für jedes a ∈ A ein b ∈ B mit R(a, b), so heißt R linkstotal.
Gilt für alle a ∈ A und b, c ∈ B, dass aus R(a, b) und R(a, c) folgt,
dass auch b = c gilt, so heißt R rechtseindeutig.
Linkstotal: Jedes Element aus A steht mit mindestens einem Element
aus B in Relation.
Rechtseindeutig: Jedes Element aus A steht mit höchstens einem
Element aus B in Relation.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
66 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
67 / 217
Funktionen
Definition (Funktion)
Seien M , N Mengen.
Eine partielle Funktion f : M → N ist eine Relation f ⊆ (M × N ), die
rechtseindeutig ist.
Eine (totale) Funktion f : M → N ist eine Relation f ⊆ (M × N ), die
linkstotal und rechtseindeutig ist.
M heißt Definitionsmenge von f .
N heißt Zielmenge von f .
Eine Funktion (auch: Abbildung) ordnet (jedem) Element aus M höchstens
ein Element aus N zu.
In der Mathematik sind Funktionen meist total.
In der Informatik sind Funktionen sind mal so, mal so . . .
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
68 / 217
Funktionen: Schreibweise
Oft wird eine konkrete Funktion durch eine Zuordnungsvorschrift definiert.
Beispiele
f : N → N; x 7→ x 2
g : Z → N; x 7→ |x|
Notation: f (x) = y statt (x, y) ∈ f oder xfy
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
69 / 217
Funktionen auf einer Menge
Definition (n-stellige Funktion auf einer Menge)
Sei M eine Menge. Eine Funktion f : M n → M heißt n-stellige Funktion
oder Operation auf M .
Beispiele
+N , die Addition der natürlichen Zahlen, ist eine zweistellige
Operation auf N.
Z. B.: (2, 3) 7→ 5
!N , die Fakultät der natürlichen Zahlen, ist eine einstellige Operation
auf N.
Z. B.: 4 7→ 24
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
70 / 217
Nullstellige Funktionen
Funktion f : M 0 → M
M 0 = {}
Definitionsmenge hat nur ein Element
f ist durch f () eindeutig festgelegt
Nullstellige Funktionen sind Konstanten!
Beispiele
c : N0 → N; 7→ 5 ist die Konstante 5
Für die Menge aller Menschen M bezeichnet
d : M 0 → M ; 7→ Kurt Gödel den einzelnen Menschen Kurt Gödel.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
71 / 217
Inhalt
1
Einführung
2
Mengenlehre
Grundbegriffe
Mengenoperationen
Kartesisches Produkt, Potenzmenge
Relationen
Funktionen
Signaturen
3
Aussagenlogik
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
72 / 217
Funktionen und Funktionssymbole
Funktionssymbol Zeichen, z. B. „+“
zugeordnete Stelligkeit: „+(2) “
„x +(2) y“ ist korrekter Ausdruck, „x +(2) “ nicht
wenn Stelligkeit klar ist, wird sie oft nicht angegeben
auch: Operator
Funktion Mathematisches Konstrukt
z. B. +N : Abbildung von N × N → N (zweistellig)
auch: Operation
Achtung
Dasselbe Funktionssymbol kann für verschiedene Trägermengen durch
unterschiedliche Funktionen interpretiert werden!
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
73 / 217
Funktionen und Funktionssymbole
Beispiel (Symbol „·(2) “)
Funktion ·N : N × N → N; (x, y) 7→ x · y (Multiplikation)
z. B. 2 ·N 3 = 6
Funktion ·S : S × S → S; (x, y) 7→ xy (Konkatenation)
S: Menge der Strings über {a, b, c, . . . , z}
z. B. ab ·S bc = abbc
Analogie aus der OO-Programmierung: Überladen von Operatoren
ein Symbol „+“
unterschiedliche Funktionen je nach Typ der Objekte
Integer-Addition
Matrix-Addition
Vereinigung von Mengen
...
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
74 / 217
Signaturen
Analog unterscheidet man Relationen und Relationssymbole:
Relationssymbol Zeichen „<“
Stelligkeit <(2)
3 < 4 ist korrekter Ausdruck
Relation <N ⊆ N × N
Definition (Signatur)
Eine Signatur ist eine Menge von Funktions- und Relations-Symbolen mit
zugehörigen Stelligkeiten.
Beispiele
{+(2) , ·(2) , 0(0) , 1(0) } ist die Signatur der Arithmetik
{+(2) , ·(2) , 0(0) , 1(0) , ≤(2) } ist die Signatur der geordneten Arithmetik
{E (2) } ist die Signatur der Graphen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
75 / 217
Strukturen
Definition (Struktur)
Sei σ eine Signatur. Eine σ-Struktur A besteht aus
einer nichtleeren Menge A,
einer n-stelligen Funktion fA : An → A für jedes n-stellige
Funktionssymbol f ∈ σ,
einer n-stelligen Relation RA ⊆ An für jedes n-stellige
Relationssymbol R ∈ σ.
Beispiele (Strukturen mit Signatur der Arithmetik)
(N, +N , ·N , 0N , 1N )
(N2×2 , +M , ·M , 00 00 , 10 01 ) wobei +M und ·M als
Matrizen-Addition und -Multiplikation definiert sind
(B, +B , ·B , 0B , 1B ) mit B = {0B , 1B } und
Jan Hladik (DHBW Stuttgart)
Logik
+B
0
1
0
0
1
1
·B
0
1
1
0
0
0
1
1
0
1
Wintersemester 2016/17
,
76 / 217
Algebraische Strukturen
Das Gebiet der Algebra beschäftigt sich mit den Eigenschaften von
Rechenoperationen
Eine Algebraische Struktur (kurz: Algebra) hat eine funktionale
Signatur.
Beispiele (Bekannte algebraische Strukturen)
(2)
(0)
(1)
(2)
(0)
(1)
(Z, +Z , 0Z , −Z ) ist eine Gruppe
(2)
(Z, +Z , 0Z , −Z , ∗Z ) ist ein Ring
Mengenalgebra:
Trägermenge: Potenzmenge P einer Menge M
(1)
(2)
(2)
Operatoren: ∪P , ∩P , P , ∅(0) , M (0)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
77 / 217
Zusammenfassung: Mengenlehre
Menge Zusammenfassung von Elementen in ein Ganzes
Operationen Vereinigung, Durchschnitt, Komplement
Kartesisches Produkt, Potenzmenge
Visualisierung Venn-Diagramme
Rechenregeln De Morgan, neutrale/inverse/absorbierende Elemente
Relation Menge von Tupeln
Funktion Abbildung von Tupeln auf Elemente
Signatur Funktions- und Relationssymbole mit fester Stelligkeit
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
78 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
79 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
80 / 217
Aussagenlogik
Einfachste in dieser Vorlesung betrachtete Logik
begrenzte Ausdrucksstärke
einfach zu verstehen und anzuwenden
enthält verschiedene Konzepte, die auch in ausdrucksstärkeren Logiken
vorkommen
Aussagenvariablen repräsentieren atomare Aussagen
Beispiel
A
;
„Es regnet.“
Junktoren repräsentieren Zusammenhänge zwischen Aussagen
Beispiel
A→B
;
„Wenn es regnet, wird die Erde nass.“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
81 / 217
Aussagevariablen
werden durch Großbuchstaben repräsentiert A, B, X , Y , . . .
drücken Aussagen aus, die wahr oder falsch sein können
„Es regnet.“
„Paul liebt Paula.“
„Sokrates ist sterblich.“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
82 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
83 / 217
Syntax
Lehre von wohlgeformten Ausdrücken
Linguistik: Satzbau; Regeln zum Erzeugen von Sätzen aus Wörtern
Logik: Regeln zum Erzeugen von Formeln aus vorgegebenen Symbolen
Beispiele
Deutsch
Arithmetik
syntaktisch falsch
geben . hat Mensch ? die
+)2 − ·((xy − 3 <
Jan Hladik (DHBW Stuttgart)
Logik
syntaktisch richtig
Heute ist schönes Wetter.
3 < (4 + 2) · 5
Wintersemester 2016/17
84 / 217
Syntax der Aussagenlogik
Definition (Aussagenlogische Formel)
Sei V eine Menge von Aussagenvariablen.
Jedes X ∈ V ist eine aussagenlogische Formel.
> und ⊥ sind aussagenlogische Formeln.
Wenn ϕ und ψ aussagenlogische Formeln sind, dann auch
¬ϕ (Negation)
ϕ → ψ (materiale Implikation)
ϕ ∧ ψ (Konjunktion)
ϕ ↔ ψ (materiale Äquivalenz)
ϕ ∨ ψ (Disjunktion)
(ϕ) (Klammern)
Beispiele
A∧B
A ∧ (B ∨ C )
A → (B ∧ (C ↔ D) ∨ (D → E))
⊥∨A
¬(A ∨ B)
A ↔ (A ↔ D)
¬>
C → (B ∨ D)
((A ↔ B) ↔ (C ↔ D)) → E
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
85 / 217
Übung: Syntax der AL
Welche der folgenden Zeichenketten sind aussagenlogische Formeln?
a) A → ⊥
g) A → A
b) A ∧ (B ∨ C )
h) A ∧ ¬A
c) A¬B
i) A¬ ∧ B
d) (A → C ) ∧ (¬A → C ) → C
j) ¬A ∧ B
e) ∨B ∨ C ∧ D
k) (¬A) ∧ B
f) A → (B ∨ ¬B)(C ∨ ¬C )
l) ¬(A ∧ B)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
86 / 217
Vorrang und Assoziativität der Junktoren
Vorrang der Junktoren:
¬
∧
∨
→
↔
Beispiel
A ∧ ¬B → B ∨ C
bedeutet
(A ∧ (¬B)) → (B ∨ C )
Gleiche Junktoren werden links-assoziativ gelesen.
Beispiel
A→B→C
Jan Hladik (DHBW Stuttgart)
bedeutet (A → B) → C
Logik
Wintersemester 2016/17
87 / 217
Übung: Vorrang und Klammern
Entfernen Sie so viele Klammern wie möglich, ohne den Vorrang zu
verändern.
a) ((A ∧ B) ∨ ((C ∧ D) → (A ∨ C )))
b) ((((A ∧ (B ∨ C ) ∧ D)) → A) ∨ C )
c) (A ∧ (B ∨ (C ∧ (D → (A ∨ C )))))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
88 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
89 / 217
Semantik
Lehre von der Bedeutung von Ausdrücken
Voraussetzung: Ausdruck ist wohlgeformt (syntaktisch korrekt)
Linguistik: Was bedeutet ein Begriff oder Satz?
Logik: Ist ein Satz wahr oder falsch?
Beispiele
Deutsch
Arithmetik
immer wahr
Die Erde kreist
um die Sonne.
4+2=6
Jan Hladik (DHBW Stuttgart)
immer falsch
Der Mensch x
ist unsterblich.
x ·x <0
Logik
kommt drauf an
Heute ist
schönes Wetter.
x +3=5
Wintersemester 2016/17
90 / 217
Semantik der Aussagenlogik
Aussagevariablen erhalten Wert 0 oder 1
Formel wird wahr oder falsch
Definition (Interpretation in der Aussagenlogik)
Eine Interpretation ist eine Funktion I : V → B mit
einer Menge von Aussagevariablen V
der binären Menge B = {0, 1}
Beispiel
A 7→ 0
;
„es regnet nicht“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
91 / 217
Interpretation komplexer Formeln
⊥I
0
>I
1
(ϕ ∧ ψ)I
ϕI 0
ϕI
(¬ϕ)I
1
ψI
0
1
0
0
ψI
0
1
0
1
(ϕ → ψ)I
ϕI 0 1
ψI
0
1
Jan Hladik (DHBW Stuttgart)
1
1
0
1
1
0
(ϕ ∨ ψ)I
ϕI 0
1
0
1
1
1
(ϕ ↔ ψ)I
ϕI 0 1
ψI
0
1
0
1
Logik
1
0
0
1
Wintersemester 2016/17
92 / 217
Beispiele: Interpretationen
Die Interpretation I = {A 7→ 1, B 7→ 1, C 7→ 0} macht die Formel . . .
B wahr;
A ∧ B wahr;
A ∧ C falsch;
(A ∧ B) ∨ (A ∧ C ) wahr;
((A ∧ B) ∨ (A ∧ C )) → C falsch.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
93 / 217
Äquivalenz
Definition (Äquivalenz)
Zwei aussagenlogische Formeln ϕ und ψ sind (logisch) äquivalent, wenn
jede Interpretation beiden Formeln denselben Wahrheitswert zuordnet, d. h.:
ϕI = ψ I
für jedes I
Manche Operatoren lassen sich durch äquivalente Ausdrücke ersetzen:
Satz (Äquivalenzen)
ϕ ↔ ψ ist äquivalent zu (ϕ → ψ) ∧ (ψ → ϕ) oder (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ)
ϕ → ψ ist äquivalent zu ¬ϕ ∨ ψ
ϕ ∧ ψ ist äquivalent zu ¬(¬ϕ ∨ ¬ψ)
ϕ ∨ ψ ist äquivalent zu ¬(¬ϕ ∧ ¬ψ)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
94 / 217
Übung: Interpretationen
Finden Sie für die folgenden Formeln je zwei Interpretationen:
eine, die die Formel wahr macht
eine, die die Formel falsch macht
a) A ∧ B → C
b) (A ∨ B) ∧ (A ∨ C ) → (B ∧ C )
c) A → B ↔ ¬B → ¬A
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
95 / 217
Tautologien
Definition (Tautologie)
Eine Tautologie ist eine Formel, die in jeder Interpretation wahr ist.
Beispiele (Tautologien)
A ↔ A (Identität)
¬(A ∧ ¬A) (Ausgeschlossener Widerspruch)
A ∨ ¬A (Ausgeschlossenes Drittes)
A → B ↔ ¬B → ¬A (Kontraposition, Umkehrschluss)
(A → B) ∧ (A → ¬B) → ¬A (Reductio ad Absurdum,
Widerspruchsbeweis)
(A → B) ∧ A → B (Modus Ponens)
(A → B) ∧ ¬B → ¬A (Modus Tollens)
(A ∨ B) ∧ (A → C ) ∧ (B → C ) → C (Fallunterscheidung)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
96 / 217
Weitere Tautologien: Rechenregeln
A ∧ B ↔ B ∧ A (Kommutativität)
(A ∧ B) ∧ C ↔ A ∧ (B ∧ C ) (Assoziativität)
(A ∧ B) ∨ C ↔ (A ∨ C ) ∧ (B ∨ C ) (Distributivität)
¬(A ∧ B) ↔ ¬A ∨ ¬B (Gesetz von De Morgan)
A ∧ > ↔ A; A ∨ ⊥ ↔ A (Neutrales Element)
A ∧ ¬A ↔ ⊥; A ∨ ¬A ↔ > (Inverses Element)
A ∧ ⊥ ↔ ⊥; A ∨ > ↔ > (Absorbierendes Element)
A ∧ A ↔ A; A ∨ A ↔ A (Idempotenz)
¬¬A ↔ A (Doppelte Negation)
Kommutativität, Assoziativität, Distributivität und das Gesetz von
de Morgan gelten auch, wenn ∧ und ∨ gegeneinander ausgetauscht werden.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
97 / 217
Modelle, Gültigkeit, Erfüllbarkeit
Definition (Modell)
Ein Modell für eine Formel ϕ ist eine Interpretation I, die ϕ wahr macht.
(I |= ϕ).
I = {A 7→ 1, B 7→ 0} ist Modell für A ∨ B, aber nicht für A ∧ B.
Definition (Erfüllbarkeit, Gültigkeit)
Eine Formel ϕ ist erfüllbar, wenn sie ein Modell hat.
Eine Formel ϕ ist gültig ( |= ϕ) wenn jede Interpretation ein Modell ist
(d. h. wenn ϕ eine Tautologie ist).
erfüllbar A,
A ∨ B,
gültig A ∨ ¬A,
Jan Hladik (DHBW Stuttgart)
A ∧ ¬B,
A → A,
A↔B
A ↔ ¬(¬A)
Logik
Wintersemester 2016/17
98 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Resolution
Tableaus
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
99 / 217
Schlussfolgerung in der Aussagenlogik
Bestimmung der Eigenschaften einer Formel ϕ
gültig (ϕ ist eine Tautologie; jede Interpretation ist ein Modell)
erfüllbar (Es gibt ein Modell für ϕ)
falsifizierbar (Es gibt eine Interpretation, die kein Modell für ϕ ist)
unerfüllbar (Es gibt keine Modelle für ϕ)
Bestimmung, ob die Formel ϕ die Formel ψ (logisch) impliziert
(ϕ |= ψ), d. h. ob jedes Modell für ϕ auch Modell für ψ ist
Anmerkung: Formeln, die erfüllbar und falsifizierbar (also weder gültig noch
unerfüllbar) sind, werden auch kontingent genannt.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
100 / 217
Beweis der Gültigkeit: Äquivalenzumformungen
Beispiel (Reductio ad Absurdum)
(A → B) ∧ (A → ¬B) → ¬A
(¬A ∨ B) ∧ (¬A ∨ ¬B) → ¬A
¬((¬A ∨ B) ∧ (¬A ∨ ¬B)) ∨ ¬A
¬(¬A ∨ B) ∨ ¬(¬A ∨ ¬B) ∨ ¬A
(A ∧ ¬B) ∨ (A ∧ B) ∨ ¬A
(A ∧ (¬B ∨ B)) ∨ ¬A
(A ∧ >) ∨ ¬A
A ∨ ¬A
>
Ersetzung von → (zweimal)
Ersetzung von →
De Morgan
De Morgan (zweimal)
Distributivität
Ausgeschlossenes Drittes
> ist neutrales Element für ∧
Ausgeschlossenes Drittes
Nachteile:
Transformationen müssen geraten werden.
Wenn ϕ nicht gezeigt werden kann, folgt nicht, dass ϕ nicht gültig ist.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
101 / 217
Beweis der Gültigkeit: Wahrheitstabelle
Beispiel (Reductio ad Absurdum)
A B
0 0
0 1
1 0
1 1
C := A → B
1
1
0
1
D := A → ¬B
1
1
1
0
C ∧ D ¬A
1
1
1
1
0
0
0
0
C ∧ D → ¬A
1
1
1
1
Nachteile:
ineffizient, besonders bei vielen Variablen
(„exponentielle Komplexität“)
redundant, da viele Varianten keinen Einfluss auf das Ergebnis haben
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
102 / 217
Übung: Schlussfolgerungsverfahren
Zeigen Sie, dass die Formel ϕ eine Tautologie ist:
ϕ = A ∧ B → C ↔ A → (B → C )
Verwenden Sie
a) Äquivalenzumformungen,
b) eine Wahrheitstabelle.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
103 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Resolution
Tableaus
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
104 / 217
Resolution
John Alan Robinson: A machine-oriented logic
based on the resolution principle (1965)
Erfüllbarkeitstest für Formel ϕ
Erfüllbarkeitstest entscheidet auch
Gültigkeit
|= ϕ gilt gdw. ¬ϕ unerfüllbar ist.
(logische) Implikation
ϕ |= ψ gilt gdw. ϕ ∧ ¬ψ unerfüllbar ist.
Jan Hladik (DHBW Stuttgart)
Logik
J. A. Robinson
(1930–2016)
Wintersemester 2016/17
105 / 217
Resolutionsprinzip
Finde Widerspruch in ϕ
betrachte ϕ als Menge von Disjunktionen (Klauseln)
suche Paare von Klauseln C1 , C2 mit gegensätzlichen Literalen L, ¬L
erzeuge Resolvente C3 durch Vereinigen der Elternklauseln C1 und C2
und Entfernen von L und ¬L
C3 ist nicht äquivalent zu C1 ∧ C2 !
C1 ∧ C2 erfüllbar ; C3 erfüllbar
C3 unerfüllbar ; C1 ∧ C2 unerfüllbar
leere Klausel 2: Widerspruch
Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X )
X ∨Y
¬Y ∨ Z
¬Z
¬X
X ∨Z
X
2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
106 / 217
Literale
Definition (Literal)
Ein Literal ist eine (möglicherweise negierte) Aussagenvariable.
Beispiel
Für die Variablenmenge {A, B} ist die Menge der möglichen Literale
{A, ¬A, B, ¬B}.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
107 / 217
Konjunktive Normalform
Definition (Konjunktive Normalform)
Eine aussagenlogische Formel ϕ ist in konjunktiver Normalform (KNF),
wenn ϕ eine Konjunktion von Disjunktionen von Literalen ist.
Beispiele
(X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ist in KNF;
(X ∧ Y ) ∨ ¬(¬Y ∨ Z ) ist nicht in KNF.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
108 / 217
Transformation in KNF
Satz
Jede aussagenlogische Formel kann in eine äquivalente Formel in KNF
transformiert werden.
Ziel: (L1 ∨ L2 ∨ L3 ) ∧ (L4 ∨ L5 ) ∧ L6 . . .
Methode:
1. eliminiere materiale Implikation
ϕ→ψ
1. und materiale Äquivalenz
ϕ↔ψ
2. Gesetze von De Morgan
¬(ϕ ∨ ψ)
3. eliminiere doppelte Negation
¬¬ϕ
4. Distributivgesetz
ϕ ∨ (ψ ∧ χ)
5. Assoziativgesetz
ϕ ∨ (ψ ∨ χ)
;
;
;
;
;
;
¬ϕ ∨ ψ
ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ
¬ϕ ∧ ¬ψ
ϕ
(ϕ ∨ ψ) ∧ (ϕ ∨ χ)
ϕ∨ψ∨χ
Beispiel
(X ∧ Y ) ∨ ¬(¬Y ∨ Z )
Jan Hladik (DHBW Stuttgart)
;
(X ∨ Y ) ∧ (Y ∨ Y ) ∧ (X ∨ ¬Z ) ∧ (Y ∨ ¬Z )
Logik
Wintersemester 2016/17
109 / 217
Übung: Konjunktive Normalform
Transformieren Sie die folgenden Formeln in KNF:
1
(X ∨ Y ) ∧ (A ∧ B)
2
(X ∨ Y ) → (A ∨ B)
3
X ∨ (¬A ∧ ¬(B ∧ ¬C ))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
110 / 217
Klauseln
Definition (Klausel)
Eine Klausel ist eine als Menge geschriebene Disjunktion von Literalen.
Aufgrund von Idempotenz und Kommutativität ist es möglich und sinnvoll,
Disjunktionen als Mengen zu betrachten.
Beispiel
(X ∨ ¬Y ∨ Z )
;
{X , ¬Y , Z }
Jede AL-Formel (in KNF) kann als Menge von Klauseln betrachtet werden.
Beispiel
ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X
K(ϕ) = {{X , Y }, {¬Y , Z }, {¬Z }, {¬X }}
Intuitiv: ∧ zwischen Mengen; ∨ zwischen Elementen der einzelnen Mengen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
111 / 217
Resolution von Klauseln
Gegeben: zwei Klauseln C1 = {X , Y } und C2 = {¬Y , Z }.
Gesucht: Modell für C1 ∧ C2 .
In einer Interpretation I ist Y I entweder 0 oder 1.
wenn Y I = 1 gilt, folgt C1I = 1, und C2I = 1 gilt gdw. Z I = 1;
wenn Y I = 0 gilt, folgt C2I = 1, und C1I = 1 gilt gdw. X I = 1.
Jedes Modell für C1 und C2 ist auch Modell für C3 = {X , Z }.
Wenn {C1 , C2 } erfüllbar ist, dann auch {C1 , C2 , C3 }.
Definition (Resolvente)
Seien C1 = {L1 , L2 , L3 , . . .} und C2 = {¬L1 , L6 , L7 , . . .} AL-Klauseln.
Dann ist C3 = {L2 , L3 , . . . , L6 , L7 , . . .} eine Resolvente von C1 und C2
({C1 , C2 } ` C3 ).
Kann eine Klausel C aus einer Klauselmenge S durch (mehrere)
Resolutionsschritte hergeleitet werden, schreiben wir S `∗ C .
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
112 / 217
Übung: Resolution
Finden Sie für die Klauselmenge S möglichst viele Resolventen.
S = {{A, B, ¬C }, {B, C , D}, {¬D}, {¬A, D}, {¬B, ¬E}, {D, E}}
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
113 / 217
Erfüllbarkeitstest mit Resolution
Sei S ` C .
Jedes Modell für S ist auch Modell für C .
Ist S erfüllbar, dann auch S ∪ {C }.
Umgekehrt: Ist S ∪ {C } unerfüllbar, dann auch S.
Die leere Klausel 2 ist unerfüllbar.
Satz (Korrektheit der Resolution)
Sei S eine Klauselmenge.
Wenn 2 aus S durch Resolution hergeleitet werden kann, ist S unerfüllbar.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
114 / 217
Resolutions-Algorithmus für Aussagenlogik
Eingabe:
Ausgabe:
1:
2:
3:
4:
5:
6:
7:
8:
AL-Formel ϕ
„erfüllbar“ or „unerfüllbar“
transformiere ϕ in KNF
initialisiere S mit Disjunktionen von ϕ
while es existiert C3 = res(C1 , C2 ) mit C3 ∈
/ S do
if C3 = 2 then
Ausgabe „unerfüllbar“
else
S := S ∪ {C3 }
Ausgabe „erfüllbar“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
115 / 217
Eigenschaften des Resolutions-Algorithmus
Satz (Korrektheit)
Aus K(ϕ) `∗ C folgt ϕ |= C .
Satz (Widerlegungsvollständigkeit)
Ist ϕ unerfüllbar, gilt K(ϕ) `∗ 2.
Satz (Terminierung)
Der Resolutions-Algorithmus terminiert für jede Eingabe.
Beweis.
Neue Klauseln enthalten nur Literale der Eingabe.
(Endliches Vokabular)
Nur neue Klauseln werden hinzugefügt.
Klauseln werden nie entfernt.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
116 / 217
Resolution und Nichtdeterminismus
Wenn mehrere Resolventen möglich sind:
terminiert der Algorithmus für jede Variante
. . . aber manche Varianten sind schneller als andere.
Definition (Don’t-care-Nichtdeterminismus)
Ein Algorithmus heißt don’t-care-nichtdeterministisch, wenn jede von
mehreren möglichen nichtdeterministischen Entscheidungen zum korrekten
Ergebnis führt.
In don’t-care-nichtdeterministischen Algorithmen müssen einmal getroffene
Entscheidungen nie rückgängig gemacht werden (Backtracking).
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
117 / 217
Übersetzung natürlicher Sprache in Aussagenlogik
1
Wenn Hans zum Meeting eingeladen wird und nicht auf Dienstreise
ist, nimmt er am Meeting teil.
¬R ∧ E → M ; R ∨ ¬E ∨ M
3
Wenn der Chef Hans beim Meeting sehen will, lädt er ihn auch ein.
C → E ; ¬C ∨ E
4
Wenn der Chef Hans nicht beim Meeting sehen will, wird Hans bald
gekündigt.
¬C → K ; C ∨ K
Hans hat nicht am Meeting teilgenommen.
¬M
5
Hans ist nicht auf einer Dienstreise.
¬R
6
Konklusion: Hans wird bald gekündigt.
2
Jan Hladik (DHBW Stuttgart)
Logik
K
Wintersemester 2016/17
118 / 217
Logische Implikation und Erfüllbarkeit
Implizieren die Prämissen 1–5 die Konklusion 6?
Logisch: Ist jedes Modell von 1–5 auch ein Modell von 6?
{1, 2, 3, 4, 5} |= 6?
Umgekehrt: Existiert ein Modell von 1–5, im dem 6 nicht gilt?
Logisch: Ist {1, 2, 3, 4, 5, ¬6} erfüllbar?
Wenn ja, gilt die Implikation nicht.
Ist {1, 2, 3, 4, 5, ¬6} unerfüllbar, gilt die Implikation.
Teste mittels Resolution die Erfüllbarkeit von
{{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }}
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
119 / 217
Bestimmung des Schicksals von Hans durch Resolution
{{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }}
R, ¬E, M
¬C , E
¬M
R, ¬E
C, K
E, K
R, K
¬R
¬K
K
2
Die Folgerung gilt, d. h. Hans wird leider entlassen. . .
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
120 / 217
1 (R, ¬E, M )
2 (¬C , E)
3 (C , K )
4 (¬M )
5 (¬R)
6 (K )
Test mit Wahrheitstabelle
1
1
1
1
0
1
..
.
1
1
1
1
0
1
0
1
1
0
..
.
0
0
0
0
..
.
1
1
1
1
0
0
1
0
R
0
0
E
0
0
M
0
0
..
.
C
0
0
K
0
1
1
0
1
..
.
0
1
1
1
1
1 ∧ . . . ∧ 5 ∧ ¬6
0
0
..
.
Die einzige Interpretation, die die Klauseln 1–5 wahr macht (Zeile 2),
macht auch Klausel 6 wahr.
Die letzte Spalte ist immer 0.
Die Konklusion folgt aus den Prämissen.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
121 / 217
Übung: Resolutions-Algorithmus
Für einen Juwelenraub gibt es drei Verdächtige: Anna, Bert und Claus.
Über sie ist das Folgende bekannt:
1
Mindestens einer der Verdächtigen ist schuldig.
2
Wenn Anna schuldig ist, hatte sie genau einen Komplizen.
3
Wenn Bert unschuldig ist, dann auch Claus.
4
Wenn genau zwei Verdächtige schuldig sind, ist Claus einer von ihnen.
5
Wenn Claus unschuldig ist, ist Anna schuldig.
6
Konklusion: Bert und Claus sind schuldig.
Formalisieren Sie die Aussagen in Aussagenlogik, transformieren Sie die
sich ergebende Formel in KNF, und testen Sie die Gültigkeit der
Implikation mit Hilfe des Resolutionsalgorithmus.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
122 / 217
Optimierung des Resolutionsverfahrens
Auswahl der Elternklauseln ist entscheidend für Effizienz
Heuristiken:
Priorisiere kleine Klauseln
Priorisiere Klauseln mit hoher Ableitungstiefe ; Depth-first-Suche
Ignoriere Tautologien {X , ¬X , . . .}
Ignoriere C1 , wenn ein C2 ⊆ C1 existiert
Resolviere mehr als zwei Klauseln (Hyperresolution)
Einschränkung auf Spezialfälle, z. B. Horn-Formeln
Horn-Formel: Höchstens ein positives Literal
X ∧ Y ∧ Z ... → W
nützlich für Formalisierung von Regeln (Prolog)
Polynomielle Laufzeit
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
123 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Resolution
Tableaus
4
Prädikatenlogik
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
124 / 217
Tableau-Algorithmen
Erfüllbarkeitstest für aussagenlogische Formeln
Evert Willem Beth: Semantic entailment and
formal derivability (1955)
E. W. Beth
(1908–1964)
Anderer Ansatz für Erfüllbarkeitstest
Resolution: suche einen Widerspruch
Tableau: suche ein Modell
erzeugt Tabellen-artige Struktur, bei der Spalten
aufgeteilt werden ; „Tableau“
andere Sichtweise: Baumstruktur
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
125 / 217
Merkmale von Tableau-Algorithmen
Beginne mit der Ausgangsformel χ und einer Spalte
Regeln brechen komplexe Formeln auf einfachere herunter
„Wenn ϕ ∧ ψ vorhanden ist, aber nicht ϕ und ψ, füge ϕ und ψ hinzu.“
Bei mehreren Möglichkeiten: Teile Spalte auf
Clash beschreibt Situation, in denen ein Widerspruch vorliegt
„ϕ und ¬ϕ sind vorhanden.“
Clashes gibt es zwischen Formeln in der aktuellen Spalte und den
darüberliegenden
Ergebnis:
Wenn jede Spalte einen Clash enthält, gibt es kein Modell
; χ ist unerfüllbar
Wenn keine Regel mehr anwendbar ist (Tableau ist vollständig) und
mindestens eine Spalte Clash-frei ist, gibt es ein Modell
; χ ist erfüllbar
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
126 / 217
Tableau-Algorithmen: Regeln
Vorbedingung „Wenn ϕ ∧ ψ vorhanden ist. . . “
Welche Formel ist zu verarbeiten?
Anwendbarkeitsbedingung „. . . aber nicht ϕ und ψ, . . . “
Wann ist Regel nicht mehr anwendbar?
(; Terminierung)
bezieht sich auf aktuelle Spalte und
darüberliegende
Nachbedingung „. . . füge ϕ und ψ hinzu.“
Wie ist Formel zu verarbeiten?
Regeln können nicht-deterministisch sein:
„Wenn ϕ ∨ ψ enthalten ist. . . , füge ϕ oder ψ hinzu“
Teile aktuelle Spalte, teste ϕ in einer Spalte, ψ in der anderen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
127 / 217
Tableau-Regeln und Negations-Normalform
Definition (Negations-Normalform)
Eine aussagenlogische Formel ist in Negations-Normalform (NNF) wenn als
binäre Junktoren nur ∧ und ∨ enthalten sind und Negation nur direkt vor
Aussagevariablen vorkommt.
Satz
Jede AL-Formel kann in NNF transformiert werden.
Beweis.
Verfahren:
1
Elimination von → und ↔
2
Anwendung der Gesetze von De Morgan
3
Entfernung doppelter Negation
(Wie für KNF.)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
128 / 217
Tableau-Regeln für Aussagenlogik
∧-Regel Wenn ϕ ∧ ψ ∈ S
und {ϕ, ψ} * S
dann S := S ∪ {ϕ, ψ}
∨-Regel Wenn ϕ ∨ ψ ∈ S
und {ϕ, ψ} ∩ S = ∅
dann S := S ∪ {ϕ} oder S := S ∪ {ψ}
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
129 / 217
Tableau-Algorithmus für Aussagenlogik
Eingabe:
Ausgabe:
1:
2:
3:
4:
5:
6:
7:
8:
AL-Formel ϕ
„erfüllbar“ oder „unerfüllbar“
ϕ0 = nnf(ϕ)
initialisiere S mit {ϕ0 }
while eine Regel R ist auf ein ψ ∈ S anwendbar do
wende R auf ψ an
if jede Spalte enthält einen Clash then
Ausgabe „unerfüllbar“
else
Ausgabe „erfüllbar“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
130 / 217
Beispiel: Bestimmung des Schicksals von Hans mit Tableau
Prämissen: (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R
Konklusion: K
Zeile
1
2
3
4
5
6
7
8
9
10
(R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R ∧ ¬K
R ∨ ¬E ∨ M
¬C ∨ E
C ∨K
¬M
¬R
¬K
C
K 7
¬C 8
E
R 6 ¬E 9 M 5
Jede Spalte enthält einen Clash
; Formel 1 ∧ 2 ∧ 3 ∧ 4 ∧ 5 ∧ ¬6 ist unerfüllbar
; Prämissen 1–5 implizieren die Konklusion 6
Jan Hladik (DHBW Stuttgart)
Logik
Regel
Eingabe
1: ∧
4: ∨
3: ∨
2: ∨
Wintersemester 2016/17
131 / 217
Durchführung des Tableau-Algorithmus
Vorrang beachten: Formeln von „außen“ nach „innen“ abarbeiten
Clash: nur zwischen aktueller Spalte und den darüberliegenden
Spalte steht logisch für Menge aller Formeln, die in ihr und den
darüberliegenden Spalten enthalten sind
Effizienz: Wenn mehrere Regeln anwendbar sind: ∧-Regel zuerst
sonst: ∧-Regel in jeder neuen Spalte anwendbar ; Ineffizienz
Beispiel: {A ∧ B, ¬C ∧ ¬D, ¬A ∨ ¬B ∨ C ∨ D}
Transformation von NNF in KNF ist kontraproduktiv
nach erstem Schritt wird nur ∨-Regel angewendet ; Ineffizienz
Beispiel: vergleiche NNF ¬A ∨ B ∧ ¬C ∨ ¬B ∧ C (3 Spalten)
mit KNF (¬A ∨ B ∨ C ) ∧ (¬A ∨ ¬B ∨ ¬C ) (7 Spalten)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
132 / 217
Übung: Tableau-Algorithmus
Zeigen Sie mit einem Tableau, dass Bert und Claus schuldig sind.
(A ∨ B ∨ C ) ∧ (¬A ∨ (B ∧ ¬C ) ∨ (¬B ∧ C )) ∧
(B ∨ ¬C ) ∧ (¬A ∨ ¬B ∨ C ) ∧ (C ∨ A) ∧ (¬B ∨ ¬C )
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
133 / 217
Korrektheit des Tableau-Algorithmus
Satz (Korrektheit)
Wenn das vollständige Tableau für ϕ eine Clash-freie Spalte enthält, ist ϕ
erfüllbar.
Beweis.
Idee: Literale der Clash-freien Spalte bilden Modell M.
Wenn X ∈ S, dann X M = 1; sonst X M = 0
Clash-frei: für keine Variable X ist X und ¬X enthalten
Vollständig:
für jede Konjunktion χ ∧ ψ ∈ S gilt auch {χ, ψ} ⊆ S
für jede Disjunktion χ ∨ ψ ∈ S gilt auch {χ, ψ} ∩ S 6= ∅
Induktion: Für jedes ψ ∈ S gilt: M |= ψ
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
134 / 217
Vollständigkeit des Tableau-Algorithmus
Satz (Vollständigkeit)
Wenn ϕ erfüllbar ist, enthält das vollständige Tableau für ϕ eine
Clash-freie Spalte.
Beweis.
Idee: „Regelanwendung erhält Erfüllbarkeit.“
Wenn eine Formelmenge S vor Regelanwendung erfüllbar war, kann die
Regel so angewendet werden, dass S auch nach der Anwendung noch
erfüllbar ist.
∧-Regel Wenn M |= ψ ∧ χ gilt, gilt auch M |= ψ und M |= χ.
∨-Regel Wenn M |= ψ ∨ χ gilt, gilt auch M |= ψ oder M |= χ.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
135 / 217
Teilformeln
Definition (Teilformel)
Sei ϕ eine aussagenlogische Formel.
Die Formel ψ ist Teilformel von ϕ, wenn eine der folgenden Bedingungen
erfüllt ist:
ϕ=ψ
ϕ = ¬χ und ψ ist Teilformel von χ
ϕ = χ1 ◦ χ2 und ψ ist Teilformel von χ1 oder χ2
(mit ◦ ∈ {∧, ∨, →, ↔})
Beispiel (ϕ = A ∧ ¬(B ∨ ¬A) ∨ (A → ¬C ))
Die Menge der Teilformeln von ϕ ist
{ϕ, A ∧ ¬(B ∨ ¬A), A → ¬C , A, ¬(B ∨ ¬A), B ∨ ¬A, B, ¬A, ¬C , C }.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
136 / 217
Terminierung des Tableau-Algorithmus
Satz (Terminierung)
Der Tableau-Algorithmus terminiert für jede Formel ϕ nach endlich vielen
Schritten.
Beweis.
Es gibt nur endlich viele Teilformeln von ϕ (endliches Vokabular).
Jede Regelanwendung fügt nur Teilformeln zu Formelmenge hinzu.
Auf jede Teilformel wird in jeder Spalte höchstens einmal eine Regel
angewendet.
Die Anzahl der Spalten ist beschränkt durch die Anzahl der
Disjunktionen in ϕ.
Formeln werden nie entfernt.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
137 / 217
Tableaus und Nichtdeterminismus
sind mehrere Regeln anwendbar, ist die Auswahl der nächsten Regel
don’t-care-nichtdeterministisch
Jede Auswahl führt zur Lösung
die Auswahl der Alternative durch die ∨-Regel ist
don’t-know-nichtdeterministisch
Finden der Lösung kann von „richtiger“ Alternative abhängen
Jede Alternative muss getestet werden
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
138 / 217
Tableaus in der Praxis
Anzahl der Spalten kann exponentiell in der Größe von ϕ sein
Beispiel: ϕ = (A ∨ B) ∧ (C ∨ D) ∧ (E ∨ F )
Für Zeit- und Platz-Effizienz: Erzeuge Tableau depth-first
Halte nur eine Spalte gleichzeitig im Speicher
Wende dort alle möglichen Regeln an
Spalte ist Clash-frei und vollständig: Ausgabe „erfüllbar“
Spalte enthält Clash: Versuche nächste Spalte (oder Ausgabe
„unerfüllbar“)
Overhead: Backtracking-Information for jede Anwendung der ∨-Regel
aus Effizienzgründen auch hier zuerst ∧-Regel anwenden
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
139 / 217
Vergleich: Tableaus und Resolution
Gemeinsamkeiten
Erfüllbarkeitstests
Können auch Gültigkeit und Implikation testen
Entscheidungsverfahren
Effizienter als Wahrheitstabelle
Vorteile von Tableaus
Effizient für erfüllbare Eingaben
Erzeugt Modell für erfüllbare Eingaben
Vorteile der Resolution
Effizient für unerfüllbare Eingaben
Gesamtes Verfahren ist don’t-care-nichtdeterministisch
(kein Backtracking)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
140 / 217
Zusammenfassung: Aussagenlogik
Aussagenvariable repräsentiert Elementaraussage
kann wahr oder falsch sein
Junktoren verbinden Aussagenvariablen zu komplexen Formeln
Auswertung über Wahrheitstabelle
Interpretation belegt Variablen mit 0 oder 1
macht Formel wahr oder falsch
Modell macht Formel wahr
Erfüllbar es gibt ein Modell
Gültig jede Interpretation ist Modell (Tautologie)
Schlussfolgerung Erfüllbarkeit, Gültigkeit, Implikation
entscheidbar (korrekt, vollständig, terminierend)
Resolution sucht Widerspruch
KNF, Klausel, Resolvente
Tableau sucht Modell
NNF, Regel, Clash
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
141 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
142 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
143 / 217
Grenzen der Aussagenlogik
AL kann Aussagen nur als Ganzes beschreiben
Aussagenvariablen können nur wahr oder falsch sein
Innere Struktur der Aussagen kann nicht repräsentiert werden
Beispiele
Innere Struktur von Aussagen
„Anna kennt Bert und Anna kennt Claus.“ ; A ∧ B
„Anna kennt Bert und Anna mag Bert.“
; A∧B
„Anna kennt Bert und Claus kennt Bert.“ ; A ∧ B
Schlussfolgerung
„Kein Pinguin kann fliegen.“
; ¬(P ∧ F ) ?
„Alle Pinguine sind Vögel.“
; P→V
Konklusion: „Manche Vögel können nicht fliegen.“ ; V → ¬F ?
Formalisierung fehlerhaft (keine Elementaraussagen)
Konklusion folgt nicht aus Prämissen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
144 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
145 / 217
Prädikatenlogik erster Stufe: Syntax
Konstruktor
Variablen
Konstantensymbole
Funktionssymbole
Prädikate
Quantoren
Junktoren
Notation
x, y
a, b, c
f (x), h(x, y)
R(x), S(x, y)
∀xP(x),
∃yS(x, y)
∧, ∨, ¬,
→, ↔
Jan Hladik (DHBW Stuttgart)
reale Welt
(Menschen)
calvin, hobbes,
mom, dad
mutter(calvin),
ehepartner(mom)
Sohn(mom,calvin),
Freund(calvin,hobbes)
∀x(Freund(x, hobbes))
∃x(Freund(calvin, x))
Logik
Mathematik
(Zahlen)
1, 2, π
√
x + y, x,
logb x
x > y, x = y,
Prim(x)
∀x(x ≥ 0)
∃x(x + x = 2)
Wintersemester 2016/17
146 / 217
Erinnerung: Stelligkeit von Funktionssymbolen
Ein n-stelliges Funktionssymbol hat genau n Argumente
+ und log sind zweistellig (binär) (x + y, logb x)
√
√
ist einstellig (unär) ( x)
mutter() und ehepartner() sind einstellig
nullstellige Funktionssymbole sind Konstantensymbole
Notation (falls notwendig): f (n)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
147 / 217
Terme
Aus Variablen und Funktionssymbolen (einschließlich Konstantensymbolen)
sind Terme zusammengesetzt.
Definition (Term)
Terme sind wie folgt induktiv definiert:
Jede Variable ist ein Term.
Wenn f ein n-stelliges Funktionssymbol ist und t1 , . . . , tn Terme sind,
ist auch f (t1 , . . . , tn ) ein Term.
Terme, die keine Variablen enthalten, heißen auch Grundterme.
Beachte:
Jede Konstante ist ein Term.
Terme bezeichnen Elemente der Domäne.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
148 / 217
Beispiele: Terme
Variablen: {x, y}
Funktionssymbole: {c (0) , d (0) , f (1) , +(2) }
Beispiele (Grundterme)
Beispiele (Terme, keine Grundterme)
c
x
f (f (d))
f (y)
c + f (c) oder +(c, f (c))
c + f (y)
+(c, +(d, +(f (c), f (d))))
+(c, +(y, +(f (x), f (y))))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
149 / 217
Stelligkeit von Prädikaten
Prädikate sind Relationssymbole.
Ein n-stelliges Prädikat hat genau n Terme als Argumente.
Keine Prädikate in Prädikaten!
> ist zweistellig (x > y)
Prim() is einstellig (Prim(x)).
Sohn() und Freund() sind zweistellig.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
150 / 217
Atome
Aus Prädikaten und Termen sind Atome zusammengesetzt.
Definition (Atom)
Atome wie folgt definiert:
Wenn R ein n-stelliges Prädikat ist und t1 , . . . , tn Terme sind, ist
R(t1 , . . . , tn ) ein Atom.
Atome, die keine Variablen enthalten, heißen auch Grundatome.
Jedes nullstellige Prädikat ist ein Atom.
Nullstellige Prädikate sind Aussagenvariablen.
Atome repräsentieren Elementaraussagen (sind wahr oder falsch).
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
151 / 217
Beispiele: Atome
Prädikate: {A(0) , P (1) , >(2) }
Beispiele (Grundatome)
Beispiele (Atome, keine Grundatome)
P(c)
x>y
c > f (c) oder > (c, f (c))
f (y) > c + f (x)
c>c
P(f (c + y))
P(c + f (c))
A
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
152 / 217
Formeln
Aus Atomen, Quantoren und Junktoren sind (komplexe) Formeln
zusammengesetzt.
Definition (Formel)
Formeln sind wie folgt induktiv definiert:
Jedes Atom ist eine Formel.
Wenn ϕ und ψ Formeln sind und x eine Variable ist, sind die
folgenden Ausdrücke auch Formeln:
¬ϕ, >, ⊥
ϕ ∧ ψ, ϕ ∨ ψ, ϕ → ψ, ϕ ↔ ψ
∀xϕ, ∃xϕ
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
153 / 217
Freie und gebundene Variablen
Allquantor ∀: ∀xϕ
Existenzquantor ∃: ∃xϕ
Variablen in ϕ werden durch den Quantor gebunden.
Definition (frei, gebunden)
Kommt eine Variable x in einer Formel ϕ vor, vor der ein Quantor ∀x oder
∃x steht, heißt x gebunden. Eine nicht gebundene Variable heißt frei.
Eine Formel mit freien Variablen heißt offen.
Eine Formel ohne freie Variablen heißt geschlossen (oder auch Satz).
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
154 / 217
Beispiel: Formeln
Beispiele (Offene Formeln)
Beispiele (Sätze)
P(x)
∀xx > c
f (y) > c + f (x)
∀x∀y(x > y ∨ y > x ∨ x = y)
P(y) ∨ x > c
∃xP(x)
x > y → ¬∀x(x > y)
∃x(P(x) ∨ x > d)
∀xP(x) ∨ x > c
∃x(P(x) → ∀y(y + c > x))
Jan Hladik (DHBW Stuttgart)
(!)
Logik
Wintersemester 2016/17
155 / 217
Vorrang der Operatoren
f
P
∀, ∃
¬
∧
∨
→
↔
Quantoren binden stärker als alle Junktoren
∀xR(x, y) ∧ S(x) bedeutet (∀xR(x, y)) ∧ S(x)
∃xR(x, y) → S(y) bedeutet (∃xR(x, y)) → S(y)
Funktionssymbole und Prädikate binden stärker als Quantoren
∀x∀yx + y = y + x bedeutet ∀x∀y(x + y = y + x)
Sonst wäre es auch keine Formel: (∀x∀yx) + y = y + x
Klarer in Präfix-Notation: ∀x∀y = (+(x, y), +(y, x))
Funktionssymbole binden stärker als Prädikate
x + y > c + d bedeutet (x + y) > (c + d)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
156 / 217
Übung: Syntax der Prädikatenlogik
Gegeben seien die Funktionssymbole +(2) , f (1) , c (0) und d (0) sowie die
Prädikate =(2) , >(2) und P (1) .
Entscheiden Sie, in welche Kategorien die folgenden Zeichenketten fallen:
(Grund-) Term
Formel
Unsinn
(Grund-) Atom
Satz
Entscheiden Sie, ob die Variablenvorkommen gebunden oder frei sind.
a) x + y
i) P(∀x(x = x))
b) x + y > c
j) x > y ∧ x + y
c) P(c, d)
k) ∀x(x > c ∨ c > x) ∨ x = c
d) x > P(d)
l) c > f (d)
e) ∀x(x + c > x)
m) P(P(x))
f) ∀x > (+(x, c), x)
n) f (f (x))
g) ∀x, y(x > y)
o) ∀x∀y(P(x) > P(y))
h) ∃x∃y(x + y)
Jan Hladik (DHBW Stuttgart)
p) ∃xP(x) → ∀xP(x)
Logik
Wintersemester 2016/17
157 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
158 / 217
Semantik in der Prädikatenlogik: Interpretationen
Erinnerung: Interpretation in der Aussagenlogik
weist Aussagenvariablen Wert 1 oder 0 zu
macht Formel wahr oder falsch
Interpretation in der Prädikatenlogik
bestimmt das Universum (auch Domäne genannt)
weist jedem n-stelligen Funktionssymbol f eine n-stellige Funktion f I
über dem Universum zu
weist jedem n-stelligen Prädikat R eine n-stellige Relation RI über
dem Universum zu
macht Formel wahr oder falsch
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
159 / 217
Interpretation 1
ϕ = ∀xR(x, f (x))
Beispiel (Interpretation I mit Menschen als Domäne)
Universum ∆I : M = {Anna,Bob,Clara,Dirk}
Funktion f I : ehepartnerM = {Anna 7→ Bob, Bob 7→ Anna,
Clara 7→ Dirk, Dirk 7→ Clara}
Relation RI : MagM = {(Anna,Bob), (Anna,Clara), (Bob,Anna),
(Bob,Dirk), (Clara,Dirk), (Dirk,Anna), (Dirk,Bob)}
I macht ϕ falsch (weil Dirk Clara nicht mag)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
160 / 217
Interpretation 2
ϕ = ∀xR(x, f (x))
Beispiel (Interpretation J mit Zahlen als Domäne)
Universum ∆J : N = {0, 1, 2, . . .}
Funktion f J : s N (Nachfolger) = {0 7→ 1, 1 7→ 2, . . .}
Relation RJ : <N (kleiner als) = {(0, 1), (0, 2), . . . , (1, 2), (1, 3), . . .}
J macht ϕ wahr (weil jede Zahl kleiner ist als ihr Nachfolger)
Wahrheitswert hängt von der Interpretation ab
der Interpretation der Funktionssymbole und Prädikate
0
Wenn J 0 R als >N interpretiert, ist ϕJ falsch
dem Universum
∀x∃y(y < x) ist wahr in Z, aber falsch in N.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
161 / 217
Übung: Interpretationen
Sei
ϕ = ∀x∀y((¬(x = y) ∧ R(x, y)) → ∃z((¬(z = x)) ∧ (¬(z = y)) ∧ P(z)))
und I wie folgt:
∆I ist die Menge aller Menschen;
RI = streiten;
P I = sich freuen.
Was ist die Aussage von ϕI ?
Sei ψ = ∀x∃yf (x, y) = c und J wie folgt:
∆J = Z;
f J = +Z , d. h. Addition für Ganzzahlen;
c J = 0Z , d. h. Null (als Element der Ganzzahlen).
Was ist die Aussage von ψ J ?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
162 / 217
Interpretation freier Variablen
Wie werden freie Variablen interpretiert?
Jede freie Variable wird von I auf ein Element der Domäne abgebildet
Ähnlich Variablenzuweisung in Aussagenlogik
Jede Aussagenvariable wird auf ein Element von B abgebildet
In der Praxis interessieren wir uns meistens für Sätze.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
163 / 217
Interpretation: Formale Definition
Definition (Interpretation in der Prädikatenlogik)
Für eine Formel ϕ mit Funktionssymbolen F , Prädikaten P und freien
Variablen V ist eine Interpretation I ein Tripel (∆I , ·I , µ) mit
∆I ist eine nichtleere Menge,
·I weist
jedem n-stelligen f ∈ F eine n-stellige Funktion f I über ∆I zu,
jedem n-stelligen R ∈ P eine n-stellige Relation RI über ∆I zu.
µ : V → ∆I weist jedem x ∈ V ein Element x I ∈ ∆I zu.
Domäne darf nicht leer sein.
Nullstellige Funktionssymbole (Konstantensymbole) werden auf
Elemente der Domäne abgebildet.
Nullstellige Prädikate werden auf {2} oder ∅ abgebildet.
Aussagenvariablen: {2} ; 1; ∅ ; 0
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
164 / 217
Interpretation komplexer Formeln
Der Wahrheitswert komplexer Formeln wird rekursiv bestimmt:
Für einen komplexen Term t = f (t1 , . . . , tn ), t I werden
mögliche freie Variablen x, y, . . . durch µ(x), µ(y), . . . ersetzt;
die Terme t1 , . . . , tn rekursiv ausgewertet als t1I , . . . , tnI ;
die Funktion f I für diese Ergebnisse ausgewertet
t I = f I ((µ(t1 ))I , . . . , (µ(tn ))I ).
Für ein Atom ϕ = P(t1 , . . . , tn ) werden
die Terme t1 , . . . , tn rekursiv ausgewertet;
geprüft, ob das sich ergebende Tupel in P I enthalten ist.
Für gebundene Variablen ∀xϕ(x)/∃xϕ(x) wird geprüft, ob ϕ(x) für
alle/ein Element der Domäne wahr ist.
Formeln mit Junktoren werden wie in der Aussagenlogik ausgewertet.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
165 / 217
Beispiel: Interpretation komplexer Formeln
ϕ = ¬P(x) ∧ ∃yR(c, f (y))
∆I
µ
= N
= {x →
7 4N }
Bestimmung von ϕI :
µ auswerten
Funktionssymbole
Prädikate
Quantor: Wähle y = 20N
Funktion auswerten
Relationen auswerten
Junktoren auswerten
Jan Hladik (DHBW Stuttgart)
PI
RI
= PrimN
= ≤N
fI
cI
= nachfolgerN
= 17N
¬P I (4N ) ∧ ∃yRI (c I , f I (y))
¬P I (4N ) ∧ ∃yRI (17N , nachfolgerN (y))
¬PrimN (4N ) ∧ ∃y ≤N (17N , nachfolgerN (y))
¬PrimN (4N ) ∧ ≤N (17N , nachfolgerN (20N ))
¬PrimN (4N ) ∧ ≤N (17N , 21N )
¬0B ∧ 1B
1B
Logik
Wintersemester 2016/17
166 / 217
Modelle in der Prädikatenlogik
Definition (Modell)
Eine Interpretation I = (∆I , ·I , µ) erfüllt eine Formel ϕ (ist ein Modell für
ϕ, I |= ϕ), wenn
ϕ = P(t1 , . . . , tn ) ein Atom ist und ((µ(t1 ))I , . . . , (µ(tn ))I ) ∈ P I gilt;
ϕ = ∀xψ(x) gilt und für jedes x ∈ ∆I ψ(x) gilt;
ϕ = ∃xψ(x) gilt und für ein x ∈ ∆I ψ(x) gilt;
ϕ einen Junktor enthält (z. B., ϕ = ¬ϕ1 , ϕ = ϕ1 ∧ ϕ2 ) und
entsprechend der Wahrheitstabelle als wahr ausgewertet wird.
Definition (Logische Implikation)
Eine Formelmenge Φ impliziert logisch eine Formel ϕ (Φ |= ϕ), wenn jedes
Modell von Φ auch Modell von ϕ ist.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
167 / 217
Übung: Interpretationen
Finden Sie für jeden der folgenden Sätze eine Interpretation, in der er wahr
ist, und eine Interpretation, in der er falsch ist.
a) ∀x∀y(R(x, y) → ∃z(R(x, z) ∧ R(z, y)))
b) ¬∃x(f (x) = c)
c) ∀x∀y(f (x) = f (y) → x = y)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
168 / 217
Prädikatenlogik in der Algebra
Beispiel (Körperaxiome)
Abschluss unter Addition
Assoziativität der Addition
Kommutativität der Addition
Neutrales Element der Addition
Inverses Element der Addition
(analog für Multiplikation)
Distributivität
Jan Hladik (DHBW Stuttgart)
∀x∀y∃z(x + y = z)
∀x∀y∀z((x + (y + z)) = ((x + y) + z))
∀x∀y(x + y = y + x)
∀x(x + 0 = x)
∀x∃y(x + y = 0)
...
∀x∀y∀z(x · (y + z) = (x · y) + (x · z))
Logik
Wintersemester 2016/17
169 / 217
Warum „Prädikatenlogik erster Stufe“?
PL erster Stufe Quantifizierung von Elementen (∃xP(x))
PL zweiter Stufe Quantifizierung von Prädikaten (∃P∀xP(x))
PL dritter Stufe Quantifizierung von Prädikaten über Prädikaten
(∃R∀P(R(P)))
...
PL1 genügt zur Axiomatisierung der rationalen Zahlen (; Algebra)
PL2 ist notwendig für reelle Zahlen (; Analysis)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
170 / 217
Anwendung der PL zweiter Stufe
Definition (Dedekind-Vollständigkeit)
Eine Menge M ist Dedekind-vollständig, wenn
jede nach oben beschränkte nichtleere Teilmenge
S ⊆ M eine kleinste obere Schranke hat.
Beispiel (Irrationale Zahl
√
2)
S = {x | x · x ≤ 2}
√
Kleinste obere Schranke von S: 2
√
2∈
/ Q ; nicht Dedekind-vollständig
√
2 ∈ R ; Dedekind-vollständig
Jan Hladik (DHBW Stuttgart)
Logik
Richard Dedekind
(1831–1916)
Wintersemester 2016/17
171 / 217
Dedekind-Vollständigkeit in PL2
∀S
h[∃xS(x) ∧ ∃x∀y(S(y) → y < x)] →
∃x[∀y(S(y) → y ≤ x) ∧ ∀z(z < x → ∃t(z < t ∧ S(t)))]i
„Für jede Menge S gilt: Wenn S mindestens ein Element enthält
und ein x existiert, das größer ist als alle Elemente y von S,
dann existiert auch ein x, das größer oder gleich jedem Element y von S ist
und für jedes z, das kleiner ist als dieses x,
gibt es ein t, das größer als z und in S enthalten ist.“
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
172 / 217
Übersetzung natürlicher Sprache in PL
In PL kann man mehr ausdrücken
als in AL . . .
. . . aber: Schlussfolgern in PL ist
schwieriger als in AL.
Beispiel (Pinguine)
Kein Pinguin kann fliegen.
∀x(P(x) → ¬F (x))
Alle Pinguine sind Vögel.
∀x(P(x) → V (x))
Manche Vögel können nicht
fliegen.
∃x(V (x) ∧ ¬F (x))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
173 / 217
Übung: Formalisierung in PL
Formalisieren Sie die folgenden Sätze in Prädikatenlogik.
Verwenden Sie hierzu
die einstelligen Prädikate Student, Professor, Vorlesung,
die zweistelligen Prädikate Mag, Betreut, Hält,
das zweistellige Prädikat = (für Gleichheit von Elementen).
a) Jeder Student mag (mindestens) einen Professor.
b) Jeder Professor mag alle Studenten.
c) Studenten werden nur von Professoren betreut.
d) Jeder Professor hält mindestens zwei Vorlesungen.
e) Jeder Professor betreut nur Studenten, die ihn mögen.
f) Es gibt eine Vorlesung, die nur von einem Professor gehalten wird.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
174 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Resolution
Tableaus
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
175 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Resolution
Tableaus
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
176 / 217
Resolution in der Prädikatenlogik
Wie kann das Resolutionsprinzip auf PL übertragen werden?
Beispiel (naive Resolution in PL)
∀x(H (x) → ∃yM (x, y))
H (c)
?
Probleme:
Interaktion von Quantoren:
∀xϕ(x), ∀x¬ϕ(x) vs. ∃xϕ(x), ∃x¬ϕ(x)
Interaktion von Variablen und Konstanten
Erzeugung von KNF in Formeln mit Quantoren
Ansatz:
Elimination des Existenz-Quantors
Ersetzung von Variablen durch Terme, um Atome gleich zu machen
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
177 / 217
Schritt 1: Negations-Normalform
Ähnlich wie in AL: Negation nur vor Atomen
1
Elimination von → und ↔
ϕ→ψ
ϕ↔ψ
2
3
¬ϕ ∨ ψ
(ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ)
;
;
Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für
Quantoren
¬(ϕ ∧ ψ) ; ¬ϕ ∨ ¬ψ
¬(ϕ ∨ ψ) ; ¬ϕ ∧ ¬ψ
¬∀xϕ ; ∃x¬ϕ
¬∃xϕ ; ∀x¬ϕ
Elimination doppelter Negation
¬¬ϕ
;
Jan Hladik (DHBW Stuttgart)
ϕ
Logik
Wintersemester 2016/17
178 / 217
Schritt 2: Pränex-Normalform
Definition (Pränex-Normalform)
Eine Formel ist in PNF, wenn sie die Gestalt Q1 x1 . . . Qn xn ϕ(x1 , . . . , xn )
hat, wobei die Teile der Formel wie folgt benannt werden:
Präfix Q1 x1 . . . Qn xn mit Qi ∈ {∀, ∃}
Matrix Quantoren-freie Formel ϕ mit Variablen x1 . . . xn .
Algorithmus zur Transformation in PNF:
1 benenne mehrfach quantifizierte Variablen um
2 ziehe Quantoren nach vorne (unter Beibehaltung der Reihenfolge)
Beispiel (PNF)
„Jeder Mensch hat Mutter und Vater.“
Transformiere in NNF
Ersetze zweites y durch z
Ziehe Quantoren nach vorne
Jan Hladik (DHBW Stuttgart)
Logik
∀x(H (x) → ∃yM (x, y) ∧ ∃yF (x, y))
∀x(¬H (x) ∨ ∃yM (x, y) ∧ ∃yF (x, y))
∀x(¬H (x) ∨ ∃yM (x, y) ∧ ∃zF (x, z))
∀x∃y∃z(¬H (x) ∨ M (x, y) ∧ F (x, z))
Wintersemester 2016/17
179 / 217
Schritt 3: Skolem-Normalform
Definition (Skolem-Normalform)
Eine prädikatenlogische Formel ϕ ist in
Skolem-Normalform (SNF), wenn sie in PNF ist und das
Präfix keine Existenzquantoren enthält.
Transformation in SNF:
Ersetze existentiell quantifizierte Variablen durch Terme
Thoralf Skolem
(1887–1963)
Beispiel (Skolemisierung)
„Es gibt einen Präsidenten.“
∃xP(x) ; P(c)
„Jeder Mensch hat eine Mutter.“
∀x∃y(H (x) → M (x, y)) ; ∀x(H (x) → M (x, f (x)))
Jan Hladik (DHBW Stuttgart)
Logik
c ist neu!
f ist neu!
Wintersemester 2016/17
180 / 217
Skolemisierungs-Algorithmus
Eingabe: Formel ϕ = ∀x1 . . . ∀xn ∃yψ(x1 , . . . , xn , y) in PNF
Ausgabe: Skolemisierte Formel snf(ϕ)
1 ersetze y durch durch ein neues n-stelliges Funktionssymbol f :
∀x1 . . . ∀xn ψ(x1 , . . . , xn , f (x1 , . . . , xn ))
2 fahre mit Existenzquantoren in ψ fort, bis alle existentiell
quantifizierten Variablen ersetzt sind
Beachte:
Bearbeite Existenzquantoren von vorne nach hinten
Das neue Funktionssymbol f heißt Skolem-Funktionssymbol
Existentiell quantifizierte Variablen, die nicht im Gültigkeitsbereich
eines Allquantors stehen, werden durch Konstanten ersetzt.
Optimierungspotential durch Umformung der Ausgangsformel
Eine Formel ϕ und ihre SNF sind nicht äquivalent, aber
erfüllbarkeitsäquivalent.
Alle verbleibenden Variablen sind universell quantifiziert
; ∀x wird nicht mehr benötigt.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
181 / 217
Übung: Skolem-Normalform
Transformieren Sie die folgenden Formeln in SNF:
a) ∀x(∃yR(x, y) ∧ ∃y¬R(x, y)) ∧ ∀xR(x, x) ∧ ∃y∃z¬R(y, z)
b) ∃x∀y(R(x, y)∨R(y, x))∧¬∀y¬(R(y, y)∧¬R(y, f (y)))∨¬(∀xR(x, x) →
∃xR(x, x))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
182 / 217
SNF: Optimierung
Problem: Transformationskette NNF ; PNF ; SNF vergrößert
Gültigkeitsbereich der Allquantoren:
Beispiel (unnötig komplexe Skolem-Funktion)
∀xP(x) ∧ ∃yQ(y) ; ∀x∃y(P(x) ∧ Q(y)) ; ∀x(P(x) ∧ Q(f (x)))
Da y nicht von x abhängt, könnte y durch eine Konstante ersetzt werden.
Standardverfahren:
1 Negations-Normalform
Elimination von → und ↔
de-Morgan-Gesetze
Elimination doppelter Negation
2
Variablenumbenennung
3
Pränex-Normalform
4
Skolem-Normalform
Jan Hladik (DHBW Stuttgart)
Logik
Komplexeres Verfahren für
einfachere
Skolem-Funktionen:
1
NNF
2
Miniscoping
3
Variablenumbenennung
4
Skolemisierung
Wintersemester 2016/17
183 / 217
Miniscoping
Ziel: Äquivalenzumformung zur Minimierung des Gültigkeitsbereichs
(scope) von Quantoren
Annahme: x kommt frei in ϕ und ψ vor, aber nicht in χ
Qx(ϕ ∧ χ)
Qx(ϕ ∨ χ)
∀x(ϕ ∧ ψ)
∃x(ϕ ∨ ψ)
;
Qxϕ ∧ χ
for Q ∈ {∀, ∃}
Qxϕ ∨ χ
for Q ∈ {∀, ∃}
;
∀xϕ ∧ ∀xψ
;
;
∃xϕ ∨ ∃xψ
Beispiel (Skolem-Funktionen mit Miniscoping)
Miniscoping:
∀x∃y(P(x) ∧ Q(y)) ; ∀x(P(x) ∧ ∃yQ(y))
Skolemisierung:
∀xP(x) ∧ ∃yQ(y) ; ∀xP(x) ∧ Q(c)
Jan Hladik (DHBW Stuttgart)
Logik
;
∀xP(x) ∧ ∃yQ(y)
Wintersemester 2016/17
184 / 217
Überblick: Vorverarbeitung für PL-Resolution
Standard:
Alternative:
1
Negations-Normalform
1
Negations-Normalform
2
Variablenumbenennung
2
Miniscoping
3
Pränex-Normalform
3
Variablenumbenennung
4
Skolem-Normalform
4
Skolemisierung
5
Entfernung der Allquantoren
Konjunktive Normalform
5
Entfernung der Allquantoren
Konjunktive Normalform
6
6
wie für Aussagenlogik
Jan Hladik (DHBW Stuttgart)
wie für Aussagenlogik
Logik
Wintersemester 2016/17
185 / 217
Übung: Miniscoping
Transformieren Sie die folgende Formel in KNF
1
mit dem Standardverfahren;
2
mit dem Miniscoping-Verfahren.
∀x(P(x) ∧ ∃yQ(y)) ∧ ∃x(P(x) ∧ ∀y(S(x, y) ∧ Q(y)) ∨ Q(x))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
186 / 217
Resolution und Variablen
Beispiel (PL-Resolution)
Formel ∃zH (z) ∧ ∀x(H (x) → ∃yM (x, y))
NNF ∃zH (z) ∧ ∀x(¬H (x) ∨ ∃yM (x, y))
→ eliminiert
SNF ∀x(H (c) ∧ (¬H (x) ∨ M (x, f (x))))
∃ eliminiert
CNF H (c) ∧ (¬H (x) ∨ M (x, f (x)))
PL-Atome statt Aussagenvariablen
¬H (x), M (x, f (x))
H (c)
M (c, f (c))
[x/c]
Finde Variablenbelegung, die zwei Atome syntaktisch gleich macht
Ersetze Variablen in gesamter Klausel
Erzeuge Resolvente
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
187 / 217
Substitutionen
Definition (Substitution)
Eine Substition ist eine Abbildung von Variablen auf Terme.
Beispiel (Substitution)
Die Substitution
σ = ([x/f (y)], [y/m(c, d)])
bildet x auf f (y) und y auf m(c, d) ab.
Reihenfolge ist wichtig:
([x/y], [y/z]) ist nicht gleich ([y/z], [x/y])
σ(g(x)) = g(f (m(c, d)))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
188 / 217
Unifikatoren
Definition (Unifikator)
Ein Unifikator ist eine Substitution, die zwei Formeln auf dieselbe Formel
abbildet.
Beispiel (Unifikator von R(a, y) und R(x, f (a)))
ϕ = R(a, y)
ψ = R(x, f (a))
σ(ϕ) = R(a, f (a)) = σ(ψ)
σ = ([x/a], [y/f (a)])
Resolution von C1 und C2 ist möglich, wenn es zwei Atome ϕ, ψ und eine
Substitution σ gibt mit
ϕ ∈ C1 und ¬ψ ∈ C2
σ ist Unifikator von ϕ und ψ.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
189 / 217
Unifikation: Variablenumbenennung und Occurs-Check
Beispiel (gleiche Variable in mehreren Klauseln)
Problem Unifikator für P(x, c) und P(d, x) wird nicht gefunden
Lösung Disjunkte Umbenennung der Variablen
P(x, c), P(d, y), σ = ([x/d], [y/c])
Beispiel (Abbildung von x auf f (x))
Problem Unifikation von P(x) und P(f (x)) resultiert in σ = [x/f (x)]
Lösung Occurs-Check: x kann nicht auf Term abgebildet werden, der
x enthält
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
190 / 217
Übung: Unifikation
Seien
w, x, y, z Variablen,
c, d Konstantensymbole,
f ein einstelliges und g ein zweistelliges Funktionssymbol,
N und P einstellige, R ein zweistelliges und S ein dreistelliges
Prädikat.
Versuchen Sie, Unifikatoren für die folgenden Paare von Atomen zu finden.
a)
b)
c)
d)
e)
f)
P(x) und P(f (g(y, z)))
P(x) und N (f (x))
R(x, f (x)) und R(f (y), z)
R(x, f (x)) und R(f (y), y)
R(x, f (x)) und R(f (c), d)
S(x, f (g(x, y)), g(x, f (d)) und S(g(c, d), f (z), g(g(c, y), w))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
191 / 217
Allgemeinste Unifikatoren
Beispiel (Mehrere mögliche Unifikatoren)
¬P(y)
P(x), R(x)
[x/d]
R(x)
¬R(c)
[y/d]
[y/x]
R(d)
[x/c]
2
Problem manche Unifikatoren verhindern Resolution
Lösung Allgemeinster Unifikator (MGU): ersetze so wenig wie
möglich
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
192 / 217
Unifikations-Algorithmus
Eingabe:
Ausgabe:
Atome s, t
au(s, t),
„nicht unifizierbar“
wenn s und t unifizierbar sind
sonst
1: σ := ()
2: while σ(s) 6= σ(t) do
3:
sei i die erste Position, an der sich σ(s) und σ(t) unterscheiden
4:
if σ(s)|i oder σ(t)|i ist Prädikat then
5:
Ausgabe „nicht unifizierbar“
6:
else if weder σ(s)|i noch σ(t)|i ist Variable then
7:
Ausgabe „nicht unifizierbar“
8:
else
9:
sei x die Variable, y der andere Term
10:
if x ist echter Subterm von y then
11:
Ausgabe „nicht unifizierbar“
12:
else
13:
σ := σ · ([x/y])
14: Ausgabe σ
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
193 / 217
Unifikation: Beispiel
Beispiel
ϕ = R(f (c), z, g(f (c), f (g(z, f (c)))))
ψ = R(f (c), z, g(f (c), f (g(z, f (c)))))
x
u
w
y
/
/
/
/
f (c)
z
f (c)
g(z, f (c))
Jan Hladik (DHBW Stuttgart)
Occurs-Check
AU
Logik
Wintersemester 2016/17
194 / 217
Übung: Unifikations-Algorithmus
Seien
x, y, z Variablen,
c, d Konstanten,
f einstelliges, g ein zweistelliges und h ein dreistelliges
Funktionssymbol,
S und T dreistellige Prädikate.
Wenden Sie den Unifikations-Algorithmus an, um allgemeinste Unifikatoren
für die folgenden Paare von Termen zu finden:
a) S(x, f (y), g(z, d)) und S(c, f (x), g(f (z), z))
b) T (x, f (x), h(f (y), z, d)) und T (c, f (y), h(z, f (x), c))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
195 / 217
Beispiel: Halloween
1
Tim kauft einen Kürbis.
∃x(Kauft(tim, x) ∧ Kürbis(x))
2
Wer einen Kürbis kauft, isst ihn oder schnitzt eine Laterne daraus.
∀x∀y(Kauft(x, y) ∧ Kürbis(y) → Isst(x, y) ∨ Schnitzt(x, y))
3
Kinder essen keine Kürbisse.
∀x(Kind(x) → ∀y(Kürbis(y) → ¬Isst(x, y)))
4
Konklusion: Wenn Tim ein Kind ist, schnitzt er eine Laterne.
Kind(tim) → ∃xSchnitzt(tim, x)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
196 / 217
Schritt 1: Syntaktische Vorverarbeitung
1
Konjunktion der Prämissen und der Negation der Konklusion
2
Variablen-Umbenennung
3
Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ
4
Gesetze von De Morgan
5
Entfernung doppelter Negation
6
Pränex-Normalform . . .
(∃x(Kauft(tim, x) ∧ Kürbis(x)) ∧
(∀y∀z(¬(¬Kauft(y, z) ∨ ¬Kürbis(z)) ∨ Isst(y, z) ∨ Schnitzt(y, z)))
(∀u(¬Kind(u) ∨ ∀w(¬Kürbis(w) ∨ ¬Isst(u, w)))) ∧
¬(¬¬Kind(tim) ∧ ¬∀t¬Schnitzt(tim, t))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
∧
197 / 217
Schritt 2: Skolem-Normalform und KNF
1
Pränex-Normalform
2
Skolem-Normalform
3
Entfernung der Allquantoren
4
Konjunktive Normalform
∃x∀y∀z∀u∀w∀t
(Kauft(tim, k) ∧
Kürbis(k) ∧
(¬Kauft(y, z) ∨ ¬Kürbis(z) ∨ Isst(y, z) ∨ Schnitzt(y, z)) ∧
(¬Kind(u) ∨ ¬Kürbis(w) ∨ ¬Isst(u, w)) ∧
Kind(tim) ∧
¬Schnitzt(tim, t))
¬Schnitzt(tim, t)
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
198 / 217
Schritt 3: Resolution
¬Kind(u), ¬Kürbis(w), ¬Isst(u, w)
Kind(tim)
¬Kürbis(w), ¬Isst(tim, w)
Kürbis(k)
¬Isst(tim, k)
¬Kauft(y, z), ¬Kürbis(z), Isst(y, z), Schnitzt(y, z)
¬Kauft(tim, k), ¬Kürbis(k), Schnitzt(tim, k)
¬Kauft(tim, k), Schnitzt(tim, k)
Kauft(tim, k)
¬Schnitzt(tim, t)
Schnitzt(tim, k)
2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
199 / 217
Übung: Resolution in der Prädikatenlogik
Zeigen Sie mittels Resolution die Folgerung:
1
Alle Hunde bellen.
2
Wer Katzen hat, hat keine Mäuse.
3
Wer einen leichten Schlaf hat, hat nichts, das bellt.
4
Julia hat einen Hund oder eine Katze.
5
Konklusion: Wenn Julia einen leichten Schlaf hat, hat sie keine Mäuse.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
200 / 217
Unvollständigkeit
Beispiel (Resolution von {P(w), P(x)} und {(¬P(y), ¬P(z)})
P(w), P(x)
¬P(y), ¬P(z)
[w/y]
P(t), ¬P(u)
[t/y]
¬P(r), ¬P(s)
..
.
Problem
Lösung
redundante Literale
∀x∀y(P(x) ∨ P(y)) ist äquivalent zu ∀xP(x)
eliminiere Redundanz
führe Unifikation innerhalb einer Klausel durch
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
201 / 217
Faktoren
Definition (Faktor)
Sei C = {L1 , L2 , L3 , . . .} und σ allgemeinster Unifikator von L1 und L2 .
Dann ist σ(C ) ein Faktor von C .
Beispiel (Faktoren)
{P(y)} ist Faktor von {P(x), P(y)}.
{P(c)} ist Faktor von {P(x), P(c)}.
{P(c), R(c, y)} ist Faktor von {P(x), P(c), R(x, y)}.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
202 / 217
Faktorisierung
Neue Regel:
Wenn C2 Faktor von C1 ist, leite C2 von C1 ab (C1 ` C2 ).
Beispiel (Faktorisierung)
¬P(y), ¬P(z)
P(w), P(x)
[w/x]
[z/y]
¬P(y)
P(x)
[x/y]
2
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
203 / 217
Eigenschaften der PL-Resolution
Satz (Korrektheit der PL-Resolution)
K(ϕ) `∗ 2 impliziert Unerfüllbarkeit von ϕ.
Satz (Widerlegungsvollständigkeit der PL-Resolution)
Wenn ϕ unerfüllbar ist, gilt K(ϕ) `∗ 2.
Terminierung?
Terminiert der Resolutionsalgorithmus für jede Eingabe?
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
204 / 217
PL-Resolution und Terminierung
Beispiel
P(x), ¬Q(f (x))
¬P(f (y)), Q(f (y))
[x/f(y)]
¬Q(f (f (y))), Q(f (y))
[y/x]
P(x), ¬Q(f (f (x)))
[y/x]
[x/f(y)]
¬Q(f (f (f (y)))), Q(f (y))
P(x), ¬Q(f (f (f (x))))
..
.
PL-Erfüllbarkeit unentscheidbar ; Terminierung nicht erreichbar.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
205 / 217
Inhalt
1
Einführung
2
Mengenlehre
3
Aussagenlogik
4
Prädikatenlogik
Einführung
Syntax
Semantik
Schlussfolgerungsverfahren
Resolution
Tableaus
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
206 / 217
Tableau-Algorithmus für PL
Gleiches Grundprinzip
Regeln
Clashes
Vorverarbeitung: NNF
Negation nur vor Atomen
Zusätzliche Regeln für Quantoren
∀-Regel
∃-Regel
Definition von Clash auf PL-Formeln erweitert
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
207 / 217
Zusätzliche Regeln für PL
∃ Wenn ∃xϕ(x) ∈ S gilt
und kein Grundterm t existiert mit ϕ(t) ∈ S
dann S := S ∪ ϕ(c) für ein neues Konstantensymbol c
eliminiere ∃ durch Skolemisierung
Konstanten können immer verwendet werden
∀-werden vorher durch ∀-Regel bearbeitet
keine komplexen Skolem-Funktionen nötig
∀ Wenn ∀xϕ(x) ∈ S gilt
und t ein beliebiger Grundterm ist
dann S := S ∪ ϕ(t)
t kann auch neues Konstantensymbol sein
anwendbar auf unendliche Menge von Termen
Keine Anwendbarkeitsbedingung ; immer anwendbar!
Terminierung ist nicht garantiert
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
208 / 217
Beispiel: Halloween-Tableau
ϕ
=
∃x(Kauft(tim, x) ∧ Kürbis(x))
∧
∀x∀y(¬Kauft(x, y) ∨ ¬Kürbis(y) ∨ Isst(x, y) ∨ Schnitzt(x, y))
∀x(¬Kind(x) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(x, y)))
∧
∧
Kind(tim) ∧ ∀x¬Schnitzt(tim, x)
1
2
3
4
5
6
7
8
9
10
11
12
ϕ
∃x(Kauft(tim, x) ∧ Kürbis(x))
∀x∀y(¬Kauft(x, y) ∨ ¬Kürbis(y) ∨ Isst(x, y) ∨ Schnitzt(x, y))
∀x(¬Kind(x) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(x, y)))
Kind(tim)
∀x¬Schnitzt(tim, x))
Kauft(tim, k) ∧ Kürbis(k)
Kauft(tim, k)
Kürbis(k)
¬Schnitzt(tim, k)
¬Kauft(tim, k) ∨ ¬Kürbis(k) ∨ Isst(tim, k) ∨ Schnitzt(tim, k)
¬Kind(tim) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(tim, y))
Jan Hladik (DHBW Stuttgart)
Logik
1: ∧
2: ∃(x/k)
7: ∧
6: ∀(x/k)
3: ∀(x/tim, y/k)
4: ∀(x/tim)
Wintersemester 2016/17
209 / 217
Beispiel: Halloween-Tableau (Fortsetzung)
5
8
9
10
11
12
13
14
15
16
¬Kind(tim)
5
Kind(tim)
Kauft(tim, k)
Kürbis(k)
¬Schnitzt(tim, k)
¬Kauft(tim, k) ∨ ¬Kürbis(k) ∨ Isst(tim, k) ∨ Schnitzt(tim, k)
¬Kind(tim) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(tim, y))
∀y(¬Kürbis(y) ∨ ¬Isst(tim, y))
¬Kürbis(k) ∨ ¬Isst(tim, k)
¬Kürbis(k)
¬Isst(tim, k)
9
¬Kauft(tim, k)
¬Kürbis(k)
Isst(tim, k)
8
9
15
Schnitzt(tim, k)
10
12:
13:
14:
11:
∨
∀(y/k)
∨
∨
Jede Spalte enthält einen Clash
ϕ ist unerfüllbar
Prämissen implizieren Konklusion
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
210 / 217
Übung: Tableau in der Prädikatenlogik
Verwenden Sie ein Tableau, um zu zeigen, dass Julia keine Mäuse hat.
ϕ = ∀x(¬H (x) ∨ B(x))
∧
∀x∀y(¬Hat(x, y) ∨ ¬K (y) ∨ ∀z(¬Hat(x, z) ∨ ¬M (z)))
∀x(¬L(x) ∨ ∀y(¬Hat(x, y) ∨ ¬B(y)))
∃x(Hat(j, x) ∧ (H (x) ∨ K (x)))
∧
∧
∧
L(j) ∧ ∃x(Hat(j, x) ∧ M (x))
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
211 / 217
Peano-Axiome
Peano-Axiomensystem der natürlichen Zahlen :
1
Null ist eine natürliche Zahl.
2
Jede natürliche Zahl hat eine natürliche Zahl als
Nachfolger.
3
Null ist nicht der Nachfolger einer natürlichen Zahl.
4
Wenn natürliche Zahlen denselben Nachfolger
haben, handelt es sich um dieselbe Zahl.
5
Die natürlichen Zahlen sind die kleinste Menge, die
Null und den Nachfolger jedes Elements enthält.
Alternativ:
Jede Menge, die Null und den Nachfolger jedes
Elements enthält, ist eine Obermenge der
natürlichen Zahlen.
Jan Hladik (DHBW Stuttgart)
Logik
Giuseppe Peano
(1858–1932)
Wintersemester 2016/17
212 / 217
Hausaufgabe: Arbeit mit Peano-Axiomen
1
Formalisieren Sie die Peano-Axiome in der Prädikatenlogik.
Verwenden Sie die folgende Signatur:
Prädikat N (1) (x): „x ist eine natürliche Zahl“
Prädikat =(2) (x, y): „x ist gleich y“
Für Gleichheit gehen wir davon aus, dass die korrekte Interpretation fest
vorgegeben ist.
Funktionssymbol z (0) : die Konstante „Null“
Funktionssymbol n (1) (x): „Nachfolger von x“
Achtung: Für Axiom 5 benötigen Sie die 2. Stufe!
2
Zeigen Sie, dass die Axiome 1–4 widerspruchsfrei sind.
Zeigen Sie die Erfüllbarkeit der Konjunktion der Axiome.
3
Zeigen Sie, dass die Axiome 1–4 unabhängig sind.
Zeigen Sie für jedes Axiom, dass seine Negation zusammen mit den
anderen Axiomen erfüllbar ist; z. B. 1 ∧ 2 ∧ ¬3 ∧ 4.
Verwenden Sie die vom Tableau-Algorithmus erzeugten Modelle, um
sich zu verdeutlichen, dass diese Modelle nicht isomorph zu N sind.
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
213 / 217
Nachteil des naiven Tableau-Algorithmus
Problem: Effizienz abhängig von Auswahl der Terme in ∀-Regel
in Beispielen: immer sofort „richtiger“ Term
Programm muss alle Möglichkeiten testen
Signatur mit 4 Konstantensymbolen und Formel mit 5 universell
quantifizierten Variablen ; 45 = 1024 mögliche Regelanwendungen
Signatur mit Funktionssymbolen ; unendlich viele Möglichkeiten
Abhilfe:
Heuristiken: Beginne mit Termen, die bereits vorkommen
Nicht in jedem Fall ausreichend: ∀xP(x) ∧ ∀x¬P(x)
Modifizierter Algorithmus: Tableau-Algorithmus mit Unifikation
Verzögere Substitution
Verwende Unifikation zum Finden einer Substitution, die Clash erzeugt
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
214 / 217
Tableau-Algorithmus mit Unifikation
∀u Wenn ∀xϕ(x) ∈ S
dann S := S ∪ ϕ(y) für eine neue Variable y
y ist freie Variable!
immer anwendbar
∃u Wenn ∃xϕ(x) ∈ S
und es gibt keinen Term t mit ϕ(t) ∈ S
und ϕ enthält die freien Variablen y1 , . . . , yn
dann S := S ∪ ϕ(f (y1 , . . . , yn )) für neues n-stelliges Funktionssymbol f
Nachteil: Komplexe Skolem-Funktionen nötig
S Wenn es in einer Spalte Formeln ϕ und ψ gibt mit
es gibt einen Unifikator σ für die freien Variablen mit σ(ϕ) = ¬σ(ψ)
dann wende σ auf gesamtes Tableau an
nicht nur auf aktuelle Spalte!
gleiches Ergebnis, wie wenn man σ von Anfang an verwendet hätte
freie Variablen müssen überall ersetzt werden
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
215 / 217
Beispiel: Tableau mit Unifikation
ϕ = ∀x∃y(M (x, y) ∨ F (x, y)) ∧ ∀z(¬M (c, z) ∧ ¬F (c, z))
1
2
3
4
5
6
7
8
9
ϕ
∀x∃y(M (x, y) ∨ F (x, y))
∀z(¬M (c, z) ∧ ¬F (c, z))
∃y(M (c, y) ∨ F (c, y))
M (c, p(c)) ∨ F (c, p(c))
¬M (c, p(c)) ∧ ¬F (c, p(c))
¬M (c, p(c))
¬F (c, p(c))
M (c, p(c))
F (c, p(c))
7
Jan Hladik (DHBW Stuttgart)
1: ∧
2:
4:
3:
6:
∀u (x/r)
∃u (y/p(r))
∀u (z/s)
∧
5: ∨
S ([r/c], [s/p(c)])
8
Logik
Wintersemester 2016/17
216 / 217
Zusammenfassung: Prädikatenlogik
Syntax Variablen, Prädikate, Funktionssymbole, Quantoren
Terme, Atome, komplexe Formeln
Modellierung der inneren Struktur von Aussagen
Interpretation Domäne, Funktionen, Relationen
Schlussfolgerung korrekt, vollständig
nicht terminierend ; unentscheidbar
Resolution PNF, SNF, Unifikation, Faktorisierung
Tableau ∃/∀-Regel, Anwendbarkeit
Jan Hladik (DHBW Stuttgart)
Logik
Wintersemester 2016/17
217 / 217
Herunterladen