L og ik fu r In fo rm a tiker L itera tu r zu r V o rlesu ng L og ik in d er

Werbung
Melvin Fitting
First-Order Logic and Automated Theorem Proving
2. Auflage, Springer-Verlag
Buch von M. Fitting
Uwe Schöning
Logik für Informatiker
5. Auflage, Spektrum Akademischer Verlag
Buch von U. Schöning
• Formalisierung und Automatisierung rationalen Denkens
• Werkzeug für Anwendungen außerhalb der Informatik
Künstliche Intelligenz, Wissensrepräsentation
• Anwendung innerhalb der Informatik
Spezifikation, Programmentwicklung, Programmverifikation
Rolle der Logik in der Informatik
• Rational richtige Ableitung von neuem Wissen aus gegebenem
Ziel
Formale Logik
Ulrich Furbach
Logic for Computer Scientists
http://userpages.uni-koblenz.de/∼obermaie/script.htm
2
1
Abfragensprachen für Datenbanken; ...
Sprachverarbeitung und Wissensrepräsentation
nein: Verifikation von Hardware, Software, Protokollen
• Reine Theorie ohne praktischen Nutzen?
hoffentlich nein
• Unverständlich?
ja
• Mathematisch?
Was ist Logik?
Skriptum von U. Furbach
Literatur zur Vorlesung
e-mail: [email protected]
Viorica Sofronie-Stokkermans
Logik für Informatiker
Logik in der Informatik
4
3
Wenn formulierbare Aussage wahr im Modell, dann entsprechende Aussage
wahr in Wirklichkeit
Adäquatheit des Modells
Modellierung
Abstraktion
Modellierung
6
5
v(UntenGedrückt) = wahr
v(FährtNachUnten) = wahr
v(FährtNachUnten) = wahr
F.nach unten
Aufzug mitte
Unten gedruckt
v(MitteGedrückt) = wahr
unten
mitte
oben
v(AufzugMitte) = wahr
F.nach unten
Aufzug oben
Mitte gedruckt
v(AufzugOben) = wahr
unten
mitte
oben
v(FährtNachUnten) = wahr
F.nach unten
Aufzug oben
Mitte gedruckt
F.nach unten
Aufzug mitte
v(FährtNachUnten) = wahr
v(MitteGedrückt) = wahr
v(AufzugMitte) = wahr
v(AufzugOben) = wahr
unten
mitte
oben
Aufzug oben
Mitte gedruckt
v(FährtNachUnten) = wahr
v(MitteGedrückt) = wahr
v(AufzugMitte) = wahr
v(AufzugOben) = wahr
unten
mitte
oben
Modellierung: Strukturen
v(UntenGedrückt) = wahr
v(FährtNachUnten) = wahr
F.nach unten
Aufzug mitte
Unten gedruckt
v(MitteGedrückt) = wahr
unten
mitte
oben
v(AufzugMitte) = wahr
F.nach unten
Aufzug oben
Mitte gedruckt
v(AufzugOben) = wahr
unten
mitte
oben
Modellierung: Strukturen
8
7
F.nach unten
Aufzug oben
Mitte gedruckt
unten
mitte
oben
F.nach unten
Aufzug mitte
Unten gedruckt
unten
mitte
oben
F.nach unten
Aufzug mitte
Aufzug oben
Mitte gedruckt
Ableitung neuer wahrer Formeln
• Deduktionsmechanismus
Wann ist eine Formel wahr (in einer Struktur)?
Modelle (Strukturen)
• Semantik
welche Formeln?
• Syntax
Formale Logik
(Formale) Aussagen sind in jeder einzelnen Struktur zu wahr oder falsch
auswertbar
Aussagen beziehen sich auf Strukturen
unten
mitte
oben
Modellierung: Strukturen
10
9
AufzugOben
∨
oder
→
AufzugOben ∧ ¬AufzugUnten
Der Aufzug ist oben und der Aufzug ist nicht unten
MitteGedrückt → ¬AufzugMitte
Wenn mittlerer Knopf gedrückt, dann Aufzug nicht in der Mitte
Beispiele:
¬
nicht
Aussagenlogik: Syntax
(“wenn, dann”)
impliziert
Komplexe Aussagen:
∧
und
Verknüpft mit logischen Operatoren
MitteGedrückt
Mittlerer Knopf gedrückt:
Beispiele: Aufzug ist oben:
Bausteine: Atomare Aussagen
Die Welt besteht aus Fakten
Aussagenlogik: Syntax
12
11
F.nach unten
Aufzug oben
Mitte gedruckt
Aussagenlogik: Semantik
unten
mitte
oben
falsch in:
unten
mitte
oben
F.nach unten
Aufzug mitte
Unten gedruckt
AufzugOben ∧ ¬AufzugUnten
Der Aufzug ist oben und der Aufzug ist nicht unten
wahr in:
AufzugOben ∧ ¬AufzugUnten
Der Aufzug ist oben und der Aufzug ist nicht unten
Aussagenlogik: Semantik
14
13
Q
¬AufzugOben
P
AufzugUnten → ¬AufzugOben
P→Q
• Tableaukalkül
• Resolutionskalkül
• Logische Umformung
• Wahrheitstafeln
In dieser Vorlesung:
Kalkül
Deduktionsmechanismus im allgemeinen
Aussagenlogik: Deduktionsmechanismus
AufzugUnten
Syllogismen:
Ableitung neuer wahrer Formeln
• Deduktionsmechanismus
Aussagenlogik: Deduktionsmechanismus
16
15
• Funktionen
+, Mitte von,
Vater von,
Anfang von, ...
• Relationen/Eigenschaften
rot, rund, gerade, ungerade, prim, mehrstöckig, ...
ist Bruder von, ist größer als, ist Teil von, hat Farbe, besitzt, ..
=, ≥, ...
• Objekte (Elemente)
Leute, Häuser, Zahlen, Theorien, Farben, Jahre, ...
Reichere Struktur
Prädikatenlogik
• Die Aussage “Jede natürliche Zahl ist entweder gerade oder ungerade”
erfordert eine Formel für jede Zahl.
• Die Aussage “Alle Menschen sind sterblich” erfordert eine Formel für
jeden Mensch.
Beispiele:
... aber: Aussagenlogik hat nur beschränkte Ausdruckskraft
18
17
Beispiel 1
(für alle);
Beispiel 2:
(es gibt)
Vater (Mutter (Jan))
Vater (Mutter (x))
Mann(Jan)
Frau(Vater (Jan))
ist-Bruder-von(x, Jan)
Mann(Vater (x))
ist-Bruder-von(x, y )
...
19
20
ist-Bruder-von(Jan, Anna)
ist-Bruder-von(x, Anna)
Mann(Vater (Jan))
Mann(Anna)
Mutter (Anna)
Vater (Anna)
Anna
Mann(x)
• Eigenschaften: ist-Bruder-von; Mann; Frau
Mutter (Jan)
Mutter (x)
Jan
Vater (Jan)
Vater (x)
x
• Funktionen: Vater, Mutter, Jan, Anna
• Objekte (Elemente): Menschen
x
x
gerade(x)∨ gerade(x + 1)
ungerade(x)
Formeln mit Quantoren:
Quantoren:
gerade(2), ungerade(5), gerade(100), ungerade(100)
gerade(2)∧ ungerade(5)
gerade(x) → gerade(x + 1)
Formel:
Relationen/Eigenschaften: gerade, ungerade
Objekte (Elemente): Zahlen
Funktionen: +, *
Terme: 2 + 3, 3 ∗ (5 + 6), x, x + 2, x ∗ (2 − y )
E
A
Aussagenlogik: Die Welt besteht aus Fakten
A
Prädikatenlogik
E
: für alle
• Eigenschaften: studiertIn, schlau
• Funktionen: koblenz
• Objekte (Elemente): Menschen
• Eigenschaften: studiertIn, schlau
• Funktionen: landau
• Objekte (Elemente): Menschen
x(studiertIn(x, landau) ∧ schlau(x))
E
“Es gibt jemand, der in Landau studiert und schlau ist”
x(studiertIn(x, koblenz) → schlau(x))
A
“Alle, die in Koblenz studieren, sind schlau”
Beispiel 3
x Mann(Vater (x))
x Mann(Mutter (x))
x, y (ist-Bruder-von(x, y ) → Mann(x))
A
A
A
Formeln mit Quantoren:
: es gibt
E
A
Quantoren
22
21
x(Q(x) → R(x))
Q(a)
studiertIn(Jan, koblenz)
Beispiel:
Syllogismen:
R(a)
x(studiertIn(x, koblenz) → schlau(x))
x(Q(x) → R(x))
Ableitung neuer wahrer Formeln
• Deduktionsmechanismus
Prädikatenlogik: Deduktionsmechanismus
schlau(Jan)
24
23
x(schlau(x) → gute-noten(x))
x(studiertIn(x, koblenz) → gute-noten(x))
x(studiertIn(x, koblenz) → schlau(x))
x(P(x) → R(x))
x(P(x) → Q(x))
A
Mann(Vater (Jan))∧ ist-Bruder-von(Jan, Anna)
Syllogismen:
A
Mann(Mutter (Anna))
Ableitung neuer wahrer Formeln
A
Mann(Vater (Jan)) ∧ Frau(Mutter (Jan))
• Deduktionsmechanismus
A
Mann(Vater (Jan))
A
Formel:
Prädikatenlogik: Deduktionsmechanismus
A
A
Beispiel 2:
A
Das Prinzip
25
Losung
Formeln
präzise Beschreibung
Losung
Problem
z.B. natürliche Sprache
26
• sicher, d. h., ohne daß ein Eindringling (Charlie) mithören oder sich als
Alice oder Bob ausgeben kann.
• Annahme: es gibt eine sichere Schlüsselzentrale, mit der Alice und Bob
jeweils einen gemeinsamen Schlüssel vereinbart haben.
• Wird der gemeinsame Schlüssel über das Netz
unverschlüsselt verschickt, könnte Charlie ihn abfangen oder
austauschen.
• Persönliche Übergabe kommt nicht immer in Frage.
Problem: wie kommen die Gesprächspartner an den gemeinsamen Schlüssel?
Beispiel: Sicherheitsprotokolle
• Nur wer den Schlüssel kennt, kann das Gespräch entschlüsseln.
• Alice und Bob vereinbaren einen gemeinsamen Schlüssel
und nutzen ihn, um ihr Gespräch zu verschlüsseln.
Hilfsmittel: Verschlüsselung
• über ein unsicheres Daten- oder Telefonnetz,
• Resolutionskalkül
Ziel: zwei Personen (Alice und Bob) wollen miteinander kommunizieren
Anwendungesbeispiel: Sicherheitsprotokole
• Tableaukalkül
In dieser Vorlesung:
Prädikatenlogik: Deduktionsmechanismus
28
27
Alice leitet den neuen gemeinsamen Schlüssel weiter an Bob.
Bob leitet Nachricht weiter an Schlüsselzentrale ( Trust“).
”
30
Schritt 4:
Beispiel: Sicherheitsprotokolle
Schritt 2:
Beispiel: Sicherheitsprotokolle
Trust schickt Nachricht an Alice. Darin: ein neuer gemeinsamer Schlüssel,
einmal für Alice und einmal für Bob verschlüsselt.
Alice schickt (offen) Identifikation und Zufallszahl an Bob.
29
Schritt 3:
Beispiel: Sicherheitsprotokolle
Schritt 1:
Das folgende Schlüsselaustauschverfahren wurde 1993 von den beiden Kryptographen Neuman und Stubblebine vorgeschlagen:
Beispiel: Sicherheitsprotokolle
32
31
Wir übersetzen das Problem in Formeln und lassen sie von einem
Theorembeweiser untersuchen.
Ist das Verfahren sicher?
Beispiel: Sicherheitsprotokolle
Alice und Bob können nun mit dem gemeinsamen Schlüssel kommunizieren.
Schritt 5:
Beispiel: Sicherheitsprotokolle
34
33
Beispiel: Sicherheitsprotokolle
Formalisierung
x[Ik(key (x, b)) ∧ Bk(key (x, a))]
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 Alice.
Zum Schluss müssen wir noch formalisieren was es bedeutet, dass der
Angreifer Erfolg hat.
...
• Wenn Charlie eine Nachricht hat, dann kann er sie an Alice/Bob/Trust
abschicken.
• Wenn Charlie eine verschlüsselte Nachricht bekommt und den
passenden Schlüssel hat, kann er sie entschlüsseln.
• Wenn eine Nachricht übermittelt wird, kann Charlie sie mithören.
Dann formalisieren wir die Eigenschaften des Angreifers:
• Wenn Alice/Bob/Trust eine Nachricht in einem bestimmten Format
bekommt, dann schickt er/sie eine andere Nachricht ab.
Zuerst formalisieren wir die Eigenschaften des Protokolls:
E
36
35
Gültige Formel
Modelle: Semantik
Korrektheit
Vollständigkeit
Beweisbare Formel
Kalkül
Prädikatenlogik
Formel
Aussagenlogik /
Gültige Formel
Modelle: Semantik
Korrektheit
Vollständigkeit
Beweisbare Formel
Kalkül
Deduktion
(automatische)
Prädikatenlogik
Formel
Aussagenlogik /
Logische Sprache: Syntax
Formalisierung
Formalisierung
Logische Sprache: Syntax
Probleme
(Beschreibung in natürlicher Sprache)
38
Beweisbare Formel
Kalkül
Das ganze Bild
Korrektheit
Vollständigkeit
Formel
Probleme
Logik
37
Gültige Formel
Modelle: Semantik
Prädikatenlogik
Logische Sprache: Syntax
Aussagenlogik /
Modellierung
Formalisierung
(Beschreibung in natürlicher Sprache)
Probleme
Das ganze Bild
(Beschreibung in natürlicher Sprache)
Das ganze Bild
Der Theorembeweiser beweist dann automatisch, dass der Angreifer das
Protokoll brechen kann.
Die Formalisierung des Protokolls, Formeln (1)-(8) zusammen mit den
Angreiferformeln (9)-(20) und der Erfolgsbedingung für den Angreifer kann
man nun in einen Theorembeweiser eingeben.
Automatische Analyse
Logik
Logik
40
39
– Vollständigkeit und Korrektheit von Kalkülen
– Formel in der “wahren Welt” / (semantisch) gültige Formel,
gültige Formel / ableitbare Formel
• The Whole Picture:
• Beispiel Prädikatenlogik: Syntax, Semantik, Syllogismen
- mit Hilfe von Inferenzregeln
- bzgl. eines vorgegebenen Axiomensystems
Mathematischer Beweis
- als Formel: A → B
• Beispiel Aussagenlogik: Syntax, Semantik, Syllogismen
- haben oft die Form: Wenn A, dann B.
Mathematische Aussagen
Mathematisches Beweisen
• Wesentliche Komponenten für jede Logik: Syntax, Semantik,
Deduktionsmechanismus (Kalkül)
42
41
1. Grundlegende Beweisstrategien
• Modellierung, Adäquatheit der Modellierung
• Ziel und Rolle der Formalen Logik in der Informatik
Einführung: Zusammenfassung
• 4. Weitere Aussichten
- Nichtklassische Logiken; Logiken höherer Stufe
- Anwendungen: z.B. Datenbanken oder Verifikation
– Deduktionsmechanismen:
- Resolution, Vollständigkeits- und Korrektheitsbeweise
- Analytische Tableaux
– Syntax und Semantik
• 3. Prädikatenlogik
– Deduktionsmechanismen:
- Resolution, Vollständigkeits- und Korrektheitsbeweise
- Analytische Tableaux
– Syntax und Semantik
• 2. Aussagenlogik
• 1. Einführung: Motivation, Beweisstrategien (insb. Induktion)
Inhalt der Vorlesung
44
43
45
√
Beweis: Angenommen, 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.
√
Also ist die getroffene Annahme falsch, d.h., n ist gerade.
Behauptung: Ist die Wurzel aus einer geraden natürlichen Zahl n eine natürliche
Zahl, so ist diese gerade.
- Beweis durch Widerspruch:
Beweise dass A ∧ ¬B → falsch
- Beweis durch Kontraposition:
Beweis von ¬B → ¬A.
Mathematische Aussagen der Form A → B (Wenn A, dann B)
Grundlegende Beweisstrategien
Aus der Möglichkeit, n2 so darzustellen folgt, dass n2 ungerade ist.
Beweis: Es sei n eine ungerade natürliche Zahl. Dann lässt sich n als n = 2k + 1
darstellen, wobei k ∈ N. Daraus folgt mit Hilfe der ersten binomischen Formel,
dass:
2
2
2
2
n = (2k + 1) = 4k + 4k + 1 = 2 · (2k + 2k) + 1.
46
p
q
47
wobei der Bruch p/q in gekürzter
2
p
= 2, d.h: p 2 = 2q 2 .
q
48
Da 2q 2 eine gerade Zahl ist, ist auch p 2 gerade. Daraus folgt, dass auch p gerade ist, d.h.
p = 2r (wobei r ∈ Z). Damit erhält man mit obiger Gleichung: 2q 2 = p 2 = (2r )2 = 4r 2 ,
und hieraus nach Division durch 2: q 2 = 2r 2 . Mit der gleichen Argumentation wie zuvor folgt,
dass q 2 und damit auch q eine gerade Zahl ist. Da p und q durch 2 teilbar sind, erhalten
wir einen Widerspruch zur Teilerfremdheit von p und q. Dieser Widerspruch zeigt, dass die
√
Annahme, 2 sei eine rationale Zahl, falsch ist und daher das Gegenteil gelten muss. Damit
√
ist die Behauptung, dass 2 irrational ist, bewiesen.
Form vorliegt (d.h. p und q teilerfremde ganze Zahlen sind). Dann
√
Behauptung: 2 6∈ Q.
√
√
Beweis: Wir nehmen an dass 2 ∈ Q und somit 2 =
- Beweis durch Widerspruch
Um A zu beweisen:
Annahme: A ist falsch (die Negation von A ist wahr)
Zeige, dass dies zu einem Widerspruch führt.
Grundlegende Beweisstrategien
- Äquivalenzbeweis (A ⇔ B) (A genau dann, wenn B)
Beweise dass A → B und dass B → A.
(Wenn A, dann B, und wenn B, dann A.)
- Direkter Beweis:
Annahme: A gilt. Benutze A, Axiome, und Inferenzregeln
um B zu beweisen.
Behauptung: Das Quadrat einer ungeraden natürlichen Zahl n ist stets ungerade.
Mathematische Aussagen, die nicht die Form A → B haben
Grundlegende Beweisstrategien
Mathematische Aussagen der Form A → B (Wenn A, dann B)
Grundlegende Beweisstrategien
1:
2:
3:
4:
p
p
p
p
=
=
=
=
4k
4k + 1
4k + 2
4k + 3 = 4(k + 1) − 1
Es sei angemerkt, dass die Fallunterscheidung zwar vollständig sein
muss, aber die untersuchten Fälle sich nicht gegenseitig ausschließen
müssen.
- Beweis durch Fallunterscheidung
Um B zu beweisen, beweise dass A1 → B, . . . , An → B,
wobei A1 ∨ · · · ∨ An ≡ wahr
Grundlegende Beweisstrategien
50
49
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.
Also muss einer der Fälle zwei oder vier eintreten, das heißt p hat die Form p = 4 · k + 1
oder p = 4 · k − 1 mit k ∈ N.
Fall
Fall
Fall
Fall
Beweis: Man unterscheidet folgende vier Fälle für p, von denen immer genau einer eintritt:
n ∈ N : (n ist gerade und
|
√
p(n)
q(n)
√
n ist eine natürliche Zahl → n ist gerade).
|
{z
}
{z
}
Beweis: A(x) : x 2 − 2x + 1 = 0
Sei a = 1. Wir zeigen, dass A(a) wahr ist:
Damit folgt x ∈ N : A(x)
Behauptung: x ∈ N : x 2 − 2x + 1 = 0
a2 − 2a + 1 = 12 − 2 + 1 = 0.
Sei a ein geeignetes Element aus U.
Beweise, dass A(a) wahr ist.
Damit folgt x ∈ U : A(x).
x ∈ U A(x)
Aussagen mit Quantoren
Grundlegende Beweisstrategien
52
51
Beweis: Sei n beliebig aus N.
√
√
Wir zeigen, dass wenn n gerade ist und n eine natürliche Zahl ist, dann n gerade ist.
(Dies wurde auf Seite 46 bewiesen.)
Behauptung:
E
Behauptung: Jede Primzahl p≥3 hat die Form p = 4·k + 1 oder p = 4·k − 1 mit k ∈ N.
Wähle a beliebig aus U.
Beweise, dass p(a) → q(a).
Da a beliebig gewählt werden kann, folgt
x ∈ U : p(x) → q(x)
x ∈ U : (p(x) → q(x))
Aussagen mit Quantoren
E
- Beweis durch Fallunterscheidung
Um B zu beweisen, beweise dass A1 → B, . . . , An → B,
wobei A1 ∨ · · · ∨ An ≡ wahr
Grundlegende Beweisstrategien
E
E
Grundlegende Beweisstrategien
A
A
A
Sei a ein geeignetes Element aus U.
Beweis der Implikation p(a) → q(a).
Damit folgt x ∈ U : p(x) → q(x).
x ∈ U (p(x) → q(x))
Sei a ein geeignetes Element aus U.
Beweise, dass A(a) wahr ist.
Damit folgt x ∈ U : A(x).
Beweise mittels Vollständiger Induktion
Grundlegende Beweisstrategien
E
E
x ∈ U A(x)
Aussagen mit Quantoren
Grundlegende Beweisstrategien
E
E
54
53
0 ist eine natürliche Zahl
Jede natürliche Zahl n hat einen Nachfolger S(n)
Aus 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.
(A1)
(A2)
(A3)
(A4)
(A5)
Idee: Definition der natürlichen Zahlen
Induktion über die natürlichen Zahlen
Hier: Strukturelle Induktion
Noethersche Induktion
(noetherian induction/
induction over well-founded partially ordered sets)
Generalization
Induktion über die natürlichen Zahlen N
(natural induction)
Einfache Version
Wesentliches Beweisprinzip in Mathematik und Logik
Induktion
56
55
A
so
Falls
Induktionsbasis
Induktionsschritt
n∈N:n∈X
n ∈N:n ∈X →n+1∈X
0 ∈ X , und
Induktionsbasis:
Induktionsschritt:
(1)
(2)
für ein beliebiges n ∈ N
Beweise p(n) → p(n + 1)
Beweise p(0)
Struktur eines Induktionsbeweises
Induktion über die natürlichen Zahlen
A
Induktionssatz
Gelten die beiden Aussagen:
- p(0) und
- n ∈ N : p(n) → p(n + 1),
dann gilt auch n ∈ N : p(n).
X Menge:
Jede Menge X , die 0 und mit jeder natürlichen Zahl n
auch deren Nachfolger S(n) enthält, umfasst alle
natürlichen Zahlen.
A
(A5)
Induktion über die natürlichen Zahlen
A
A
58
57
1
2
3
Beispiel
i=0
Induktionsvoraussetzung p(n)
Folgere p(n + 1) aus der
n ∈ N gilt p(n)
Für ein beliebig gewähltes
Beweise p(0)
i=0
(2i + 1) = (
i=0
n−1
X
i=0
p(n)
i=0
2
Folgere p(n +
1) aus p(n)
n
X
2
(2i + 1) = (n + 1) .
p(n + 1) :
Für ein beliebig gewähltes
n−1
X
2
(2i + 1) = n
n ∈ N gilt p(n):
Beweise p(0) OK
2
(2i + 1)) + (2n + 1) = n + (2n + 1) = (n + 1) .
Induktionsschluss:
(3)
n
X
Induktionsvoraussetzung:
(2)
Beweis:
Induktionsbasis:
(1)
Behauptung: Die Summe der ersten n ungeraden Zahlen ist n2 .
n−1
X
Für alle n ∈ N,
(2i + 1) = n2 .
n−1
X
i=0
p(n) :
(2i + 1) = n2
0
Induktionsschluss:
Induktionsvoraussetzung:
(3)
Induktionsbasis:
(1)
(2)
Struktur eines Induktionsbeweises
Induktion über die natürlichen Zahlen
60
59
A
A
n ∈ N : p(n).
dann gilt die Aussage
n ∈ N : p(n).
n ∈ N : ( k ∈ N : (k < n → p(k)) → p(n))
n ∈ N : p(n).
A
A
Gilt die Aussage:
Äquivalent
A
dann gilt die Aussage
A
A
p(0)
und
n ∈ N : p(0) ∧ p(1) ∧ · · · ∧ p(n) → p(n + 1)
Gelten die beiden Aussagen:
Verallgemeinerte vollständige Induktion
Wohlfundierte (Noethersche) Induktion
dann gilt die Aussage
A
p(0)
und
n ∈ N : ( k ∈ N : (k < n + 1 → p(k)) → p(n + 1))
Gelten die beiden Aussagen:
Äquivalent
62
61
n ∈ N : p(n)
n ∈ N : ( k ∈ N : (k < n → p(k)) → p(n))
Kontrapositionsbeweis: Wir zeigen, dass ¬Q → ¬P
Beweis: Zu zeigen: P → Q
dann gilt
Theorem:
Falls
Wohlfundierte (Noethersche) Induktion
Induktionsvoraussetzung: p(k) gilt für alle k < n
Induktionsschluss: Folgere p(n) aus der Induktionsvoraussetzung.
Sei n ∈ N, n ≥ n0 .
P
Q
Sei Y = {n ∈ N | ¬p(n)} =
6 ∅. Dann hat Y ein minimales Element m, d.h.
m(m ∈ Y ∧ ( k ∈ N : (k < m → k 6∈ Y ))) = ¬P.
> wohlfundierte Ordnung auf N: es gibt keine unendliche Folge
x1 , . . . , xn , . . . mit x1 > x2 > · · · > xn > . . . .
Annahme: ¬Q := ¬( n ∈ N : p(n)) ≡ n ∈ N : ¬p(n).
E
n ∈ N : p(n).
A
A
dann gilt die Aussage
n ≥ n0 : P(n)
A
A
p(0)
und
n ∈ N : p(0) ∧ p(1) ∧ · · · ∧ p(n) → p(n + 1)
Zu zeigen:
E
Gelten die beiden Aussagen:
A
A
Verallgemeinerte vollständige Induktion
Vollständige Induktion
A
Wohlfundierte (Noethersche) Induktion
A
64
63
n ∈ N : p(n)
n ∈ N : ( k ∈ N : (k < n → p(k)) → p(n))
A
dann gilt
E
- < wohlfundiert (es gibt keine unendliche Folge x1 , . . . , xn , . . . mit
x1 > x2 > · · · > xn > . . . )
- < Ordnung auf A
- beliebige Menge A statt N
Verallgemeinerung
n ∈ N : p(n)
A
n ∈ N : ( k ∈ N : (k < n → p(k)) → p(n))
A
Theorem:
Falls
A
Wohlfundierte (Noethersche) Induktion
A
P
Q
Q
P
Sei Y = {n ∈ N | ¬p(n)} 6= ∅. Dann hat Y ein minimales Element m, d.h.
m(m ∈ Y ∧ ( k ∈ N : (k < m → k 6∈ Y ))) = ¬P.
> wohlfundierte Ordnung auf N: es gibt keine unendliche Folge
x1 , . . . , xn , . . . mit x1 > x2 > · · · > xn > . . . .
Annahme: ¬Q := ¬( n ∈ N : p(n)) ≡ n ∈ N : ¬p(n).
E
Kontrapositionsbeweis: Wir zeigen, dass ¬Q → ¬P
Beweis: Zu zeigen: P → Q
dann gilt
Theorem:
Falls
A
A
Wohlfundierte (Noethersche) Induktion
A
66
65
• Bei Induktionsschritt die Grenzfälle nicht bedacht
• Induktionsanfäng inkorrekt
• es gibt unendliche absteigende Ketten x1 > x2 > . . .
Häufige Fehler bei Induktionsbeweisen
Fehlerquellen
Multipliziert man diese beiden Produkte miteinander, so erhält man
eine Darstellung für n.
Da aber ki < n, i = 1, 2 ist nach Induktionsvoraussetzung bereits eine
Darstellung als Produkt von Primzahlen für ki bekannt.
Fall 2: n keine Primzahl. Dann n = k1 · k2 , mit k1 , k2 ∈ N, k1 , k2 ≥ 2.
Fall 1: n Primzahl. Dann lässt sich n als Produkt von Primzahlen
darstellen (n = n)
Fallunterscheidung:
Induktionsvoraussetzung: p(k) gilt für alle k < n
Induktionsschluss: Folgere p(n) aus der Induktionsvoraussetzung.
Beweis: Sei n ∈ N, n ≥ 2, beliebig gewählt.
Satz: Jede natürliche Zahl n ≥ 2 lässt sich als Produkt von Primzahlen darstellen.
p(n): n ≥ 2 → n lässt sich als Produkt von Primzahlen darstellen.
Beispiel
68
67
Nun kann die Induktionsbehauptung angewendet werden und alle
verbliebenen haben die gleiche Haarfarbe (mit dem rechts außen).
Der Mensch links außen wird rausgeschickt. Es bleiben nur n Menschen.
n + 1 Menschen werden in eine Reihe gestellt.
Induktionsschritt: Beweise, dass aus p(n), p(n + 1) folgt.
Induktionsvoraussetzung: p(n) wahr.
p(n) : In einer Menge von n Menschen haben alle die gleiche Haarfarbe
Behauptung: Alle Menschen haben die gleiche Haarfarbe
Was ist hier falsch?
Fehlerquellen
Für eine Menge mit nur einem Menschen gilt die Behauptung trivial
Induktionbasis: n = 1
p(n) : In einer Menge von n Menschen haben alle die gleiche Haarfarbe
Behauptung: Alle Menschen haben die gleiche Haarfarbe
Was ist hier falsch?
Fehlerquellen
70
69
Bei der strukturellen Induktion werden Eigenschaften für Mengen bewiesen,
deren Elemente aus Grundelementen durch eine endliche Anzahl von
Konstruktionsschritten (unter Verwendung bereits konstruierter Elemente)
bzw. mittels eines Erzeugungssystems entstehen.
Bei der vollständigen Induktion werden Eigenschaften der natürlichen
Zahlen bewiesen.
Strukturelle Induktion
Also haben alle n + 1 Menschen die gleiche Haarfarbe.
Also haben die beiden außen die gleiche Haarfarbe, wie die in
der Mitte, und die haben auch alle die gleiche Haarfarbe
Der Mensch rechts außen wird rausgeschickt. Es bleiben nur n Menschen.
Die Induktionsbehauptung kann angewendet werden und alle
verbliebenen haben die gleiche Haarfarbe (mit dem links außen).
n + 1 Menschen werden in eine Reihe gestellt.
Induktionsschritt: Beweise, dass aus p(n), p(n + 1) folgt.
Induktionsvoraussetzung: p(n) wahr.
p(n) : In einer Menge von n Menschen haben alle die gleiche Haarfarbe
Behauptung: Alle Menschen haben die gleiche Haarfarbe
Was ist hier falsch?
Fehlerquellen
72
71
Wenn f ∈ Σ mit Stelligkeit n und
Erzeugungsregel:
Wenn n ∈ N, dann gilt n + 1 ∈ N
Erzeugungsregel:
(3) Für jede Menge A mit Eigenschaften (1) und (2) gilt: N ⊆ A.
(2) Falls n ∈ N so n + 1 ∈ N.
(1) 0 ∈ N
Das bedeutet, dass:
(2) für alle Elemente n, falls n ∈ A so n + 1 ∈ A.
(1) A enthält 0;
N ist die kleinste aller Mengen A mit folgenden Eigenschaften:
0
Basismenge:
(1) Menge N aller natürlichen Zahlen
Induktive Definitionen: Beispiele
• mit der Eigenschaft, dass für alle f ∈ Σ mit Stelligkeit n und alle
e1 , . . . , en ∈ M: f (e1 , . . . , en ) ∈ M.
M ist die kleinste Menge,
• die die Basismenge B enthält,
e1 , . . . , en ∈ M, dann gilt f (e1 , . . . , en ) ∈ M.
B
Basismenge:
(Konstruktoren sind Funktionssymbole; für f ∈ Σ, a(f ) ∈ N ist die
Stelligkeit von f .)
Induktive Definition einer Menge M aus einer Basismenge B mit
“Konstruktoren” in Σ.
Induktive Definition von Mengen:
Induktive Definitionen
74
73
dann gilt wa ∈ Σ∗
Wenn w ∈ Σ∗ und a ∈ Σ,
Das leere Wort ǫ ∈ Σ∗
= Tree( , )
Beispiele:
Erzeugungsregel:
Basismenge:
= Tree( ,
B1
)
B2
Tree(B1 , B2 )
= Tree(
Wenn B1 , B2 ∈ Bin, dann ist auch
Tree(B1 , B2 ) ∈ Bin.
◦ Baum mit nur einem Knoten.
(3) Bin : die Menge aller (vollständigen) binären Bäume
,
)
Induktive Definitionen: Beispiele
(3) Für jede Menge A mit Eigenschaften (1) und (2) gilt: Σ∗ ⊆ A.
(2) Falls w ∈ Σ∗ und a ∈ Σ so wa ∈ Σ∗ .
(1) ǫ ∈ Σ∗
Das bedeutet, dass:
(2) für alle Elemente w , falls w ∈ A und a ∈ Σ, so wa ∈ A.
(1) A enthält das leere Wort ǫ
Σ∗ ist die kleinste aller Mengen A mit folgenden Eigenschaften:
Erzeugungsregel:
Basismenge:
(2) Menge Σ∗ aller Wörter über ein Alphabet Σ
Induktive Definitionen: Beispiele
76
75
Tree(B1 , B2 ) ∈ Bin.
Wenn B1 , B2 ∈ Bin, dann ist auch
◦ Baum mit nur einem Knoten.
(atomare Formeln)
F1 → F2 , F1 ↔ F2 aussagenlogische Formeln
dann sind auch ¬F1 , F1 ∧ F2 , F1 ∨ F2 ,
Wenn F1 , F2 aussagenlogische Formeln sind,
Erzeugungsregel:
aussagenlogische Formeln
⊥ (falsch), ⊤ (wahr), P0 , P1 , P2 , . . . sind
Basismenge:
(4) Menge aller aussagenlogischen Formeln
Induktive Definitionen: Beispiele
(3) Für jede Menge A mit Eigenschaften (1) und (2) gilt: Bin ⊆ A.
(2) Falls B1 , B2 ∈ Bin so Tree(B1 , B2 ) ∈ Bin.
(1) ◦ ∈ Bin
Das bedeutet, dass:
(2) für alle Elemente B1 , B2 , falls B1 , B2 ∈ A so Tree(B1 , B2 ) ∈ A.
(1) A enthält der Baum mit nur einem Knoten ◦.
Bin ist die kleinste aller Mengen A mit folgenden Eigenschaften:
Erzeugungsregel:
Basismenge:
(3) Bin : die Menge aller (vollständigen) binären Bäume
Induktive Definitionen: Beispiele
78
77
Induktive Definitionen
Wenn f ∈ Σ mit Stelligkeit n und
Erzeugungsregel:
x ∈ M : P(x)
Induktionsschluss: Folgere, dass P(e) gilt.
Induktionsvoraussetzung: Wir nehmen an, dass P(e1 ), . . . , P(en ) gelten.
Dann e = f (e1 , . . . , en ), mit f ∈ Σ und e1 , . . . , en ∈ M.
(2) Sei e ∈ M, e 6∈ B.
(1) Induktionsbasis: Beweise, dass für alle b ∈ B, P(b) gilt.
Zu zeigen:
Strukturelle Induktion
(3) Für jede Menge A mit Eigenschaften (1) und (2) gilt: M ⊆ A.
(2) Falls e1 , . . . , en ∈ M und f ∈ Σ (mit Stelligkeit n), so f (e1 , . . . , en ) ∈ M.
(1) B ⊆ M
Dass bedeutet, dass:
(2) für alle Elemente e1 , . . . , en ∈ A, und alle f ∈ Σ (mit Stelligkeit n), ist auch
f (e1 , . . . , en ) in A.
(1) A enthält die Basismenge B
M ist die kleinste aller Mengen A mit folgenden Eigenschaften:
e1 , . . . , en ∈ M, dann gilt f (e1 , . . . , en ) ∈ M.
B
Basismenge:
Induktive Definition einer Menge M aus einer Basismenge B mit Operationssymbole
(“Konstruktoren”) Σ (wobei a(f ) Stelligkeit von f für f ∈ Σ).
Induktive Definition von Mengen:
A
80
79
Wenn w ∈ Σ∗ und a ∈ Σ,
Erzeugungsregel:
rev(wa) = a rev(w ) mit w ∈
rev(ǫ) = ǫ
Σ∗
und a ∈ Σ.
Sei die Umkehrung (Reverse) eines Wortes wie folgt definiert:
dann gilt wa ∈ Σ∗
Das leere Wort ǫ ∈ Σ∗
Basismenge:
Σ∗ : die Menge aller Wörter über ein Alphabet Σ
Beispiel
A
Da M die kleinste aller Mengen mit Eigenschaften (1) und (2) ist, folgt, dass
M ⊆ A = {e | P(e) wahr }, d.h.
m ∈ M, P(m) wahr.
(2) Da wir, aus der Annahme dass P(e1 ), . . . , P(en ) wahr sind, beweisen können,
dass auch P(e) wahr ist, wissen wir, dass
falls e1 , . . . , en ∈ A, und f ∈ Σ (mit Stelligkeit n), so f (e1 , . . . , en ) in A.
(1) Da bewiesen werden kann, dass für alle b ∈ B, P(b) gilt, wissen wir, dass A die
Basismenge B enthält.
Beweis: Sei A = {e | P(e) wahr }.
Dann gilt P(m) für alle m ∈ M.
(Induktionsbasis)
(Induktionsvoraussetzung)
(Induktionsschritt)
(1) bewiesen werden kann, dass für alle b ∈ B, P(b) gilt.
82
81
beliebig.
wobei: p(w2 ) :
w2 ∈ Σ, p(w2 )
rev(w1 w2 )
rev(w1 (wa)) = rev((w1 w )a) = a rev(w1 w )
a rev(w )rev(w1 )
(a rev(w ))rev(w1 ) = rev(wa)rev(w1 )
rev(w2 )rev(w1 )
=
=
=
=
Induktionsschluss: Wir beweisen, dass dann p(w2 ) gilt.
84
(Definition von rev)
(Induktionsvoraussetzung)
(Definition von rev)
rev(w1 w2 ) = rev(w2 )rev(w1 )
Induktionsvoraussetzung: Wir nehmen an, dass p(w ) gilt,
d.h. dass rev(w1 w ) = rev(w )rev (w1 ).
(2) Sei w2 ∈ Σ∗ , w2 6= ǫ. Dann w2 = wa.
Zu zeigen:
wobei: p(w2 ) :
w1 , w2 ∈ Σ, rev(w1 w2 ) = rev(w2 )rev (w1 )
Sei w1 ∈ Σ∗ , beliebig.
Zu zeigen:
Beispiel
Beweis: rev(w1 ǫ) = rev(w1 ) = ǫrev (w1 ) = rev(ǫ)rev (w1 ).
83
rev(w1 w2 ) = rev(w2 )rev(w1 )
(1) Induktionsbasis: Wir zeigen, dass die Eigenschaft gilt für w2 = ǫ
(d.h. dass P(ǫ) : rev(w1 ǫ) = rev(ǫ)rev(w1 ) wahr ist).
Induktion über die Struktur von w2 .
Zu zeigen: w2 ∈ Σ∗ , p(w2 )
Sei w1 ∈
A
(2) falls e = f (e1 , . . . , en ) mit f ∈ Σ
unter der Annahme dass P(e1 ), . . . , P(en ) gelten
wir beweisen können, dass auch P(e) gilt
Beispiel
w1 , w2 ∈ Σ∗ , rev(w1 w2 ) = rev(w2 )rev (w1 )
Σ∗ ,
Zu zeigen:
A
Satz. Falls:
A
Strukturelle Induktion
A
B2
Falls B n ≥ 1 Blätter hat,
dann besitzt B genau n − 1 innere Knoten.
Beweis: Sei B Baum, der nur aus einem Knoten besteht.
Dann besteht T nur aus einem Blatt, und B hat keinen inneren Knoten. d.h.
P(B) gilt.
(1) Induktionsbasis: Wir zeigen, dass P(B) gilt wenn B nur aus einem Knoten ◦
besteht.
P(B) :
Behauptung:
Für alle B ∈ Bin, falls B n Blätter hat, so besitzt B genau n − 1 innere Knoten.
Beispiel 2
B1
Tree(B1 , B2 )
85
86
nach Induktionsvoraussetzung
1 + (n1 − 1) + (n2 − 1)
(n1 + n2 ) − 1 = n − 1.
=
=
• Strukturelle Induktion
• Fehlerquellen
• Induktion über die natürlichen Zahlen
• Grundlegende Beweisstrategien
Zusammenfassung
B ∈ Bin, P(B) gilt.
nach Definition von B = Tree(B1 , B2 )
1 + m1 + m2
=
Somit ist es bewiesen, dass
m
• mit m, m1 , m2 als Anzahl innerer Knoten von B, B1 bzw. B2 :
• n = n1 + n2 , wobei n, n1 , n2 Anzahl der Blätter von B, B1 bzw. B2 sind.
Beweis: Sei B = Tree(B1 , B2 ). Dann gilt:
Induktionsschluss: Wir beweisen, dass P(B) gilt.
Wenn B1 , B2 ∈ Bin, dann ist auch
Tree(B1 , B2 ) ∈ Bin.
Induktionsvoraussetzung: Wir nehmen an, dass P(B1 ), P(B2 ) gelten.
◦ Baum mit nur einem Knoten.
Erzeugungsregel:
(2) Sei B ∈ Bin, B nicht in der Basismenge, d.h. B = Tree(B1 , B2 ).
Beispiel 2 ... ctd.
Basismenge:
Bin : Menge allen (vollständigen) binären Bäume
Beispiel 2
A
88
87
Beispiel: Das 8-Damen Problem
Man platziere acht Damen so auf einem Schachbrett, dass sie sich
gegenseitig nicht bedrohen.
23.04.2013
Teil 1
2. Aussagenlogik
90
89
91
D57 → ¬D48 ∧ ¬D6,6 ∧ ¬D7,5 ∧ ¬D8,4
• keine andere Dame auf Feld (4,8), (6,6), (7,5), (8,4)
D57 → ¬D68 ∧ ¬D4,6 ∧ ¬D3,5 ∧ ¬D2,4 ∧ ¬D1,3
92
• keine andere Dame auf Feld (6,8), (4,6), (3,5), (2,4),(1,3)
D57 → ¬D17 ∧ ¬D2,7 ∧ ¬D3,7 ∧ ¬D4,7 ∧ ¬D6,7 ∧ ¬D7,7 ∧ ¬D87
• keine andere Dame auf Feld
(1,7), (2,7), (3,7), (4,7),(6,7), (7,7), (8,7)
D57 → ¬D58 ∧ ¬D5,6 ∧ ¬D5,5 ∧ ¬D5,4 ∧ ¬D5,3 ∧ ¬D5,2 ∧ ¬D5,1
• keine andere Dame auf Feld
(5,8), (5,6), (5,5), (5,4),(5,3), (5,2), (5,1)
Falls auf dem Feld (5, 7) eine Dame steht:
Einschränkungen pro Feld: Fij
Beispiel: Auf dem Feld (5, 7) steht eine Dame 7→ D57 wahr.
Beispiel: Das 8-Damen Problem
Wir benutzen kartesische Koordinaten zur Notation von Positionen
Mit der Vorstellung, dass Dij den Wert wahr hat, wenn auf dem Feld (i, j)
eine Dame steht.
Dij
Für jedes Feld des Schachbretts eine aussagenlogische Variable
Beschreibung des Problems
Beispiel: Das 8-Damen Problem
{z
F57
}
ist.
• Rk für alle 1 ≤ k ≤ 8
• Fij für alle 1 ≤ i, j ≤ 8
Lösung des 8-Damen Problems:
Eine aussagenlogische Struktur beschreibt eine Lösung des 8-DamenProblems genau dann, wenn sie ein Modell der Formeln
⊥ Symbol für die Formel “falsch”
( ) die beiden Klammern
↔ Symbol für Äquivalenz (“genau dann, wenn”)
→ Implikationssymbol (“wenn . . . dann”)
∨ Disjunktionssymbol (“oder”)
∧ Konjunktionssymbol (“und”)
¬ Negationssymbol (“nicht”)
⊤ Symbol für die Formel “wahr”
Syntax der Aussagenlogik: Logische Zeichen
Modell für Fij (Rk ): Wahrheitswerte für die atomaren Aussagen Dij so dass
Fij wahr (bzw. Rk wahr).
94
93
Ableitung neuer wahrer Formeln
• Deduktionsmechanismus
Wann ist eine Formel wahr (in einer Struktur)?
Modelle (Strukturen)
• Semantik
welche Formeln?
• Syntax
Formale Logik
Struktur: Wahrheitswerte für die atomaren Aussagen Dij
Beispiel: Das 8-Damen Problem
Rk := D1,k ∨ D2,k ∨ D3,k ∨ D4,k ∨ D5,k ∨ D6,k ∨ D7,k ∨ D8,k
Für jedes k mit 1 ≤ k ≤ 8:
Globale Einschränkungen
|
D57 → ¬D48 ∧ ¬D6,6 ∧ ¬D7,5 ∧ ¬D8,4
D57 → ¬D68 ∧ ¬D4,6 ∧ ¬D3,5 ∧ ¬D2,4 ∧ ¬D1,3
D57 → ¬D17 ∧ ¬D2,7 ∧ ¬D3,7 ∧ ¬D4,7 ∧ ¬D6,7 ∧ ¬D7,7 ∧ ¬D87
D57 → ¬D58 ∧ ¬D5,6 ∧ ¬D5,5 ∧ ¬D5,4 ∧ ¬D5,3 ∧ ¬D5,2 ∧ ¬D5,1
Einschränkungen pro Feld: Fij
Beispiel: Auf dem Feld (5, 7) steht eine Dame 7→ D57 wahr.
Beispiel: Das 8-Damen Problem
96
95
Π = {P0 , P1 , . . . }
Elemente von ForΠ .
¬F , (F ∧ G ), (F ∨ G ), (F → G ), (F ↔ G )
• Wenn F , G ∈ ForΠ , dann auch
• Π ⊆ ForΠ
• ⊤ ∈ ForΠ und ⊥∈ ForΠ
Die kleinste Menge mit:
Definition: Menge ForΠ der Formeln über Π:
Formeln der Aussagenlogik
• Aussagenvariablen
• Atome
• atomare Aussagen
Bezeichnungen für Symbole in Π
oder
Π = {P0 , . . . , Pn }
Abzählbare Menge von Symbolen, etwa
Vokabular der Aussagenlogik
98
97
(F ↔ G )
|
(Äquivalenz)
(Implikation)
(Disjunktion)
(Konjunktion)
(Negation)
(atomare Formel)
(Verum)
(Falsum)
>p
∧
>p
∨
>p
→
>p
– ∨ und ∧ sind assoziativ und kommutativ,
– ¬
↔
(Präzedenzen),
• Klammereinsparungen werden nach folgenden Regeln vorgenommen:
Konventionen zur Notation
(F → G )
(F ∧ G )
|
(F ∨ G )
¬F
|
|
P,
|
|
⊤
|
P∈Π
⊥
::=
Menge der Formeln über Π:
F, G, H
ForΠ
Aussagenformeln
100
99
>p
∧
>p
∨
>p
→
>p
↔
sind Formeln
D57 → ¬D58 ∧ ¬D5,6 ∧ ¬D5,5 ∧ ¬D5,4 ∧ ¬D5,3 ∧ ¬D5,2 ∧ ¬D5,1
“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”:
Formeln
Beispiel 1
B 7→ falsch, F 7→ wahr, E 7→ wahr
B 7→ wahr, F 7→ wahr, E 7→ falsch
• Bier, Fisch, keine Eiscreme
erfüllt alle Diätregeln
Formalisierung:
• kein Bier, Fisch und Eiscreme
erfüllt 3. Diätregel nicht!
z.B.:
Wir möchten wissen, welche Menüs solche Diätregeln erfüllen.
◮ E ∨¬B→ ¬F
◮ F ∧B→ ¬E
◮ E ∨¬B→ ¬F
Wenn ich Eiscreme habe oder Bier meide, dann rühre ich Fisch nicht an.
◮ F ∧B→ ¬E
Immer wenn ich Fisch und Bier zur selben Mahlzeit habe, verzichte ich
auf Eiscreme.
◮ ¬B→F
◮ ¬B→F
102
101
Beispiel 1
Wenn ich kein Bier zu einer Mahlzeit trinke, dann habe ich immer Fisch.
Di,j bedeutet: Auf dem Feld (i, j) steht eine Dame.
(Präzedenzen),
Aussagenlogische Variablen
Beispiel: 8-Damenproblem
Wir schreiben P ∧ Q ∧ R statt (P ∧ Q) ∧ R.
⊥, P, ¬Q, P ∧ ¬Q, (P ∨ (¬R ∧ ⊤))
Beispiele: Π = {P, Q, R}
– ∨ und ∧ sind assoziativ und kommutativ,
– ¬
• Klammereinsparungen werden nach folgenden Regeln vorgenommen:
Konventionen zur Notation
104
103
Wir werden Wertebelegungen auch Aussagenlogische Strukturen,
Aussagenlogische Modelle oder Interpretationen nennen.
A : Π → {0, 1}
Eine Valuation (Wertebelegung) ist eine Abbildung
Hierfür müssen Wertebelegungen (Valuationen) explizit oder implizit aus
dem Kontext zur Verfügung stehen.
Aussagenvariablen für sich haben keine Bedeutung.
Π eine aussagenlogische Signatur
Semantik der Aussagenlogik
A(B) = 1, A(F ) = 1, A(E ) = 0
• Bier, Fisch, keine Eiscreme
erfüllt alle Diätregeln
A : {B, F , E } → {0, 1}
A(B) = 0, A(F ) = 1, A(E ) = 1
0:falsch, 1:wahr
Formalisierung:
• kein Bier, Fisch und Eiscreme
erfüllt 3. Diätregel nicht!
z.B.:
Wir möchten wissen, welche Menüs solche Diätregeln erfüllen.
◮ E ∨¬B→ ¬F
◮ F ∧B→ ¬E
◮ ¬B→F
Beispiel 1
106
105
1
0
0
C
Semantik der Aussagenlogik
(Bei drei Symbolen gibt es 8 mögliche Modelle)
A∗ (P) = A(P)
A∗ (⊤) = 1
A∗ (⊥) = 0
A∗ : ForΠ → {0, 1} wird wie folgt definiert:
Sei A : Π → {0, 1} eine Wertebelegung.
Auswertung von Formeln
B
A
Beispiel:
A : Π → {0, 1}
Eine Wertebelegung ist eine Abbildung
Hierfür müssen Wertebelegungen (Valuationen) explizit oder implizit aus
dem Kontext zur Verfügung stehen.
Aussagenvariablen für sich haben keine Bedeutung.
Π eine aussagenlogische Signatur
Semantik der Aussagenlogik
108
107

 0
 1
A∗ (F )
falls
=0
A∗ (F ) = 1
falls
109
A∗ (F1 ) = A∗ (F2 ) = 0
A∗ (F1 ) = 1 oder A∗ (F2 ) = 1
falls
falls

 0
A (F1 ∧ F2 ) =
 1
∗
A∗ (F1 ) = 0 oder A∗ (F2 ) = 0
A∗ (F1 ) = A∗ (F2 ) = 1
falls
falls

 1
A (F1 → F2 ) =
 0

 1
A∗ (F1 ↔ F2 ) =
 0
sonst
falls
falls
falls
A∗ (F1 ) = A∗ (F2 )
A∗ (F1 ) = 1 und A∗ (F2 ) = 0
A∗ (F1 ) = 0 oder A∗ (F2 ) = 1
A∗ : ForΠ → {0, 1} wird wie folgt definiert:
∗
Sei A : Π → {0, 1} eine Wertebelegung.
A∗
: ForΠ → {0, 1} wird wie folgt definiert:
Auswertung von Formeln
Sei A : Π → {0, 1} eine Wertebelegung.
110
A∗ (F1 ) = A∗ (F2 ) = 1
A∗ (F1 ) = 0 oder A∗ (F2 ) = 0
falls
falls
Semantik der Aussagenlogik

 0
 1

 0
∗
A (F1 ∨ F2 ) =
 1
A∗ (F1 ∧ F2 ) =
Auswertung von Formeln
Semantik der Aussagenlogik
A∗ (¬F ) =
Sei A : Π → {0, 1} eine Wertebelegung.
A∗ : ForΠ → {0, 1} wird wie folgt definiert:
Sei A : Π → {0, 1} eine Wertebelegung.
Auswertung von Formeln
Semantik der Aussagenlogik
A∗ : ForΠ → {0, 1} wird wie folgt definiert:
Auswertung von Formeln
Semantik der Aussagenlogik
112
111
1
1
0
0
1
0
1
→
0
1
1
0
0
1
1
0
1
0
↔
0
1
0
0
1
0
∨
1
0
1
1
1
1
Wir schreiben normalerweise A statt A∗ .
z.B. : B∨ (0, 1) = (0 ∨ 1) = 1; B→ (1, 0) = (1 → 0) = 0
Bρ (x, y ) berechnet entschpr. der Wahrheitstafel für ρ
A∗ (F ρG ) = Bρ (A∗ (F ), A∗ (G ))
A∗ (¬F ) = 1 − A∗ (F )
A∗ (P) = A(P)
A (⊤) = 1
∗
A (⊥) = 0
∗
Sei A : Π → {0, 1} eine Π-Valuation.
A∗ : ForΠ → {0, 1} wird induktiv über Aufbau von F wie folgt definiert:
Auswertung von Formeln
Semantik der Aussagenlogik
1
1
0
0
0
1
0
∧
¬P
P
Wahrheitstafel für die logischen Operatoren
114
113
0
0
1
0
0
1
0
0
1
1
1
1
1
1
0
0
1
1
1
0
0
1
0
B
A
C
1
1
1
1
1
0
1
0
(A ∨ C )
F = (A ∨ C ) ∧ (B ∨ ¬C )
0
(1 ∧ (0 ∨ ¬1)) → 1
1
=
(A(P) ∧ (A(Q) ∨ ¬A(P))) → A(R)
(A∗ (P) ∧ A∗ (Q ∨ ¬P)) → A∗ (R)
A∗ (P ∧ (Q ∨ ¬P) → A∗ (R)
=
=
=
=
0
1
0
1
0
1
0
1
¬C
1
1
0
1
1
1
0
1
(B ∨ ¬C )
1
1
0
1
1
0
0
0
(A ∨ C ) ∧ (B ∨ ¬C )
Wahrheitstabellen: Beispiel
A∗ ((P ∧ (Q ∨ ¬P)) → R)
Sei A : {P, Q, R} → {0, 1} mit A(P) = 1, A(Q) = 0, A(R) = 1.
Beispiel
116
115
1
0
1
0
1
0
1
1
0
0
1
1
0
0
0
1
1
1
1
1
1
1
1
1
0
1
0
(A ∨ C )
0
1
0
1
0
1
0
1
¬C
1
1
0
1
1
1
0
1
(B ∨ ¬C )
Beispiel
1
1
0
1
1
0
0
0
(A ∨ C ) ∧ (B ∨ ¬C )
A |= {(A ∨ C ), (B ∨ ¬C )}
A |= (A ∨ C ) ∧ (B ∨ ¬C )
Sei A : {P, Q, R} → {0, 1} mit A(P) = 0, A(Q) = 1, A(R) = 1.
1
0
0
0
0
C
B
A
F = (A ∨ C ) ∧ (B ∨ ¬C )
A |= M
Notation:
A |= F
A∗ (F ) = 1 für alle F ∈ M
Definition: Interpretation A ist Modell einer Formelmenge M ⊆ ForΠ , falls
A (F ) = 1.
∗
Definition: Interpretation A ist Modell einer Formel F ∈ ForΠ , falls
Modell einer Formel(menge)
118
117
gdw.
gdw.:
A |=
A(F ) = 1.
1
1
0
0
1
1
0
0
B
1
0
1
0
1
0
1
0
C
1
1
1
1
1
0
1
0
(A ∨ C )
0
1
0
1
0
1
0
1
¬C
1
1
0
1
1
1
0
1
(B ∨ ¬C )
1
1
0
1
1
0
0
0
(A ∨ C ) ∧ (B ∨ ¬C )
F ist erfüllbar (also ist F nicht unerfüllbar):
A2 (F ) = 1 für A : {P, Q, R} → {0, 1} mit A(P) = 0, A(Q) = 1, A(R) = 1.
F ist nicht allgemeingültig:
A1 (F ) = 0 für A1 : {P, Q, R} → {0, 1} mit A(P) = A(Q) = A(R) = 0.
1
1
1
1
0
0
0
0
A
F = (A ∨ C ) ∧ (B ∨ ¬C )
Beispiel
Sonst heißt F unerfüllbar (oder eine Kontradiktion).
Definition: F heißt erfüllbar gdw. es A : Π → {0, 1} gibt, so dass A |= F .
Notation: |= F
Definition: F ist (allgemein-) gültig (oder eine Tautologie)
F , für alle A : Π → {0, 1}
Notation: A |= F
Definition: F gilt in A (oder A ist Modell von F )
Gültigkeit und Erfüllbarkeit
120
119
1
1
1
1
122
0
0
1
(((p → q) ∧ (q → r )) ∧ p) → r
(6)
0
1
1
0
0
1
1
1
0
0
0
0
0
1
1
0
0
C
B
A
1
1
1
1
0
1
0
1
(A ∨ C )
1
1
1
0
1
1
1
0
(B ∨ ¬C )
1
1
1
0
0
1
0
0
(A ∨ C ) ∧ (B ∨ ¬C )
G = (A ∨ B)
Überprüfe, ob F |= G : Ja, F |= G
F = (A ∨ C ) ∧ (B ∨ ¬C )
Beispiel
Erweiterung auf Formelmengen N in natürlicher Weise, z.B.:
N |= G
gdw.:
für alle A : Π → {0, 1} gilt:
falls A |= F , für alle F ∈ N,
so A |= G .
Notation: F ≡ G .
Definition: F und G sind äquivalent
gdw.: für alle A : Π → {0, 1} gilt: A |= F gdw. A |= G .
Notation: F |= G
(p → q) → [(q → r ) → (p → r )]
q → (p ∨ q)
p → (p ∨ q)
121
Folgerung und Äquivalenz
1
1
1
1
1
1
0
0
(A ∨ B)
Definition: F impliziert G (oder G folgt aus F ),
gdw.: für alle A : Π → {0, 1} gilt: Wenn A |= F , dann A |= G .
(5)
(4)
(p ∧ (p → q)) → q
(p ∧ q) → p
(2)
(3)
(p ∧ q) → q
(p → ¬p) → (¬p)
(1)
Die folgenden Formeln sind Tautologien:
Beispiele
• Die Negation einer Kontradiktion ist eine Tautologie
• Die Negation einer Tautologie ist eine Kontradiktion
Beispiel: p ∧ ¬p
Kontradiktionen: Formel, die stets falsch sind.
p ↔ ¬¬p (Prinzip der doppelten Negation)
Beispiele: p ∨ (¬p) (Prinzip vom ausgeschlossenen Dritten)
(Tertium non datur)
Tautologien: Formel, die stets wahr sind.
Tautologien und Kontradiktionen
124
123
G = (A ∨ B)
0
0
1
1
0
0
1
1
0
0
0
0
1
1
1
1
0
1
0
1
0
1
0
1
C
1
1
1
0
0
1
0
0
(A ∨ C ) ∧ (B ∨ ¬C )
Zusammenfassung
1
1
1
0
1
1
1
0
(B ∨ ¬C )
Folgerung und Äquivalenz
Tautologien und Kontradiktionen
Gültigkeit und Erfüllbarkeit
Modell einer Formel(menge)
Auswertung von Formeln / Wahrheitstabellen
Wahrheitstafel für die logischen Operatoren
Wertebelegungen (Valuationen, Modelle)
• Semantik
1
1
1
1
0
1
0
1
(A ∨ C )
• Syntax (Formeln)
B
A
Überprüfe, ob F |= G : Ja, F |= G
.... aber es ist nicht wahr dass G |= F (Notation: G 6|= F )
F = (A ∨ C ) ∧ (B ∨ ¬C )
Beispiel
1
1
1
1
1
1
0
0
(A ∨ B)
126
125
127
128
gdw. A(¬F )=0 für alle A:Π→{0, 1} gdw. ¬F unerfüllbar
Beweis 1: Aus der Wahrheitstafel.
Beweis 2: F allgemeingültig gdw. A(F )=1 für alle A:Π→{0, 1}
Theorem. F ist allgemeingültig gdw. ¬F ist unerfüllbar.
• Die Negation einer Tautologie ist eine Kontradiktion
• Die Negation einer Kontradiktion ist eine Tautologie
Kontradiktionen, unerfüllbare Formeln:
Formel, die stets falsch sind.
Tautologien, allgemeingültige Formeln:
Formeln, die stets wahr sind.
Tautologien und Kontradiktionen
30.04.2012
Teil 2
2. Aussagenlogik
Erweiterung auf Formelmengen N in natürlicher Weise, z.B.:
N |= G
gdw.:
für alle A : Π → {0, 1} gilt:
falls A |= F , für alle F ∈ N,
so A |= G .
Notation: F |= G
Definition: F impliziert G (oder G folgt aus F ),
gdw.: für alle A : Π → {0, 1} gilt: Wenn A |= F , dann A |= G .
Folgerung
Es existieren viel bessere Methoden als Wahrheitstafeltests um die
Erfüllbarkeit einer Formel zu überprüfen.
⇒ Das Erfüllbarkeitsproblem ist entscheidbar
(Cook’s Theorem: NP-vollständig)
⇒ Wahrheitstafel
⇒ 2n Wertbelegungen notwendig um zu überprüfen,
ob F erfüllbar ist oder nicht.
F enthält n Aussagenvariablen:
Erfüllbarkeitstest:
Jede Formel F enthält endlich viele Aussagenvariablen.
A(F ) ist nur von den Werten dieser Aussagenvariablen abhängig.
Erster Kalkül: Wahrheitstafelmethode
130
129
(Kontraposition)
Wichtige Äquivalenzen
(P → Q) ≡ (¬Q → ¬P)
(F ∨ (G ∧ H)) ≡ ((F ∨ G ) ∧ (F ∨ H))
(F ∧ (G ∨ H)) ≡ ((F ∧ G ) ∨ (F ∧ H))
(F ∨ (F ∧ G )) ≡ F
(F ∧ (F ∨ G )) ≡ F
(F ∨ (G ∨ H)) ≡ ((F ∨ G ) ∨ H)
(F ∧ (G ∧ H)) ≡ ((F ∧ G ) ∧ H)
(F ∨ G ) ≡ (G ∨ F )
(F ∧ G ) ≡ (G ∧ F )
(F ∨ F ) ≡ F
(F ∧ F ) ≡ F
(Distributivität)
(Absorption)
(Assoziativität)
(Kommutativität)
(Idempotenz)
Die folgenden Äquivalenzen sind für alle Formeln F , G , H gültig:
Beispiel:
Zwei Formeln sind logisch äquivalent, wenn sie in den gleichen Modellen
wahr sind
Notation: F ≡ G .
Definition: F und G sind äquivalent
gdw.: für alle A : Π → {0, 1} gilt: A |= F gdw. A |= G .
Äquivalenz
132
131
(Elimination Äquivalenz)
F ↔ G ≡ (F → G ) ∧ (G → F )
(F ∨ G ) ≡ F , falls G unerfüllbar
(F ∧ G ) ≡ ⊥, falls G unerfüllbar
(F ∨ G ) ≡ ⊤, falls G Tautologie
(F ∧ G ) ≡ F , falls G Tautologie
(Tautologieregeln)
(Tautologieregeln)
Die folgenden Äquivalenzen sind für alle Formeln F , G , H gültig:
Wichtige Äquivalenzen
(Elimination Implikation)
(Kontraposition)
(F → G ) ≡ (¬G → ¬F )
(F → G ) ≡ (¬F ∨ G )
(De Morgan’s Regeln)
(Doppelte Negation)
¬(F ∨ G ) ≡ (¬F ∧ ¬G )
¬(F ∧ G ) ≡ (¬F ∨ ¬G )
(¬¬F ) ≡ F
Die folgenden Äquivalenzen sind für alle Formeln F , G , H gültig:
Wichtige Äquivalenzen
134
133
(Tertium non datur)
(F ∨ F ) ≡ F
(F ∨ G ) ≡ (G ∨ F )
F ↔ G ≡ (F → G ) ∧ (G → F )
(F → G ) ≡ (¬F ∨ G )
(F → G ) ≡ (¬G → ¬F )
¬(F ∨ G ) ≡ (¬F ∧ ¬G )
¬(F ∧ G ) ≡ (¬F ∨ ¬G )
(¬¬F ) ≡ F
(F ∨ (G ∧ H)) ≡ ((F ∨ G ) ∧ (F ∨ H))
(F ∧ (G ∨ H)) ≡ ((F ∧ G ) ∨ (F ∧ H))
(F ∨ (F ∧ G )) ≡ F
(F ∧ (F ∨ G )) ≡ F
(F ∨ (G ∨ H)) ≡ ((F ∨ G ) ∨ H)
(F ∧ (G ∧ H)) ≡ ((F ∧ G ) ∧ H)
(F ∧ F ) ≡ F
(F ∧ G ) ≡ (G ∧ F )
(Elimination Äquivalenz)
(Elimination Implikation)
(Kontraposition)
(De Morgan’s Regeln)
(Doppelte Negation)
(Distributivität)
(Absorption)
(Assoziativität)
(Kommutativität)
(Idempotenz)
Wichtige Äquivalenzen (Zusammengefasst)
(A ∧ ⊥) ≡ ⊥
(A ∧ ⊤) ≡ A
(A ∨ ¬A) ≡ ⊤
(A ∧ ¬A) ≡ ⊥
Wichtige Äquivalenzen mit ⊤/⊥
136
135







→
H Teilformel von F
H Teilformel von F
(C ∧ (A ∨ B)) ≡ (C ∧ (B ∨ A))
impliziert
A∨B ≡B ∨A
Beispiel:
Dann ist H äquivalent zu H ′ , wobei H ′ aus H hervorgeht, indem (irgend)
ein Vorkommen von F in H durch G ersetzt wird.
Theorem.
Seien F und G äquivalente Formeln. Sei H eine Formel mit (mindestens)
einem Vorkommen der Teilformel F .
Substitutionstheorem
H Teilformel von F1 oder F2
(wo ρ ∈ {∨, ∧, ⇒, ⇔})
• F = F1 ρ F2
• F ist eine Teilformel von F


• F = ¬G und
→
H Teilformel von G 
Eine Formel F , die als Teil einer Formel G auftritt,
heißt Teilformel von G .
Terminologie
138
137
Annahme: p(H ′ ) gilt für alle dir. Teilformeln H ′ von H.
′
I .V .
139
Somit ist bewiesen, dass H ≡ H .
140
Dann für alle A : Π → {0, 1}: A(H)=A(¬H1 )=¬A(H1 ) = ¬A(H1′ )=A(¬H1′ )=A(H ′ ).
Da H = ¬H1 , ist H ′ = ¬H1′ .
Fall 2.1: H = ¬H1 . Da F 6= H, ist F eine Teilformel von H1 .
Induktionvoraussetzung: p(H1 ) gilt, d.h. H1 ≡ H1′ , wobei H1′ aus H1 hervorgeht,
indem (irgend) ein Vorkommen von F in H1 durch G ersetzt wird.
Induktionsschritt: Beweis, dass p(H) gilt (durch Fallunterscheidung):
Induktionsvoraussetzung:
Fall 2: F 6= H.
Fall 1: F = H. Dann H ′ = G (wie vorher), so H = F ≡ G = H ′ .
Beweis: (Fortsetzung)
Sei H eine Formel, H 6∈ {⊥, ⊤} ∪ Π. Sei F eine Teilformel von H.
Substitutionstheorem
Aber dann: H = F ≡ G = H ′ .
Beweis: Falls H∈{⊥, ⊤}∪Π und F Teilformel von H, so muss F = H sein.
Dann ist die Formel H ′ , die aus H hervorgeht, indem F (= die ganze
Formel H) durch G ersetzt wird, gleich G .
Induktionsbasis: Beweisen, dass p(H) für alle Formeln H in {⊥, ⊤} ∪ Π gilt.
Beweis: Strukturelle Induktion.
Dann ist H äquivalent zu H ′ , wobei H ′ aus H hervorgeht, indem (irgend)
p(H)
ein Vorkommen von F in H durch G ersetzt wird.
Theorem.
Seien F und G äquivalente Formeln. Sei H eine Formel mit (mindestens)
einem Vorkommen der Teilformel F .
Substitutionstheorem
I .V .
Wenn F und G logisch äquivalent sind, kann F in G umgeformt werden.
Theorem
Äquivalenzumformung bildet mit den aufgelisteten wichtigen Äquivalenzen einen vollständigen Kalkül:
• Anwendung des Substitutionstheorems
• (Wiederholte) Ersetzung einer (Unter-)Formel durch äquivalente
Formel
Definition: Äquivalenzumformung
Ein zweiter Kalkül: Logische Umformung
Fall 2.2.2 F ist eine Teilformel von H2 . Analog.
Somit ist bewiesen, dass H ≡ H .
′
Dann für alle A : Π → {0, 1}: A(H)=A(H1 op H2 )=A(H1 ) op A(H2 ) =
A(H1′ ) op A(H2 )=A(H1′ op H2 ) = A(H ′ ).
Da H = H1 op H2 , und F in H1 vorkommt, so H ′ = H1′ op H2 .
Fall 2.2.1 F ist eine Teilformel von H1 .
Induktionvoraussetzung: p(H1 ) gilt, d.h. H1 ≡ H1′ , wobei H1′ aus H1 hervorgeht,
indem (irgend) ein Vorkommen von F in H1 durch G ersetzt wird.
Fall 2.2: H = H1 op H2 . Da F 6= H, ist F Teilformel von H1 oder von H2 .
Beweis: (Fortsetzung)
Induktionsschritt: Beweis, dass p(H) gilt (durch Fallunterscheidung):
Substitutionstheorem
142
141
((¬Q ∨ R) ∧ (¬¬P ∧ ¬R))
(Äquivalenzen mit ⊥)
(Kommutativität)
(Distributivität)
(Äquivalenzen mit ⊥)
(Kommutativität)
(Distributivität)
(Doppelte Negation)
F |= G
Beweis:
(Äquivalenzen mit ⊥)
Allgemeingültigkeit/Folgerung
für alle A : Π → {0, 1}, A(F → G ) = 1
g.d.w. |= F → G
g.d.w.
für alle A : Π → {0, 1}, falls A(F ) = 1 so A(G ) = 1
für alle A : Π → {0, 1}, (A(F ) → A(G )) = 1
g.d.w.
g.d.w.
Theorem. F |= G gdw. |= F → G .
F , G Formeln
≡ ⊥ ∨ ⊥≡⊥
144
143
(Doppelte Negation, De Morgan, ∨)
(De Morgan’s Regel,∨)
(Elimination Implikation)
(Elimination Implikation)
≡ ((¬P ∧ P) ∧ ¬Q ∧ ¬R) ∨ ((Q ∧ ¬Q) ∧ P ∧ ¬R) (Assoziativität)
≡ (¬P ∧ P ∧ ¬Q ∧ ¬R) ∨ (Q ∧ ¬Q ∧ P ∧ ¬R)
≡ (¬P ∧ ¬Q ∧ P ∧ ¬R) ∨ (Q ∧ ¬Q ∧ P ∧ ¬R)
≡ (¬P ∨ Q) ∧ (¬Q ∧ P ∧ ¬R)
≡ (¬P ∨ Q) ∧ ((¬Q ∧ P ∧ ¬R) ∨ ⊥)
≡ (¬P ∨ Q) ∧ ((¬Q ∧ P ∧ ¬R) ∨ (R ∧ ¬R ∧ P))
≡ (¬P ∨ Q) ∧ ((¬Q ∧ P ∧ ¬R) ∨ (R ∧ P ∧ ¬R))
≡ (¬P ∨ Q) ∧ ((¬Q ∨ R) ∧ (P ∧ ¬R))
≡ (¬P ∨ Q) ∧
≡ (¬P ∨ Q) ∧ (¬¬(¬Q ∨ R) ∧ ¬(¬P ∨ R))
≡ (¬P ∨ Q) ∧ ¬(¬(¬Q ∨ R) ∨ (¬P ∨ R))
≡ (¬P ∨ Q) ∧ ¬((¬Q ∨ R) → (¬P ∨ R))
(P → Q) ∧ ¬((Q → R) → (P → R))
Beispiel
Es folgt, dass 1 = A(F → G ) = (A(F ) → A(G )) = (1 → A(G )) = A(G ),
so A(G ) = 1.
Dann (i) A(F ) = 1 und
(ii) [A(H) = 1 für alle Formeln H ∈ N], also A(F → G ) = 1.
Sei A : Π → {0, 1} mit A(H) = 1 für alle Formeln H ∈ N ∪ {F }.
Wir beweisen, dass N ∪ {F } |= G , d.h. für alle A : Π → {0, 1}
falls [A(H) = 1 für alle Formeln H ∈ N ∪ {F }] so A(G ) = 1.
Annahme: N |= F → G d.h. für alle A:Π→{0, 1},
falls [A(H)=1 für alle Formeln H∈N] so A(F → G )=1.
Beweis: “⇐”
Theorem. N ∪ {F } |= G gdw. N |= F → G .
F , G Formeln; N Formelmenge.
Allgemeingültigkeit/Folgerung
Fall 2: A(F ) = 1, d.h. [A(H) = 1 für alle Formeln H ∈ N ∪ {F }]. Dann
A(G ) = 1 und somit A(F → G ) = 1.
Fall 1: A(F ) = 0. Dann A(F → G ) = 1.
Sei A : Π → {0, 1} mit A(H) = 1 für alle Formeln H ∈ N.
Wir beweisen, dass N |= F → G , d.h. für alle A : Π → {0, 1}
falls [A(H) = 1 für alle Formeln H ∈ N] so A(F → G ) = 1.
Annahme: N ∪ {F } |= G d.h. für alle A:Π→{0, 1},
falls [A(H)=1 für alle Formeln H∈N∪{F }] so A(G )=1.
Beweis: “⇒”
Theorem. N ∪ {F } |= G gdw. N |= F → G .
F , G Formeln; N Formelmenge.
Allgemeingültigkeit/Folgerung
146
145
g.d.w. für alle A : Π → {0, 1}, A(F ) = A(G )
|= F ↔ G
Allgemeingültigkeit/Folgerung:
Zusammenfassung
g.d.w.
g.d.w. für alle A : Π → {0, 1}, A(F ↔ G ) = 1
g.d.w. für alle A : Π → {0, 1}, (A(F ) ↔ A(G )) = 1
Theorem. F ≡ G gdw. |= F ↔ G .
Theorem. N ∪ {F } |= G gdw. N |= F → G .
Theorem. F |= G gdw. |= F → G .
F , G Formeln; N Formelmenge.
F ≡F
Beweis:
Theorem. F ≡ G gdw. |= F ↔ G .
F , G Formeln.
Allgemeingültigkeit/Folgerung
148
147
¬(F → G ) unerfüllbar.
F ∧ ¬G unerfüllbar.
gdw.
gdw.
d.h. F → G allgemeingültig
|= F → G
gdw.
Dann [A(H)=1 für alle Formeln H∈N] und A(¬G ) = 1 (d.h.
A(G ) = 0). Widerspruch.
Beweis durch Widerspruch: Wir nehmen an, N ∪ ¬G erfüllbar,
d.h. es gibt A:Π→{0, 1}, mit
[A(H)=1 für alle Formeln H∈N ∪ {¬G }].
Zu zeigen: N ∪ ¬G unerfüllbar.
Annahme: N |= G d.h. für alle A:Π→{0, 1},
falls [A(H)=1 für alle Formeln H∈N] so A(G )=1.
Beweis: “⇒”
Theorem. N |= G gdw. N ∪ ¬G ist unerfüllbar.
F , G Formeln; N Formelmenge.
Unerfüllbarkeit/Allgemeingültigkeit/Folgerung
... da ¬(F → G ) ≡ ¬(¬F ∨ G ) ≡ ¬¬F ∧ ¬G ≡ F ∧ ¬G .
F |= G
Beweis:
Theorem. F |= G gdw. F ∧ ¬G ist unerfüllbar.
Beweis auf Seite 128.
Theorem. F ist allgemeingültig gdw. ¬F ist unerfüllbar.
F , G Formeln.
Unerfüllbarkeit/Allgemeingültigkeit/Folgerung
150
149
Notation: N |= ⊥ für N unerfüllbar.
Nota bene: falls N unerfüllbar, so N |= G für jede Formel G
... auch für ⊥.
Theorem. N |= G gdw. N ∪ ¬G ist unerfüllbar.
Theorem. F |= G gdw. F ∧ ¬G ist unerfüllbar.
Theorem. F ist allgemeingültig gdw. ¬F ist unerfüllbar.
F , G Formeln; N Formelmenge.
Unerfüllbarkeit/Allgemeingültigkeit/Folgerung:
Zusammenfassung
Es folgt, dass A(G ) = 1.
Falls A(G ) = 0, wäre A ein Modell für N ∪ {¬G }. Das ist
aber unmöglich, da wir angenommen haben, dass N ∪ {¬G }
unerfüllbar ist.
Beweis: Sei A:Π→{0, 1}, mit [A(H)=1 für alle Formeln H∈N].
Zu zeigen: N |= G d.h. für alle A:Π→{0, 1},
falls [A(H)=1 für alle Formeln H∈N] so A(G )=1.
Annahme: N ∪ ¬G unerfüllbar.
Beweis: “⇐”
Theorem. N |= G gdw. N ∪ ¬G ist unerfüllbar.
F , G Formeln; N Formelmenge.
Unerfüllbarkeit/Allgemeingültigkeit/Folgerung
152
151
06.05.2013
Teil 3
2. Aussagenlogik
• Unerfüllbarkeit/Allgemeingültigkeit/Folgerung
• Ein zweiter Kalkül: Logische Umformung
• Wichtige Äquivalenzen
153
154
Literale: P, ¬P, Q, ¬Q, R, ¬R
Atome: P, Q, R
Beispiel. Sei Π = {P, Q, R}.
Negation eines Atoms
• Literal: Atom, oder
Definition:
• Atom: aussagenlogische Variable
Normalformen
Dazu brauchen wir “Normalformen”
(für Formeln und/oder Formelmengen)
• Folgerung, Äquivalenz
Kalkül(e) zur systematischen Überprüfung von Erfüllbarkeit
• Erster Kalkül: Wahrheitstafelmethode
Unser Ziel
• Erfüllbarkeit, Allgemeingültigkeit
Zusammenfassung
156
155
• Solche Formeln können durch Umformungen hergestellt werden
⊤
P ∧P
P ∧Q
P ∧ (Q ∨ R)
P ∨Q
• Solche Formeln können aus einer Wahrheitstafel abgelesen werden
• Diese äquivalenten Formeln in DNF bzw. KNF sind nicht eindeutig
• Zu jeder aussagenlogischen Formel gibt es:
- eine äquivalente Formel in KNF
- eine äquivalente Formel in DNF
Eigenschaften:
Normalformen
(P ∨ ¬Q) ∧ (Q ∨ ¬R ∨ ¬S)
158
157
⊥
P ∨P
P ∨Q
P ∨ (Q ∧ R)
P ∧Q
(P ∧ ¬Q) ∨ (Q ∧ ¬R ∧ ¬S)
Beispiele:
mehrstellig, einstellig oder nullstellig
Disjunktive Normalform (DNF): Eine Disjunktion von Konjunktionen von
Literalen.
Definition:
Normalformen
Beispiele:
mehrstellig, einstellig oder nullstellig
Konjunktive Normalform (KNF): Eine Konjunktion von Disjunktionen von
Literalen, d.h., eine Konjunktion von Klauseln
Definition:
Normalformen
• die nullstellige Disjunktion (leere Klausel) ⊥
• einstellige Disjunktionen P
• mehrstellige Disjunktionen (P ∨ ¬Q ∨ R), (P ∨ P ∨ ¬Q)
Klausel: Eine Disjunktion von Literalen
Definition:
Negation eines Atoms
• Literal: Atom, oder
Definition:
• Atom: aussagenlogische Variable
Normalformen
160
159
1
1
0
0
1
1
0
0
1
1
1
1
1
1
1
1
1
1
0
0
(P ∨ Q)
0
0
0
0
1
1
1
1
¬P
0
0
0
0
0
1
1
0
(¬P ∧ Q)
0
1
0
1
0
1
1
1
((¬P ∧ Q) ∨ R)
1
0
1
0
1
1
0
0
F
0
1
0
0
1
1
0
0
1
1
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
(P ∨ Q)
0
0
0
0
1
1
1
1
¬P
0
0
0
0
0
1
1
0
(¬P ∧ Q)
0
1
0
1
0
1
1
1
((¬P ∧ Q) ∨ R)
1
0
1
0
1
1
0
0
F
0
1
0
1
0
0
1
1
¬F
KNF für F : (P ∨ Q ∨ R) ∧ (P ∨ Q ∨ ¬R) ∧ (¬P ∨ Q ∨ R) ∧ (¬P ∨ ¬Q ∨ R)
DNF für ¬F : (¬P ∧ ¬Q ∧ ¬R) ∨ (¬P ∧ ¬Q ∧ R) ∨ (P ∧ ¬Q ∧ ¬R) ∨ (P ∧ Q ∧ ¬R)
1
0
1
1
0
0
0
R
Q
(P ∨ Q) ∧ ((¬P ∧ Q) ∨ R)
Beispiel: KNF
(¬P ∧ Q ∧ ¬R) ∨ (¬P ∧ Q ∧ R) ∨ (P ∧ ¬Q ∧ R) ∨ (P ∧ Q ∧ R)
1
0
1
0
1
P
F :
DNF:
1
0
0
0
0
0
0
R
Q
(P ∨ Q) ∧ ((¬P ∧ Q) ∨ R)
P
F :
Beispiel: DNF
162
161
A(F )=1
A(Pn )
∧ · · · ∧ Pn
A:{P1 ,...,Pn }→{0,1}
A(P1 )
(P1
A:{P1 ,...,Pn }→{0,1}
_
)
A:{P1 ,...,Pn }→{0,1}
A(F )=1
A(P1 )
(P1
A:{P1 ,...,Pn }→{0,1}
_
A(Pn )
∧ · · · ∧ Pn
)
A(F )=0
KNF für F: ¬F ′ ,
wobei F ′ die DNF von ¬F ist.
^
1−A(P1 )
1−A(Pn )
KNF für F :
(P1
∨ · · · ∨ Pn
)
wobei:
P 0 = ¬P
P1 = P
DNF für F :
Normalformen
A(F )=1
Theorem
Für alle Interpretationen A′ : {P1 , . . . , Pn } → {0, 1}:
_
A(P )
A(P )
A′ (F ) = 1 gdw. A′ (
(P1 1 ∧ · · · ∧ Pn n )) = 1.
wobei:
P 0 = ¬P
P1 = P
DNF für F :
Normalformen
164
163
Eine logische Formel ist in Negationsnormalform (NNF),
falls die Negationsoperatoren in ihr nur direkt über
atomaren Aussagen vorkommen.
7→ Negationsnormalform (NNF)
Verwende de Morgans Regeln und ¬¬A ≡ A
3. “Nach innen schieben” von ¬
Verwende A → B ≡ (¬A ∨ B)
2. Elimination von →
Verwende A ↔ B ≡ (A → B) ∧ (B → A)
1. Elimination von ↔
Vier Schritte:
Umformung in KNF
• Solche Formeln können durch Umformungen hergestellt werden
• Solche Formeln können aus einer Wahrheitstafel abgelesen werden
• Diese äquivalenten Formeln in DNF bzw. KNF sind nicht eindeutig
• Zu jeder aussagenlogischen Formel gibt es:
- eine äquivalente Formel in KNF
- eine äquivalente Formel in DNF
Eigenschaften:
Normalformen
166
165
P ↔ (Q ∨ R)
(¬P ∨ Q ∨ R) ∧ (¬Q ∨ P) ∧ (¬R ∨ P))
4. “Nach innen schieben” von ∨
(¬P ∨ Q ∨ R) ∧ ((¬Q ∧ ¬R)) ∨ P)
3. “Nach innen schieben” von ¬
(¬P ∨ Q ∨ R) ∧ (¬(Q ∨ R) ∨ P)
2. Elimination von →
(P → (Q ∨ R)) ∧ ((Q ∨ R) → P)
1. Elimination von ↔
Gegeben:
Umformung in KNF: Beispiel
Verwende Distributivität von ∨ über ∧
4. “Nach innen schieben” von ∨
Verwende de Morgans Regeln und ¬¬A ≡ A
3. “Nach innen schieben” von ¬
Verwende A → B ≡ (¬A ∨ B)
2. Elimination von →
Verwende A ↔ B ≡ (A → B) ∧ (B → A)
1. Elimination von ↔
Vier Schritte:
Umformung in KNF
(NNF)
(NNF)
168
167
P ↔ (Q ∨ R)
(¬P ∧ ¬Q ∧ ¬R) ∨ (Q ∧ P) ∨ (R ∧ P)
≡⊥
((R ∧ ¬R) ∧¬Q) ∨ (R ∧ P)
| {z }
≡⊥
≡⊥
∨ ((Q ∧ ¬Q) ∧¬R) ∨ (Q ∧ P) ∨
| {z }
(¬P ∧ ¬Q ∧ ¬R) ∨ (¬P ∧ P)
| {z }
≡
(R ∧ ¬Q ∧ ¬R) ∨ (R ∧ P)
(¬P ∧ ¬Q ∧ ¬R) ∨ (¬P ∧ P) ∨ (Q ∧ ¬Q ∧ ¬R) ∨ (Q ∧ P) ∨
≡
≡
(NNF)
(¬P ∧ ((¬Q ∧ ¬R) ∨ P)) ∨ (Q ∧ ((¬Q ∧ ¬R) ∨ P)) ∨ (R ∧ ((¬Q ∧ ¬R) ∨ P))
2. “Nach innen schieben” von ∧
(¬P ∨ Q ∨ R) ∧ ((¬Q ∧ ¬R) ∨ P)
1. Negationsnormalform (NNF) (s. Seite 168):
Gegeben:
Umformung in DNF: Beispiel
Verwende Distributivität von ∧ über ∨
4. “Nach innen schieben” von ∧
Verwende de Morgans Regeln und ¬¬A ≡ A
3. “Nach innen schieben” von ¬
Verwende A → B ≡ (¬A ∨ B)
2. Elimination von →
Verwende A ↔ B ≡ (A → B) ∧ (B → A)
1. Elimination von ↔
Vier Schritte:
Umformung in DNF
170
169
(P1,f (1) ∨ · · · ∨ Pn,f (n) )
KNF (A2 )
171
Länge: 22
Länge: 21
172
(((P11 ∨P21 ∨P32 )∧(P12 ∨P21 ∨P32 )∧(P11 ∨P22 ∨P32 )∧(P12 ∨P22 ∨P32 ) Länge: 23
≡ (((P11 ∨P21 ∨P31 )∧(P12 ∨P21 ∨P31 )∧(P11 ∨P22 ∨P31 )∧(P12 ∨P22 ∨P31 )∧
(((P11 ∨P21 )∧(P12 ∨P21 )∧(P11 ∨P22 )∧(P12 ∨P22 ))∨P32 )
≡ (((P11 ∨P21 )∧(P12 ∨P21 )∧(P11 ∨P22 )∧(P12 ∨P22 ))∨P31 )∧
A
2
≡ ((P11 ∨P21 )∧(P
12 ∨P21 )∧(P11 ∨P22 )∧(P12 ∨P22 ))∨(P31 ∧P32 )
|
{z
}
n = 3 : A3 = (P11 ∧P12 )∨(P21 ∧P22 )∨(P31 ∧P32 )
|
{z
}
≡ (P11 ∨P21 )∧(P12 ∨P21 )∧(P11 ∨P22 )∧(P12 ∨P22 )
≡ ((P11 ∧P12 )∨P21 )∧((P11 ∧P12 )∨P22 )
n = 2 : A2 = (P11 ∧P12 )∨(P21 ∧P22 )
An = (P11 ∧ P12 ) ∨ · · · ∨ (Pn1 ∧ Pn2 )
n = 1 : A1 = P11 ∧P12
Gegeben:
Beispiel zur exponentiellen Länge der KNF
f :{1,...,n}→{1,2}
^
An = (P11 ∧ P12 ) ∨ · · · ∨ (Pn1 ∧ Pn2 )
Zu An äquivalente KNF
Gegeben:
Beispiel zur exponentiellen Länge der KNF
≡
≡
≡
An+1 =
≡
2n
173
2n
174
((C1 ∧ · · · ∧ C2n ) ∨ P(n+1),1 ) ∧ ((C1 ∧ · · · ∧ C2n ) ∨ P(n+1),2 )
(C1 ∨ P(n+1),1 ) ∧ · · · ∧ (C2n ∨ P(n+1),1 ) ∧ (C1 ∨ P(n+1),2 ) ∧ · · · ∧ (C2n ∨ P(n+1),2 )
{z
} |
{z
}
|
KNF (An )
(C1 ∧ · · · ∧ C2n ) ∨ (P(n+1),1 ∧ P(n+1),2 )
|
{z
}
An
(P11 ∧ P12 ) ∨ · · · ∨ (Pn1 ∧ Pn2 ) ∨ (P(n+1),1 ∧ P(n+1),2 )
((P11 ∧ P12 ) ∨ · · · ∨ (Pn1 ∧ Pn2 )) ∨ (P(n+1),1 ∧ P(n+1),2 )
|
{z
}
Beweis durch Induktion
Induktionsvoraussetzung: KNF von An hat 2n Klausel
KNF (An ) = C1 ∧ · · · ∧ C2n , Ci = (Li1 ∨ · · · ∨ Lini ) Klausel
Induktionsschritt: Zu zeigen: KNF von An+1 hat 2n+1 Klausel
• Klausel in KNF von An : 2n
Gegeben: An = (P11 ∧ P12 ) ∨ · · · ∨ (Pn1 ∧ Pn2 )
Beispiel zur exponentiellen Länge der KNF
Beweis durch Induktion
Induktionsbasis: n = 1 : A1 in KNF, 21 Klausel.
• Klausel in KNF von An :
2n
Gegeben: An = (P11 ∧ P12 ) ∨ · · · ∨ (Pn1 ∧ Pn2 )
Beispiel zur exponentiellen Länge der KNF
=⊤
= leere Konjunktion
• Leere Menge von Klausels
=⊥
= leere Disjunktion
= leere Menge von Literalen
• Leere Klausel
Bedeutung der leeren Menge
KNF: Mengenschreibweise
{ {P, Q, R}, {P, Q, ¬R}, {¬P, Q, R}, {¬P, ¬Q, R} }
(P ∨ Q ∨ R) ∧ (P ∨ Q ∨ ¬R) ∧ (¬P ∨ Q ∨ R) ∧ (¬P ∨ ¬Q ∨ R)
Beispiel:
Formel in KNF als Menge von Klauseln
Klausel als Menge von Literalen
Notation:
KNF: Mengenschreibweise
176
175
(L1 ∨ · · · ∨ Lp ) = K
(L1 ∨ · · · ∨ Lp ) ∧ ((L1 ∨ · · · ∨ Lp ) ∨ Lp+1 ∨ . . . Lm )
Ist F erfüllbar?
Frage:
NB: F allgemeingültig gdw. ¬F nicht erfüllbar
Eine aussagenlogische Formel F
Gegeben:
Definition: SAT-Problem
Das SAT-Problem (Erfüllbarkeitsproblem)
≡
K ∧ K′ =
F enthält K ∧ K ′
K = {L1 , . . . , Lp } ⊆ {L1 , . . . , Lp , Lp+1 , . . . , Lm } = K ′
Beweis:
dann entsteht eine äquivalente Formel, wenn K ′ weggelassen wird.
K ⊂ K′
Theorem (Subsumption Regel)
Enthält eine KNF-Formel (= Klauselmenge) Klauseln K , K ′ mit
Vereinfachung der KNF: Subsumption
178
177
(Absorption)
• SAT-Problem (Erfüllbarkeitsproblem)
Definition
Erfüllbarkeitsproblem für DNF Formeln
• Normalformen
Atome, Literale, Klauseln
Konjunktive und Disjunktive Normalform
Ablesen von DNF und KNF aus Wahrheitstafeln
Umformen in KNF/DNF
Mengenschreibweise
Subsumption
Zusammenfassung
180
179
Lij ) in DNF
V
gdw. ( m
j=1 Lij ) unerfüllbar für alle i = 1, . . . , n
Vm
gdw. ( j=1 Lij ) enthält zwei komplementare Literale für alle i
j=1
Vm
i=1 (
Wn
F unerfüllbar
Sei F =
Erfüllbarkeitsproblem für DNF Formeln
Das SAT-Problem (Erfüllbarkeitsproblem)
unerfüllbar
unerfüllbar
unerfüllbar
unerfüllbar
erfüllbar
(P ∧ ¬Q ∧ ¬P) ∨ (P ∧ Q ∧ ¬R ∧ ¬Q)
|
{z
} |
{z
}
erfüllbar
(P ∧ ¬Q) ∨ (P ∧ Q ∧ ¬R ∧ ¬Q)
{z
}
| {z } |
Beispiele:
Erfüllbarkeitsproblem für DNF Formeln
W
V
Sei F = ni=1 ( m
j=1 Lij ) in DNF
V
F unerfüllbar
gdw. ( m
j=1 Lij ) unerfüllbar für alle i = 1, . . . , n
V
gdw. ( m
j=1 Lij ) enthält zwei komplementare Literale für alle i
Das SAT-Problem (Erfüllbarkeitsproblem)
07.05.2012
Teil 4
2. Aussagenlogik
182
181
Tautologie
∧ (P ∨ Q ∨ ¬R ∨ ¬Q)
|
{z
}
Tautologie
Tautologie (allgemeingültig)
keine Tautologie (nicht allgemeingültig)
Ist F erfüllbar?
Frage:
Theorem (ohne Beweis)
SAT ist ein NP-vollständiges Problem
Eine aussagenlogische Formel F
Gegeben:
Definition: SAT-Problem
Das SAT-Problem (Erfüllbarkeitsproblem)
Tautologie
(P ∨ ¬Q ∨ ¬P) ∧ (P ∨ Q ∨ ¬R ∨ ¬Q)
|
{z
} |
{z
}
erfüllbar (keine Tautologie)
(P ∨ ¬Q)
| {z }
Beispiele:
Allgemeingültigkeit für KNF Formeln
V
W
Wm
F = ni=1 ( m
j=1 Lij ) in KNF ist allgemeingültig gdw. jede Disjunktion
j=1 Lij zwei
komplementare Literale enthält.
Erfüllbarkeitsproblem für DNF Formeln
W
V
Sei F = ni=1 ( m
j=1 Lij ) in DNF
V
F unerfüllbar
gdw. ( m
j=1 Lij ) unerfüllbar für alle i = 1, . . . , n
V
gdw. ( m
j=1 Lij ) enthält zwei komplementare Literale für alle i
Das SAT-Problem (Erfüllbarkeitsproblem)
184
183
• Wenn es stimmt, dass NP 6= P, dann ist SAT nicht in polynomieller
Zeit entscheidbar
• Jedes nichtdeterministisch in polynomieller Zeit entscheidbare Problem
kann in polynomieller Zeit auf SAT reduziert werden
• Erfüllbarkeit für Formeln in 3-KNF: NP-vollständig
• Erfüllbarkeit für Formeln in KNF: NP-vollständig
Theorem
(Beweisidee)
(ohne Beweis)
k-KNF Formel: KNF-Formeln, deren Klauseln höchstens k Literale haben
• SAT ist nichtdeterministisch in polynomieller Zeit entscheidbar
Definition:
Teilklassen des Erfüllbarkeitsproblems
“SAT ist NP-vollständig” heißt:
186
185
Beispiele:
P ∧ ¬Q
1-KNF
(P ∨ P) ∧ (¬P ∨ Q) ∧ (R ∨ ¬Q) 2-KNF
(P ∨ P ∨ Q) ∧ (P ∨ ¬Q ∨ R)
3-KNF
Alternative Definition (nicht allgemeiner):
k-KNF Formel: KNF-Formeln, deren Klauseln genau k Literale haben
Beispiele:
P ∧ ¬Q
1-KNF
P ∧ (¬P ∨ Q) ∧ (R ∨ ¬Q) 2-KNF
(P ∨ Q) ∧ (P ∨ ¬Q ∨ R) 3-KNF
Definition:
k-KNF Formel: KNF-Formeln, deren Klauseln höchstens k Literale haben
Teilklassen des Erfüllbarkeitsproblems
Zur Erinnerung:
NP-Vollständigkeit
SAT ist in NP:
• Rate eine “Lösung”
(Interpretation A mit A(F ) = 1)
• Überprüfe, ob A wirklich eine “Lösung” ist
(i.e. ob A(F ) = 1)
kann in Polynomialzeit überprüft werden
Ein Entscheidungsproblem ist genau dann in NP, wenn eine gegebene
Lösung für das entsprechende Suchproblem in Polynomialzeit überprüft
werden kann.
• NP ist die Klasse aller Probleme, die nichtdeterministisch in
polynomieller Zeit entscheidbar sind.
• P ist die Klasse aller Probleme, die in polynomieller Zeit entscheidbar
sind.
Zur Erinnerung:
NP
188
187
Was machen wir mit k-Klauseln für k > 3?
Aus einer 1- bzw 2-Klausel können wir leicht eine äquivalente 3-Klausel
machen, indem wir ein Literal wiederholen.
Eine k-Klausel sei eine Klausel mit k Literalen.
F ist erfüllbar gdw. F ′ ist erfüllbar.
Gegeben sei eine Formel F in KNF. Wir transformieren F in eine Formel F ′
in 3-KNF, so dass:
Wir zeigen, dass jedes SAT Problem in polynomieller Zeit auf das 3-SAT
Problem reduzierbar ist.
Beweis (Teil 2)
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
• Um zu zeigen, dass 3-SAT ebenfalls NP-vollständig ist, müssen wir
zeigen, dass jedes SAT Problem in polynomieller Zeit auf das 3-SAT
Problem reduzierbar ist.
189
190
C = P ∨ ¬Q ∨ ¬R ∨ S
7→
(P ∨ ¬Q ∨ H) ∧ (¬H ∨ ¬R ∨ S).
Beispiel
wobei H eine zusätzlich eingeführte Hilfsvariable bezeichnet.
C0 = (L1 ∨ L2 ∨ H) ∧ (¬H ∨ L3 ∨ L4 ),
In einer Klauseltransformation ersetzen wir C durch die Teilformel
C = L1 ∨ L2 ∨ L3 ∨ L4 .
Sei C beispielsweise eine 4-Klausel der Form
Beweis (Teil 3)
Beweis
• 3-SAT ist ein Spezialfall von SAT und deshalb wie SAT in NP.
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
192
191
193
Also ist F ′ in beiden Fällen erfüllbar.
2) Falls L3 oder L4 den Wert 1 haben, so ist F ′ für A(H) = 1 erfüllt.
1) Falls L1 oder L2 den Wert 1 haben, so ist F ′ für A(H) = 0 erfüllt.
Die Erfüllbarkeitsäquivalenz folgt analog zum Fall k = 4.
ersetzt.
(L1 ∨ L2 ∨ ... ∨ Lk−2 ∨ H) ∧ (¬H ∨ Lk−1 ∨ Lk )
wird durch eine Formel der Form
L1 ∨ L2 ∨ · · · ∨ Lk−1 ∨ Lk
Wir verallgemeinern die Klauseltransformation für k ≥ 4:
C = L1 ∨ L2 ∨ L3 ∨ L4 ; C0 = (L1 ∨ L2 ∨ H) ∧ (¬H ∨ L3 ∨ L4 ),
F ′ sei aus F entstanden durch Ersetzung von C durch C0 .
zu zeigen: F ′ erfüllbar gdw. F erfüllbar
“⇐”
Sei A eine erfüllende Belegung für F . A weist mindestens einem Literal aus C den
Wert 1 zu. Wir unterscheiden zwei Fälle:
Beweis (Teil 6)
Beweis (Teil 4)
Jede Klausel der Form
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
In beiden Fällen erfüllt A somit auch C , i.e. auch F .
2) Falls A(H) = 1, so muss A(L3 ) = 1 oder A(L4 ) = 1
1) Falls A(H) = 0, so muss A(L1 ) = 1 oder A(L2 ) = 1.
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
zu zeigen: F ′ erfüllbar gdw. F erfüllbar
F ′ sei aus F entstanden durch Ersetzung von C durch C0 .
wobei H eine zusätzlich eingeführte Hilfsvariable bezeichnet.
C0 = (L1 ∨ L2 ∨ H) ∧ (¬H ∨ L3 ∨ L4 ),
In einer Klauseltransformation ersetzen wir C durch die Teilformel
194
C = L1 ∨ L2 ∨ L3 ∨ L4 ; C0 = (L1 ∨ L2 ∨ H) ∧ (¬H ∨ L3 ∨ L4 ),
F ′ sei aus F entstanden durch Ersetzung von C durch C0 .
zu zeigen: F ′ erfüllbar gdw. F erfüllbar
Sei C beispielsweise eine 4-Klausel der Form
“⇒”
Sei A eine erfüllende Belegung für F ′ . Wir unterscheiden zwei Fälle:
Beweis (Teil 5)
Beweis (Teil 3)
C = L1 ∨ L2 ∨ L3 ∨ L4 .
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
Theorem
Erfüllbarkeit für Formeln in 3-KNF (3-SAT) ist NP-vollständig
3-SAT
196
195
(P ∨ ¬Q ∨ R ∨ H2 ) ∧ (¬H2 ∨ S ∨ H1 ) ∧ (¬H1 ∨ U ∨ ¬V )
(¬H2 ∨ S ∨ H1 ) ∧ (¬H1 ∨ U ∨ ¬V )
(P ∨ ¬Q ∨ H3 ) ∧ (¬H3 ∨ R ∨ H2 )∧
(P ∨ ¬Q ∨ R ∨ S ∨ H1 ) ∧ (¬H1 ∨ U ∨ ¬V )
• Erfüllbarkeit für Formeln in DNF: polynomiell entscheidbar
W
V
F = ni=1 ( m
j=1 Lij ) Formel in DNF unerfüllbar gdw. für alle
Vm
i, ( j=1 Lij ) enthält zwei komplementäre Literale.
P: Kopf
→ P: Fakt
→P
P1 ∧ · · · ∧ Pn : Rumpf
PA ∧ · · · ∧ Pn →
P
• Erfüllbarkeit für Formeln in 2-KNF: polynomiell entscheidbar
(nächste Vorlesung)
P1 ∧ · · · ∧ Pn → P
¬P1 ∨ · · · ∨ ¬Pn
Notation: als Implikation
¬P1 ∨ · · · ∨ ¬Pn ∨ P
(ohne Beweis)
• Erfüllbarkeit für Formeln in 3-KNF (3-SAT): NP-vollständig
• Erfüllbarkeit für Formeln in KNF: NP-vollständig
Theorem
k-KNF Formel: KNF-Formeln, deren Klauseln höchstens k Literale haben
Horn-Formel: Formel in KNF, in der jede Klausel höchstens ein positives
Literal enthält
Horn-Formeln
Defintion:
198
197
• Erfüllbarkeit für Formeln in DNF: polynomiell entscheidbar
• Teilklassen des Erfüllbarkeitsproblems
Bis jetzt
(P ∨ ¬Q ∨ H1 ) ∧ (¬H1 ∨ ¬R ∨ S) ∧ (¬P ∨ Q ∨ H2 ) ∧ (¬H2 ∨ R ∨ ¬S)
(P ∨ ¬Q ∨ H1 ) ∧ (¬H1 ∨ ¬R ∨ S) ∧ (¬P ∨ Q ∨ R ∨ ¬S)
(P ∨ ¬Q ∨ ¬R ∨ S) ∧ (¬P ∨ Q ∨ R ∨ ¬S)
(Beweisidee)
• Erfüllbarkeit für Formeln in 2-KNF: polynomiell entscheidbar
(ohne Beweis)
• Erfüllbarkeit für Formeln in KNF: NP-vollständig
• Erfüllbarkeit für Formeln in 3-KNF: NP-vollständig
Theorem
k-KNF Formel: KNF-Formeln, deren Klauseln höchstens k Literale haben
Definition:
Teilklassen des Erfüllbarkeitsproblems
• Das SAT-Problem (Erfüllbarkeitsproblem)
7→
7→
Beispiel 2:
7→
7→
7→
(P ∨ ¬Q ∨ R ∨ S ∨ U ∨ ¬V )
Beispiel 1:
Beispiele
200
199
Q, S →
→R
{Q, ¬R, ¬S}
{¬Q, ¬S}
{R}
{¬Q, P}
Q ∨ ¬R ∨ ¬S
¬Q ∨ ¬S
R
¬Q ∨ P
Implikationen
Beweis: Sei A : Π → {0, 1} mit A(P) = 0 für alle P ∈ Π. Dann A(F ) = 1.
Lemma. Sei F Hornformel die keine Fakten enthält. Dann ist F erfüllbar.
Theorem
Die Erfüllbarkeit von Horn-Formeln ist in quadratischer Zeit entscheidbar.
Erfüllbarkeitsproblem für Horn-Formeln
Q→P
R, S → Q
P→
Literalmengen
{¬P}
Klausel
¬P
Horn Formel: Beispiele
202
201
Ein Atom in F zu markieren, bedeutet, es an allen Stellen seines Auftretens
in F zu markieren
(die Klausel Di enthält höchstens ein positives Literal)
Eingabe: F = D1 ∧ · · · ∧ Dn eine Hornformel
Erfüllbarkeitstest für Horn-Formeln
Wiederhole das Verfahren für F ′ , entstanden aus F durch Ersetzung von P
mit ⊤.
Sonst: Für alle Fakten → P in F : A(P) := 1;
Falls keine Fakten in F : F erfüllbar.
Ziel: A : Π → {0, 1} mit A(F ) = 1.
Beweis: (Idee)
Theorem
Die Erfüllbarkeit von Horn-Formeln ist in quadratischer Zeit entscheidbar.
Erfüllbarkeitsproblem für Horn-Formeln
204
203
vollständig markiert ist und die rechte Seite nicht
keine Implikation gibt,deren linke Seite
Beispiel 2
Markierte Atome: wahr; nicht markierte Atome: falsch.
(Q → S)
((Q ∧ S ∧ U) → W )
((U ∧ T ∧ Z ) → P)
(S → U)
(W → T )
∧
∧
∧
∧
∧
∧
(P → R)
(⊤ → Q)
∧
(P → ⊥)
Konjunktion von Implikationen:
Q, S, U → W
U, T , Z → P
S →U
W →T
Q →S
P →R
→Q
P →
vollständig markiert ist und die rechte Seite nicht
Modell: A(P) = A(Q) = A(R) = A(S) = A(T ) = A(U) = A(W ) = A(Z ) = 0
Q, S, U → W
U, T , Z → P
S →U
W →T
keine Implikation gibt,deren linke Seite
Q→S
Keine Schritte möglich, da es
Markierte Atome und Erklärung:
Erfüllbar
P →R
P →
(¬P) ∧ (¬P ∨ R) ∧ (¬Q ∨ S) ∧ (T ∨ ¬W ) ∧ (¬S ∨ U)∧
206
wegen W → T
Keine weiteren Schritte möglich, da es
{Q, S, U, W , T }
wegen Q, S, U → W
wegen S → U
wegen Q → S
{Q, S, U, W }
{Q, S, U}
initialer Fakt wegen ⊤ → Q
Modell: A(Q) = A(S) = A(U) = A(W ) = A(T ) = 1, A(P) = A(R) = A(Z ) = 0
Q, S, U → W
U, T , Z → P
S →U
W →T
Q→S
P →R
{Q, S}
{Q}
(¬U ∨ ¬T ∨ P ∨ ¬Z ) ∧ (¬Q ∨ ¬S ∨ ¬U ∨ W )
Beispiel 1
205
P →
→Q
Erfüllbar
Markierte Atome und Erklärung:
(¬U ∨ ¬T ∨ P ∨ ¬Z ) ∧ (¬Q ∨ ¬S ∨ ¬U ∨ W )
(¬P) ∧ (Q) ∧ (¬P ∨ R) ∧ (¬Q ∨ S) ∧ (T ∨ ¬W ) ∧ (¬S ∨ U)∧
(¬U ∨ ¬T ∨ P ∨ ¬Z ) ∧ (¬Q ∨ ¬S ∨ ¬U ∨ W )
GOTO 1
ELSE markiere überall B in F
THEN Ausgabe: unerfüllbar
IF B leer
ELSE wähle die erste solche Klausel
THEN Ausgabe: erfüllbar
alle Atome in A1 , . . . , An markiert aber B nicht
IF keine Klausel A1 ∧ · · · ∧ An → B in F , so dass
ELSE markiere alle Fakten in F (Atome A mit → A in F )
THEN Ausgabe: erfüllbar
IF keine Fakten (Klausel “→ A”) vorhanden
Beispiel 1
(¬P) ∧ (Q) ∧ (¬P ∨ R) ∧ (¬Q ∨ S) ∧ (T ∨ ¬W ) ∧ (¬S ∨ U)∧
1:
0:
Erfüllbarkeitstest für Horn-Formeln
208
207
Zusammenfassung
Q, S, U → leer
Q, S, U markiert, aber Kopf von
Unerfüllbar
wegen S → U
wegen Q → S
initialer Fakt wegen ⊤ → Q
{Q, S, U}
{Q, S}
{Q}
• Erfüllbarkeitstest für Hornformeln
• Horn-Formeln
• SAT-Problem (SAT, 3-SAT, 2-SAT, DNF-SAT)
Q, S, U →
U, T , Z → P
S →U
W →T
Q→S
P →R
→Q
P →
Markierte Atome und Erklärung:
(¬U ∨ ¬T ∨ P ∨ ¬Z ) ∧ (¬Q ∨ ¬S ∨ ¬U)
(¬P) ∧ (Q) ∧ (¬P ∨ R) ∧ (¬Q ∨ S) ∧ (T ∨ ¬W ) ∧ (¬S ∨ U)∧
Beispiel 3
210
209
Komplexität: |F | × |F |
Wiederhole das Verfahren für F ′ , entstanden aus F durch Ersetzung von P
mit ⊤.
Sonst: Für alle Fakten → P in F : A(P) := 1;
Falls keine Fakten in F : F erfüllbar.
Ziel: A : Π → {0, 1} mit A(F ) = 1.
Beweis: (Idee)
Theorem
Die Erfüllbarkeit von Horn-Formeln ist in quadratischer Zeit entscheidbar.
Erfüllbarkeitsproblem für Horn-Formeln
14.05.2012
Teil 5
2. Aussagenlogik
212
211
1. Resolution
Semantische Tableaux
2. Formelmengen
Resolution
1. Formeln in KNF (Mengen von Klauseln)
(für Formeln und/oder Formelmengen)
Kalkül(e) zur systematischen Überprüfung von Erfüllbarkeit
Unser Ziel
214
213
W
Q, S, U → W
Mengenschreibweise:
Klauselschreibweise:
Horn Klauseln:
A(P) = A(R) = A(Z ) = 0
P, P1 . . . Pn → Q
P1 . . . Pn → Q
Bemerkung
{¬P, ¬P1 , ¬Pn , Q}
{¬P1 , . . . , ¬Pn , Q}
¬P ∨ ¬P1 . . . ¬Pn ∨ Q
¬P1 ∨ · · · ∨ ¬Pn ∨ Q
{P}
P
P
wegen W → T
wegen Q, S, U → W
Q 7→ ⊤
T 7→ ⊤
W 7→ ⊤
U 7→ ⊤
S 7→ ⊤
216
215
A(Q) = A(S) = A(U) = A(W ) = A(T ) = 1
Modell:
{Q, S, U, W , T }
{Q, S, U, W }
wegen S → U
wegen Q → S
initialer Fakt wegen ⊤ → Q
{Q, S, U}
{Q, S}
{Q}
Markierte Atome und Erklärung:
Markierte Atome: wahr; nicht markierte Atome: falsch.
¬Z ∨ P
U, T , Z → P
U
S
T
Q→S
W →T
S →U
Q
¬P ∨ R
→Q
¬P
P →
P →R
Klauseln
Implikationen
(¬U ∨ ¬T ∨ P ∨ ¬Z ) ∧ (¬Q ∨ ¬S ∨ ¬U ∨ W )
(¬P) ∧ (Q) ∧ (¬P ∨ R) ∧ (¬Q ∨ S) ∧ (T ∨ ¬W ) ∧ (¬S ∨ U)∧
Motivation
P→C
C
{¬P}
{P} ∪ C
C
Verallgemeinerung?
{¬P} ∪ C
C
7→ Das Resolutionkalkül
Ziel: Kalkül mit der Eigenschaft dass:
(1) falls M unerfüllbar ⊥ ist aus M ableitbar
(2) falls ⊥ aus M ableitbar, M unerfüllbar.
ist nicht erfüllbar, aber mit 1-Resolution ist aus M nichts ableitbar, also
auch nicht ⊥.
M = {{P1 , P2 }, {P1 , ¬P2 }, {¬P1 , P2 }, {¬P1 , ¬P2 }}
Die Klauselmenge
Nicht geeignet für Erfüllbarkeitsüberprüfung beliebiger Klauselmengen:
{P}
Mengenschreibweise: 1-Resolution (unit resolution)
P
Syllogismus (in der ersten Vorlesung erwähnt):
Verallgemeinerung?
218
217
C1 ∪ C2 heißt Resolvente von C1 ∪ {P}, C2 ∪ {¬P}
Definition:
• C1 , C2 Klauseln (können leer sein)
• P eine aussagenlogische Variable
wobei
C1 ∪ {P}
{¬P} ∪ C2
C1 ∪ C2
Definition: Resolutionsregel (einzige Regel des Kalküls)
Resolutionskalkül
• Operiert auf Klauseln (in Mengenschreibweise)
• Eine einzige Regel
• Voraussetzung: Alle Formeln in konjunktiver Normalform
• Widerlegungskalkül: Testet auf Unerfüllbarkeit
Wesentliche Eigenschaften
Der aussagenlogische Resolutionkalkül
220
219
{{¬P, Q}, {¬Q, R}, {P}, {¬R}}
¬[(P → Q) → ((Q → R) → (P → R))]
Klauselnormalform:
unerfüllbar ist.
{¬P1 }
⊥
(P → Q) → ((Q → R) → (P → R))
Dazu zeigen wir, dass
ist allgemeingültig
Zu zeigen:
{P1 }
{¬P1 , P2 } {¬P1 , ¬P2 }
{¬P1 }
{P1 , P2 } {P1 , ¬P2 }
{P1 }
Resolution: Weiteres Beispiel
also: M unerfüllbar
Insgesamt: M ⊢Res ⊥
Resolution:
M = {{P1 , P2 }, {P1 , ¬P2 }, {¬P1 , P2 }, {¬P1 , ¬P2 }}
Gegeben die Klauselmenge:
Resolution: Beispiel
222
221
Heuristik: Immer möglichst kleine Klauseln ableiten
• {A, B, C } und {¬A, ¬B, D} haben NICHT {C , D} als Resolvente
• Zwei Klauseln können mehr als eine Resolvente haben
z.B.: {A, B} und {¬A, ¬B}
Vorsicht bei Klauseln mit mehreren Resolutionsmöglichkeiten
Resolution: Bemerkungen
aus (4) und (6)
{Q}
{R}
(5)
(6)
⊥
aus (1) und (3)
aus (2) und (5)
{¬R}
(4)
(7)
gegeben
gegeben
{P}
(3)
gegeben
gegeben
{¬P, Q}
{¬Q, R}
(2)
(1)
Ableitung der leeren Klausel aus M:
M = {{¬P, Q}, {¬Q, R}, {P}, {¬R}}
Klauselnormalform:
Resolution: Weiteres Beispiel
224
223
E = {P1 ∨ ¬P2 , ¬P1 ∨ P2 , ¬P1 ∨ ¬P2 , P1 ∨ P2 }
¬P1 ∨ P2 P1 ∨ P2
P2 ∨ P2
¬P1 ∨ P2 ¬P1 ∨ ¬P2
¬P1 ∨ ¬P1
Resolutionsregel:
Faktorisieren:
¬P1 ∨ ¬P2 P1 ∨ P2
¬P1 ∨ P1
P1 ∨ ¬P2 ¬P1 ∨ ¬P2
¬P2 ∨ ¬P2
C ∨L∨L
C ∨L
C1 ∨ P
¬P ∨ C2
C1 ∨ C2
Ohne Mengenschreibweise
Auf diese Weise ist ⊥ nicht herleitbar
P1 ∨ ¬P2 ¬P1 ∨ P2
¬P1 ∨ P1
P1 ∨ ¬P2 ¬P1 ∨ P2
¬P2 ∨ P2
226
225
¬P1 ∨ ¬P2 P1 ∨ P2
¬P2 ∨ P2
P1 ∨ ¬P2 P1 ∨ P2
P1 ∨ P1
Es gibt folgende Resolutionsmöglichkeiten (ohne Mengenschreibweise)
ist unerfüllbar.
Die Menge
Notwendigkeit der Mengenschreibweise
E = {P1 ∨ ¬P2 , ¬P1 ∨ P2 , ¬P1 ∨ ¬P2 , P1 ∨ P2 }
P1 ∨ ¬P2 ¬P1 ∨ P2
¬P1 ∨ P1
P1 ∨ ¬P2 ¬P1 ∨ ¬P2
¬P2 ∨ ¬P2
also: M unerfüllbar
Insgesamt: M ⊢Res ⊥
Resolution:
{P1 }
{¬P1 }
⊥
{¬P1 , P2 } {¬P1 , ¬P2 }
{¬P1 }
{P1 , P2 } {P1 , ¬P2 }
{P1 }
228
227
¬P1 ∨ ¬P2 P1 ∨ P2
¬P2 ∨ P2
P1 ∨ ¬P2 P1 ∨ P2
P1 ∨ P1
M = {{P1 , P2 }, {P1 , ¬P2 }, {¬P1 , P2 }, {¬P1 , ¬P2 }}
Gegeben die Klauselmenge:
Resolution: Beispiel
P1 ¬P1
⊥
¬P1 ∨ P2 ¬P1 ∨ ¬P2 ¬P1 ∨ P2 P1 ∨ P2 ¬P1 ∨ ¬P2 P1 ∨ P2
¬P1 ∨ ¬P1
P2 ∨ P2
¬P1 ∨ P1
P1 ∨ P1 ¬P1 ∨ ¬P1 P2 ∨ P2 ¬P2 ∨ ¬P2
P1
¬P1
P2
¬P2
P1 ∨ ¬P2 ¬P1 ∨ P2
¬P2 ∨ P2
Es gibt folgende Resolutionsmöglichkeiten (mit Faktorisieren)
ist unerfüllbar.
Die Menge
Resolution mit Faktorisierung
n∈N
Resn (F )
{R}
(6)
gegeben
Beweis für ⊥ aus M
(Widerspruch)
aus (4) und (6)
Cn = C und für alle 1 ≤ i ≤ n: (Ci ∈ F oder Ci Resolvente für
j1 , j2 <i).
aus (2) und (5)
aus (1) und (3)
gegeben
⊥
{Q}
{¬R}
{P}
(7)
(5)
(4)
(3)
gegeben
gegeben
{¬P, Q}
{¬Q, R}
(1)
(2)
M = {{¬P, Q}, {¬Q, R}, {P}, {¬R}}
Klauselnormalform:
Resolution: Weiteres Beispiel
Definition: Beweis für C (aus F ): C1 , . . . Cn , wobei:
230
aus (2) und (5)
{Q}
(5)
{R}
mit
aus (1) und (3)
{¬R}
(4)
(6)
Cj1 Cj2
Ci
229
gegeben
gegeben
{P}
(3)
Beweis für {R} aus M
gegeben
gegeben
{¬P, Q}
{¬Q, R}
(1)
(2)
M = {{¬P, Q}, {¬Q, R}, {P}, {¬R}}
Klauselnormalform:
Resolution: Weiteres Beispiel
Notation: Falls C ∈ Res⋆ (F ), so schreiben wir F ⊢Res C .
auf F )
(bezeichnet die Vereinigung der Resolventen aus aller möglichen Resolutionsschritte
Res⋆ (F ) =
S
Resn+1 (F ) = Res(Resn (F ))
Res0 (F ) = F
Res(F ) = F ∪ {R | R ist eine Resolvente zweier Klauseln aus F }
Sei F eine Klauselmenge und
Resolution
• Zeigen, dass M ⊢Res ⊥ gdw. M unerfüllbar.
• Formalisieren, was M ⊢Res ⊥ bedeutet
Ziele:
Resolution
232
231
Erklärung 2: Es gibt keine Wertebelegung A die alle Klauseln in M ∪ {⊥} wahr macht
(d.h. so dass: A(D) = 1 für alle Klauseln D in M und A(⊥) = 1).
Erklärung 1: Falls M = {C1 , . . . , Cn } so M ∪ {⊥} ist eine Notation für
C1 ∧ · · · ∧ Cn ∧ ⊥. Aber C1 ∧ · · · ∧ Cn ∧ ⊥ ≡ ⊥, so ist C1 ∧ · · · ∧ Cn ∧ ⊥
unerfüllbar (also auch M ∪ {⊥}). Da M ≡ M ∪ {⊥}, ist auch M unerfüllbar.
Dann, falls M ⊢Res ⊥, so ⊥∈ Res∗ (M), d.h. M ≡ M ∪ {⊥}.
Aber M ∪ {⊥} ist unerfüllbar, deshalb ist auch M unerfüllbar.
(Theorem auf Seite 236). (NB: M ∪ {C } Notation für M ∧ C .)
Beweis: Wir werden zeigen, dass falls C ∈ Res∗ (M), so M ≡ M ∪ {C }.
Theorem (Korrektheit)
Für eine Menge M von Klauseln gilt: Falls M ⊢Res ⊥, so M unerfüllbar.
Resolution: Korrektheit
Theorem (Vollständigkeit)
Für eine Menge M von Klauseln gilt: Falls M unerfüllbar, so M ⊢Res ⊥.
Theorem (Korrektheit)
Für eine Menge M von Klauseln gilt: Falls M ⊢Res ⊥, so M unerfüllbar.
Resolution: Korrektheit und Vollständigkeit
234
233
• Sei A : Π → {0, 1} mit A(F ∧ C ) = 1.
Dann A(F ) = 1 und A(C ) = 1, so A(F ) = 1.
Dann A(C ) = 1, so (A(F ) = 1 und A(C ) = 1), d.h. A(F ∧ C ) = 1.
• Sei A : Π → {0, 1} mit A(F ) = 1.
Induktion: Für alle m ∈ N gilt: Falls D ∈ Resm (F ), so A(D) = 1.
(folgt aus: C1 ∨ P, C2 ∨ ¬P |= C1 ∨ C2 )
Beweis: Annahme: C ∈ Resn (F ).
Zu zeigen: F ≡ F ∧ C , i.e.:
Für alle A : Π → {0, 1} gilt: A(F ) = 1 gdw. (A(F ) = 1 und A(C ) = 1).
Theorem: Falls C ∈ Res⋆ (F ), so F ≡ F ∪ {C }.
Resolution: Korrektheit
Fall 2: A(C1 ) = 0. Dann A(P) = 1.
Da A(C2 ∨ ¬P) = 1, so A(C2 ) = 1, d.h. A(C1 ∨ C2 ) = 1.
Fall 1: A(C1 ) = 1. Dann A(C1 ∨ C2 ) = 1.
Zu zeigen: A(C1 ∨ C2 ) = 1.
Sei A Interpretation mit A(C1 ∨ P) = 1 und A(C2 ∨ ¬P) = 1.
Beweis:
Lemma: C1 ∨ P, C2 ∨ ¬P |= C1 ∨ C2
Resolution: Korrektheit
236
235
2. Aussagenlogik
Falls M unerfüllbar, so M ⊢Res ⊥
Sei M Menge von Klauseln mit n Aussagenvariablen.
28.05.2012
Teil 6
p(n):
Beweis: Induktion:
Theorem.
Für jede endliche Menge M von Klauseln gilt:
falls M unerfüllbar, so M ⊢Res ⊥.
Resolution: Vollständigkeit
238
237
Falls M ⊢Res ⊥, so M unerfüllbar.
heute
Theorem (Vollständigkeit)
Für eine Menge M von Klauseln gilt: Falls M unerfüllbar, so M ⊢Res ⊥.
letzte Vorlesung
Theorem (Korrektheit)
Für eine Menge M von Klauseln gilt: Falls M ⊢Res ⊥, so M unerfüllbar.
Resolution: Korrektheit und Vollständigkeit
• Zeigen, dass das Verfahren terminiert.
Vollständigkeit: Falls M unerfüllbar, so M ⊢Res ⊥
Korrektheit:
• Zeigen, dass M ⊢Res ⊥ gdw. M unerfüllbar.
• Formalisieren, was M ⊢Res C bedeutet
Ziele:
Resolution
240
239
¬Pn+1 zurück:
D1′ , D2′ , . . . , Dk′
Beweis (aus M) für ⊥ oder ¬Pn+1
M1 ⊢Res ⊥, i.e. es gibt D1 , D2 , . . . , Dk Beweis (aus M1 ) für ⊥
Pn+1 zurück: C1′ , C2′ , . . . , Cm′ Beweis (aus M) für ⊥ oder Pn+1
M0 ⊢Res ⊥, i.e. es gibt C1 , C2 , . . . , Cm Beweis (aus M0 ) für ⊥
Induktionsvoraussetzung:
• M0 , M1 unerfüllbar
• M0 , M1 enthalten nur Aussagenvariablen {P1 , . . . , Pn }
Fakten:
M1 sei aus M entstanden durch Ersetzung von Pn+1 durch ⊤:
- ¬Pn+1 wird aus allen Klauseln gelöscht,
- Klauseln, die Pn+1 enthalten werden ebenfalls gelöscht
M0 sei aus M entstanden durch Ersetzung von Pn+1 durch ⊥:
- Pn+1 wird aus allen Klauseln gelöscht,
- Klauseln, die ¬Pn+1 enthalten werden ebenfalls gelöscht
Resolution: Vollständigkeit
Induktionsbasis: n = 0.
Dann M = {⊥}, d.h. M ⊢Res ⊥
Falls M unerfüllbar, so M ⊢Res ⊥







⇒ M ⊢Res ⊥
Sei M Menge von Klauseln mit n Aussagenvariablen.
241
242
7→ nicht mehr als (22n )2 mögliche Anwendungen der Resolutionsregel.
Beweis: Es gibt nicht mehr als 22n Klauseln (in Mengennotation) mit n
Aussagenvariablen.
Theorem.
Aussagenlogische Resolution (für Klauselmengen in Mengennotation)
terminiert, für jede endliche Menge von Klauseln.
Terminierung
Theorem.
Für jede Menge M von Klauseln gilt:
falls M unerfüllbar, so M ⊢Res ⊥.
Es gilt auch:
Beweis: Induktion:
p(n):
Theorem.
Für jede endliche Menge M von Klauseln gilt:
falls M unerfüllbar, so M ⊢Res ⊥.
Resolution: Vollständigkeit
Theorem.
Für jede endliche Menge M von Klauseln gilt:
falls M unerfüllbar, so M ⊢Res ⊥.
Resolution: Vollständigkeit
244
243
{¬P} ∪ C
C
{¬P}
{P} ∪ C
C
ist nicht erfüllbar, aber mit 1-Resolution ist aus M nichts ableitbar, also
auch nicht ⊥.
M = {{P1 , P2 }, {P1 , ¬P2 }, {¬P1 , P2 }, {¬P1 , ¬P2 }}
Die Klauselmenge
Der 1-Resolutionskalkül ist nicht vollständig.
{P}
Die 1-Resolution (unit resolution) benutzt dieselbe Notation wie im
Resolutionskalkül. Die 1-Resolutionsregel ist ein Spezialfall der allgemeinen
Resolutionsregel:
1-Resolution
7→ Erfüllbarkeit von F ist polynomiell entscheidbar.
Wenn wir Res∗ (F ) berechnen: nicht mehr als (4n2 )2 Resolutionsschritte
notwendig.
F ist erfüllbar gdw. ⊥6∈ Res∗ (F )
Wenn F n Aussagenvariablen enthält, gibt es 2n mögliche Literale, und ≤ 4n2
nicht-leere verschiedene 2-KNF Klauseln.
Fakt: Resolventen sind immer auch in 2-KNF.
Resolutionschritt; Resolvente L1 ∨ L2 (Mengennotation)
Fall 2: Es gibt Klauseln C1 = L1 ∨ P, C2 = L2 ∨ ¬P
Fall 1: Für jede Aussagenvariable P, entweder enthalten alle Klauseln P oder ¬P:
erfüllbar.
Beweis (Krom, 1967)
Theorem
Erfüllbarkeit für Formeln in 2-KNF (2SAT) ist polynomiell entscheidbar
2-SAT
246
245
Semantische Tableaux
2. Formelmengen
Resolution
1. Formeln in KNF (Mengen von Klauseln)
(für Formeln und/oder Formelmengen)
Kalkül(e) zur systematischen Überprüfung von Erfüllbarkeit
Unser Ziel
Semantische Tableaux
2. Formelmengen
Resolution
1. Formeln in KNF (Mengen von Klauseln)
(für Formeln und/oder Formelmengen)
Kalkül(e) zur systematischen Überprüfung von Erfüllbarkeit
Unser Ziel
bis jetzt
248
247
• Mehr als eine Regel
Nachteile
• Falls Formelmenge erfüllbar ist (Test schlägt fehl), wird ein
Gegenbeispiel (eine erfüllende Interpretation) konstruiert
• Formeln müssen nicht in Normalform sein
• Intuitiver als Resolution
Vorteile
250
• Top-down-Analyse der gegebenen Formeln
Der aussagenlogische Tableaukalkül
• F ∧G
• ¬(F ∨ G )
• Beweis durch Fallunterscheidung
¬F
F
F
¬(F → G )
¬¬F
F
α1
¬(F ∨ G )
F ∧G
α
Zuordnungsregeln Formeln / Unterformeln
• ¬(F → G )
• ¬(F ∨ G )
• F ∧G
• ¬¬F
¬G
¬G
G
α2
Formeltypen
Konjunktive Formeln: Typ α
• F →G
• F ∨G
• ¬(F ∧ G )
Disjunktive Formeln: Typ β
• ¬(F → G )
• ¬¬F
249
Formeltypen
Konjunktive Formeln: Typ α
• Widerlegungskalkül: Testet auf Unerfüllbarkeit
Wesentliche Eigenschaften
Der aussagenlogische Tableaukalkül
252
251
β2
β
⊥
¬φ
φ
β1 | β2
α2
α1
α
Widerspruch
Disjunktiv
Konjunktiv
q
p
|
⊥
φ
¬φ
\
/
p∨q
p∧q
|
p
|
q
Regeln des (aussagenlogischen) Tableaukalküls
G
G
F
¬F
¬G
F →G
¬F
¬(F ∧ G )
F ∨G
β1
β
Zuordnungsregeln Formeln / Unterformeln
• F →G
• F ∨G
• ¬(F ∧ G )
Disjunktive Formeln: Typ β
Formeltypen
254
253
¬Q
¬Q
Q
¬Q
¬¬R
R
(9)
¬Q
(8)
¬(Q ∨ ¬R)
(7)
P
¬Q ∨ ¬R
P ∧ ¬(Q ∨ ¬R)
(11)
(10)
(4)
¬P | Q
¬(Q ∨ ¬R)
P
¬R
XXXX
X
(2)
1.(1)
(6)
(5)
(3)
¬P | ¬Q
P | Q
P
¬¬P
Dieses Tableau ist nicht
“maximal”, aber der erste
“Ast” ist.
Dieser Ast ist nicht
“geschlossen” (enthält
keinen Widerspruch),
also ist die Menge {1, 2}
erfüllbar.
(Diese Begriffe werden auf
den nächsten Seiten
erklärt.)
Ein Tableau für {P ∧ ¬(Q ∨ ¬R), ¬Q ∨ ¬R}
¬(P ∧ Q)
P ∨Q
P→Q
P
¬P
P
Instanzen der β-Regel
¬(P → Q)
¬(P ∨ Q)
P ∧Q
Instanzen der α-Regel
Instanzen der α und β-Regel
256
255
Definition.
Ein Tableau für M, das geschlossen ist, ist ein Tableaubeweis für (die
Unerfüllbarkeit von) M
Definition.
Ein Tableau ist geschlossen, wenn jeder seiner Äste geschlossen ist.
Definition.
Ast B eines Tableaus für M ist geschlossen, wenn es eine Formel F existiert,
so dass B die Formeln F und ¬F enthält.
Definition
Tableauast: Maximaler Pfad in einem Tableau (von Wurzel zu Blatt)
Formale Definition des Kalküls
Nota bene:
Alle Äste in einem Tableau für M enthalten implizit alle Formeln in M
258
257
Dann ist T ′ ein Tableau für M.
T ′ entstehe durch Erweiterung von B gemäß der auf F anwendbaren Regel
(α oder β)
• F eine Formel auf B oder in M, die kein Literal ist
• B ein Ast von T
• T ein Tableau für M
Erweiterung
Initialisierung
Das Tableau, das nur aus dem Knoten 1 besteht, ist ein Tableau für M
Sei M eine Formelmenge
Formale Definition des Kalküls
Definition
Tableau: Binärer Baum, dessen Knoten mit Formeln markiert sind
Formale Definition des Kalküls
Dieselbe Formel kann mehrfach (auf verschiedenen Ästen) verwendet
werden
Nota bene:
• Nicht-verzweigende Regeln zuerst: α vor β
Heuristik
• Der Kalkül aber nicht:
Auswahl der nächsten Formel, auf die eine Regel angewendet wird
• Die Regeln sind alle deterministisch
Determinismus
Determinismus von Kalkül und Regeln
260
259
P
β [41 ]
(11)
S
XXXX
X
geschlossenes Tableau.
(10)
α [52 ]
¬S
(7)
β [42 ]
(9)
Q→R
β [22 ]
α [51 ]
¬(Q → R)
(6)
β [21 ]
α [32 ]
¬((Q → R) ∨ S))
(5)
¬P
α [31 ]
(8)
α [12 ]
P∨S
(4)
hhhhh
hhhh
α [11 ]
(P → (Q → R))
¬((P ∨ S) → ((Q → R) ∨ S))
(2)
(3)
¬[(P → (Q → R)) → ((P ∨ S) → ((Q → R) ∨ S))]
Beispiel
(1)
unerfüllbar ist.
¬[(P → (Q → R)) → ((P ∨ S) → ((Q → R) ∨ S))]
Wir zeigen, dass
(P → (Q → R)) → ((P ∨ S) → ((Q → R) ∨ S)) allgemeingültig
Zu zeigen:
Beispiel
262
261
Klauseltableau
• Alle Knoten im Tableau enthalten Literale
• Erweiterungsregel kann Verzweigungsgrad > 2 haben
• Keine α-Regel
Änderungen
M Menge von Klauseln
3.06.2013
Teil 7
2. Aussagenlogik
264
263
Q
⊥
P
⊥
⊥
R
⊥
¬P
⊥
¬Q
⊥
Falls M erfüllbar ist, hat M kein geschlossenes Tableau.
... alternativ:
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.
Korrektheit: “⇐”
Eine Formelmenge M ist unerfüllbar
genau dann, wenn
es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt
Theorem.
Korrektheit und Vollständigkeit des
Tableaukalküls
⊥
P
g 1. VVVVV
VVVV
ggggg
VV
ggggg
g
¬P K
Q
K
u LLLL
u
K
u
K
uu
uuu
¬Q P
¬Q
p P III
PPP
s
ppp
sss
M = { {P, Q, R}, {¬R}, {¬P, Q}, {P, ¬Q}, {¬P, ¬Q} }
Klauseltableau: Beispiel
266
265
... Also: Kein geschlossenes Tableau für erfüllbare Formelmenge
Lemma 2. Ein geschlossenes Tableau ist nicht erfüllbar
Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar
Ein Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren Ast hat
Ein Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist
Definition.
... alternativ: Falls M erfüllbar ist, hat M kein geschlossenes Tableau.
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.
Kern des Korrektheitsbeweises
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).
Vollständigkeit: “⇒”
Eine Formelmenge M ist unerfüllbar
genau dann, wenn
es einen Tableaubeweis für (die Unerfüllbarkeit von) M gibt
Theorem.
Korrektheit und Vollständigkeit des
Tableaukalküls
268
267
p(n): Falls M erfüllbar und das Tableau T in n Schritten
aus M gebildet wurde, ist T erfüllbar
p(n): Falls M erfüllbar und das Tableau T in n Schritten
aus M gebildet wurde, ist T erfüllbar
Fall 1: B ′ 6= B. Dann ist B ′ auch Ast in T , d.h. T erfüllbar.
Induktionsvoraussetzung: T ′ erfüllbar, d.h. hat (mindestens) einen erfüllbaren Ast B ′ .
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 Ast B von T ′ und
eine Formel F auf B, die kein Literal ist, so dass T durch die Erweiterung von B
gemäß der auf F anwendbaren Regel (α oder β) entstanden ist.
Induktionsschritt: Annahme p(n) gilt. Zu zeigen: p(n + 1).
Beweis: Induktion
Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar
270
p(n): Falls M erfüllbar und das Tableau T in n Schritten
aus M gebildet wurde, ist T erfüllbar
Fall 2b: β-Regel angewandt F ≡F1 ∨F2 . Dann 1=A(F )=A(F1 )∨A(F2 ), so
A(F1 )=1 oder A(F2 )=1. Dann A|=NB ∪{Fi }, i=1 oder 2, d.h. A Modell
für alle Formeln auf der Erweiterung von B mit F1 oder F2 , so T erfüllbar.
Fall 2: B ′ = B d.h. B erfüllbar. Sei A Modell für die Formeln NB auf B.
Induktionsvoraussetzung: T ′ erfüllbar, d.h. hat (mindestens) einen erfüllbaren Ast B ′ .
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 Ast B von T ′ und
eine Formel F auf B oder in M, die kein Literal ist, so dass T durch die Erweiterung
von B gemäß der auf F anwendbaren Regel (α oder β) entstanden ist.
Induktionsschritt: Annahme p(n) gilt. Zu zeigen: p(n + 1).
Beweis: Induktion
Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar
Definition.Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist.
Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren Ast hat
Definition.Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist.
Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren Ast hat
Fall 2a: α-Regel angewandt F ≡ F1 ∧ F2 . Dann ist A Modell für
NB ∪ {F1 , F2 }, d.h.: die Erweiterung von B mit dieser α-Regel ist erfüllbar,
so T erfüllbar.
Fall 2: B ′ = B d.h. B erfüllbar. Sei A Modell für die Formeln NB auf B.
Induktionsvoraussetzung: T ′ erfüllbar, d.h. hat (mindestens) einen erfüllbaren Ast B ′ .
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 Ast B von T ′ und
eine Formel F auf B oder in M, die kein Literal ist, so dass T durch die Erweiterung
von B gemäß der auf F anwendbaren Regel (α oder β) entstanden ist.
Lemma 1: Beweis
269
p(n): Falls M erfüllbar und das Tableau T in n Schritten
aus M gebildet wurde, ist T erfüllbar
Induktionsschritt: Annahme p(n) gilt. Zu zeigen: p(n + 1).
Beweis: Induktion
Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar
Definition.Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist.
Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren Ast hat
Lemma 1: Beweis
Lemma 1: Beweis
da M erfüllbar ist, ist ein solches Tableau erfüllbar
Initialisierung
Das Tableau, das nur aus dem Knoten 1 besteht, ist ein Tableau für M
Induktionsbasis: T wurde in einem Schritt gebildet.
Beweis: Induktion
Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar
Definition.
Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist.
Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren Ast hat
Lemma 1: Beweis
272
271
“falls es keinen Tableaubeweis für die Unerfüllbarkeit von M gibt (d.h.
“maximales Tableau’” für M nicht geschlossen) so ist M erfüllbar”
... alternativ:
Theorem (Vollständigkeit)
Falls M unerfüllbar, so gibt es einen Tableaubeweis für die Unerfüllbarkeit
von M (d.h. einen Tableau für M, das geschlossen ist).
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.
Korrektheit und Vollständigkeit
Falls die Menge der Formeln auf B (und M) erfüllbar ist, kann B nicht Formeln F und
¬F enthalten, d.h. B kann nicht geschlossen sein.
Annahme: T erfüllbar. Dann hat T einen erfüllbaren Ast B.
Beweis: Kontraposition
Lemma 2. Ein geschlossenes Tableau ist nicht erfüllbar
Lemma 1. Jedes Tableau für eine erfüllbare Formelmenge M ist erfüllbar
Tableau ist erfüllbar, wenn es (mindestens) einen erfüllbaren Ast hat
Tableauast ist erfüllbar, wenn die Menge seiner Formeln erfüllbar ist
Definition.
Lemma 2: Beweis
274
273
1: A, ¬A ∈ B: unmöglich, da B offen ist.
2: A, L ∈ B mit L Literal in D. N erfüllbar gdw. N\{D ∨ ¬A} erfüllbar.
3: L, ¬A ∈ B, mit L Literal in C . N erfüllbar gdw. N\{C ∨ A} erfüllbar.
4: L1 , L2 ∈ B, mit L1 Literal in C , L2 Literal in D.
N erfüllbar gdw. N\{C ∨ A, D ∨ ¬A} erfüllbar.
N 7→ N ′ , N ′ Klauselmenge ohne komplementäre Literale und ohne ⊥
Die Erfüllbarkeit von N ′ folgt aus der Vollständigkeit der Resolution.
Fall
Fall
Fall
Fall
Annahme: C nicht leer. Da B voll expandiert ist, wurde die β-Regel für C ∨ A
angewandt (auch für D ∨ ¬A falls D nicht leer).
Sei N die Menge der Formeln auf B. Da B offen ist, ist ⊥ nicht in N.
Seien C ∨ A, D ∨ ¬A zwei Klauseln in N die komplementäre Literale enthalten. Einer
von C , D ist nicht leer (sonst wäre B geschlossen).
Beweis: (für klausale Tableaux)
Lemma 3.
Sei B offener Ast in voll expandiertem Tableau.
Dann ist die Menge der Formeln in B erfüllbar.
Lemma 3: Beweis
... Also: Voll expandiertes Tableau für unerfüllbares M ist geschlossen
Lemma 3.
Sei B offener Ast in voll expandiertem Tableau.
Dann ist die Menge der Formeln in B erfüllbar.
angewendet worden ist.
• auf jedem offenen Ast
• auf jede passende Formel
• jede Regel
Ein Tableau heißt voll expandiert, wenn
Definition.
Kern des Vollständigkeitsbeweises
276
275
Zuerst {¬P, Q}: OK
Zuerst {¬P, R}: Sackgasse
Beispiel: M = {{P}, {¬Q}, {¬P, Q}, {¬P, R}}
(bei schwacher Konnektionsbedinung nicht)
Bei starker Konnektionsbedingung kann ungünstige Erweiterung in
Sackgasse führen.
Jedoch
Theorem (hier ohne Beweis)
Regularität, starke und schwache Konnektionsbedingung
erhalten Vollständigkeit.
Klauseltableau: Einschränkungen des Suchraums
Bei Erweiterung von Ast B muss mindestens eines der neuen Literale
komplementär zum Blatt von B sein – außer beim ersten Schritt.
Starke Konnektionsbedingung (Modellelimination)
Bei Erweiterung von Ast B muss mindestens eines der neuen Literale
komplementär zu Literal in B sein.
Schwache Konnektionsbedingung (Connection calculus)
Kein Literal darf auf einem Ast mehr als einmal vorkommen
Regularität:
Klauseltableau: Einschränkungen des Suchraums
278
277
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)
{¬F → (V ∧ M), (M ∧ F ) ∨ (M ∧ ¬P) ∨ (V ∧ P),
¬P → (F ∧ M ∧ ¬V ), (P ∧ ¬F ) ∨ (V ∧ ¬P)}
|=
Zu zeigen:
M ∧ V ∧ P ∧ ¬F
Dann müssen sie ans Meer mit Vollpension, mit Pool und ohne Flug.
Behauptung
Klauseltableau: Weiteres Beispiel
(P ∧ ¬F ) ∨ (V ∧ ¬P)
Auch 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 ∧ M ∧ ¬V )
Gibt es keinen Pool, so besteht Tochter Lisa auf einer Flugreise und Urlaub am Meer
und darauf, dass keine Vollpension gebucht wird.
(M ∧ F ) ∨ (M ∧ ¬P) ∨ (V ∧ P)
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.
¬F → (V ∧ M)
Falls sie nicht mit dem Flugzeug fliegen, besteht der Vater auf Vollpension am Meer.
Signatur: F : Flugreise V : Vollpension M: Meer P: Pool
Klauseltableau: Weiteres Beispiel
280
279
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
• mit starker Konnektionsbedingung
• mit Regularität
• bei Beginn mit Klausel (1)
Konstruktion des Konnektionstableaus
Beobachtung
Nahezu deterministische Beweiskonstruktion
Dann:
F ∨V
F ∨M
M∨V
M∨P
M ∨ ¬P ∨ V
F ∨M∨V
F ∨M∨P
F ∨ ¬P ∨ V
P ∨F
P ∨M
P ∨ ¬V
P ∨V
¬F ∨ V
¬F ∨ ¬P
¬M ∨ ¬V ∨ ¬P ∨ F
Klauseltableau: Weiteres Beispiel
Negation der Behauptung
(P ∧ ¬F ) ∨ (V ∧ ¬P)
¬P → (F ∧ M ∧ ¬V )
(M ∧ F ) ∨ (M ∧ ¬P) ∨ (V ∧ P)
¬F → (V ∧ M)
Klauseltableau: Weiteres Beispiel
282
281
F
V
F
P
V
P
F
1
2. Aussagenlogik
F ∨V
F ∨M
M∨V
M∨P
M ∨ ¬P ∨ V
F ∨M∨V
F ∨M∨P
F ∨ ¬P ∨ V
P ∨F
P ∨M
P ∨ ¬V
P ∨V
¬F ∨ V
¬F ∨ ¬P
¬M ∨ ¬V ∨ ¬P ∨ F
4.06.2013
Teil 8
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
P
F
P
F
V
M
M
V
V
Klauseltableau: Weiteres Beispiel
P
F
284
283
• Terminierung
• Strikte Tableaux
• Schwache und starke Konnektionsbedingung
• Regularität
• Klauseltableau
• Korrektheit und Vollständigkeit
• Formale Definition des Kalküls
• Tableauregeln (mit uniformer Notation)
Beweis durch Widerspruch und Fallunterscheidung
Zusammenfassung: Tableaukalkül
Dann sind alle Äste in T endlich, und so ist auch T endlich (König’s Lemma).
Beweis: Neue Formeln mit denen ein Tableau erweitert wird sind ⊥, (⊤) oder
Teilformeln der Formel, auf der die Erweiterungsregel angewandt wird. Da T strikt
ist, wird für jede Formel F die entsprechende Erweiterungsregel höchstens einmal auf
jeden Ast, der die Formel enthält, angewandt.
Theorem.
Sei T ein striktes aussagenlogisches Tableau. Dann ist T endlich.
Definition. Ein Tableau ist strikt, falls für jede Formel F die entsprechende
Erweiterungsregel höchstens einmal auf jeden Ast, der die Formel enthält,
angewandt wurde.
Terminierung
286
285
Herunterladen