Sie sind auf Seite 1von 39

3.

0 VU Formale Modellierung
Gernot Salzer
AB Theoretische Informatik und Logik
Institut fr Computersprachen
22.10.2013
1
Was Sie letzte Woche hrten
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
2
Aussagenlogische Funktionen berblick
t
r
u
e
f
a
l
s
e
1 0

x n
o
t
1 0
0 1

x y a
n
d
n
a
n
d
o
r
n
o
r
i

x
o
r
i
m
p
l
i
e
s
i
f
1 1 1 0 1 0 1 0 1 0 1 0
1 0 0 1 1 0 0 1 0 1 1 0
0 1 0 1 1 0 0 1 1 0 0 1
0 0 0 1 0 1 1 0 1 0 1 0
, , ,
Eine Menge von Funktionen heit vollstndig (fr eine Funktionsklasse),
wenn damit alle Funktionen (der Klasse) ausgedrckt werden knnen.
not, and, or ist vollstndig fr die aussagenlogischen Funktionen.
Begrndung siehe spter.
Die Mengen not, and, nand, not, or, nor, not, implies und
implies, false sind ebenfalls funktional vollstndig.
3
Was Sie letzte Woche hrten
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
4
Induktive Denitionen
| . . . Universum, Menge aller relevanten Elemente
/
0
| . . . Menge von Grundelementen
f
1
: |
n
1
|, f
2
: |
n
2
|, . . . Konstruktionsfunktionen
Stufenweise Konstruktion der Menge /
/
i +1
= /
i
f
1
(x
1
, . . . , x
n
1
) [ x
1
, . . . , x
n
1
/
i

f
2
(x
1
, . . . , x
n
2
) [ x
1
, . . . , x
n
2
/
i


/ = lim
i
/
i
=

i 0
/
i
Induktive Denition der Menge /
/ ist die kleinste Menge, fr die gilt:
/
0
/
Wenn x
1
, . . . , x
n
1
/, dann f
1
(x
1
, . . . , x
n
1
) /.
Wenn x
1
, . . . , x
n
2
/, dann f
2
(x
1
, . . . , x
n
2
) /.
. . .
5
Beispiel: Geschachtelte Klammern
Gesucht: Spezikation aller richtig geschachtelten Folgen von runden,
eckigen und geschwungenen Klammern, wie etwa ([[{()}]])
Induktive Denition:
Die Menge / der Klammernfolgen ist die kleinste Menge, fr die gilt:
(k1) (), [], {} / alternativ: (), [], {} /
(k2) Wenn x /, dann auch (x) /.
(k3) Wenn x /, dann auch [x] /.
(k4) Wenn x /, dann auch {x} /.
Wir zeigen, dass ([[{()}]]) in der Menge / liegt.
1
() / wegen (k1)
2
Da () /, gilt auch {()} /. wegen (k4)
3
Da {()} /, gilt auch [{()}] /. wegen (k3)
4
Da [{()}] /, gilt auch [[{()}]] /. wegen (k3)
5
Da [[{()}]] /, gilt auch ([[{()}]]) /. wegen (k2)
6
Aussagenlogik Syntax
1 = A, B, C, . . . , A
0
, A
1
, . . . aussagenlogische Variablen
Syntax aussagenlogischer Formeln
Die Menge / der aussagenlogischen Formeln ist die kleinste Menge, fr
die gilt:
(a1) 1 / Variablen sind Formeln.
(a2) , / und sind Formeln.
(a3) F /, wenn F /. F ist eine Formel, falls F eine ist.
(a4) (F G) /, wenn F, G / und , , , , , ,, , .
(F G) ist eine Formel, falls F und G welche sind und ein binres Op.symbol ist.
(((A B) (B C)) ((A ) B)) /
7
Aussagenlogik Semantik
J = I [ I : 1 B} . . . Menge aller Interpretationen
Semantik aussagenlogischer Formeln
Der Wert einer Formel in einer Interpretation I wird festgelegt durch die
Funktion val : J / B:
(v1) val
I
(A) = I(A) fr A 1;
(v2) val
I
() = 1 und val
I
() = 0;
(v3) val
I
(F) = not val
I
(F);
(v4) val
I
( (F G) ) = val
I
(F) val
I
(G),
wobei die logische Funktion zum Operator ist.
A B ((A B) )
1 1 1 0 0 1 1 0
1 0 1 1 1 0 0 0
0 1 0 0 0 1 1 0
0 0 0 0 1 0 1 0
bedeutet:
I(A) = 1, I(B) = 1: val
I
( ) = = 1
I(A) = 1, I(B) = 0: val
I
( ) = = 0
I(A) = 0, I(B) = 1: val
I
( ) = = 1
I(A) = 0, I(B) = 0: val
I
( ) = = 1
8
Eine Formel F heit
gltig, wenn val
I
(F) = 1 fr alle I J; Tautologie
erfllbar, wenn val
I
(F) = 1 fr mindestens ein I J;
widerlegbar, wenn val
I
(F) = 0 fr mindestens ein I J;
unerfllbar, wenn val
I
(F) = 0 fr alle I J. Kontradiktion
Semantische quivalenz
Zwei Formeln F und G heien quivalent, geschrieben F = G,
wenn val
I
(F) = val
I
(G) fr alle Interpretationen I gilt.
(A B) und (A B) sind quivalent
A B (A B) =(A B)
1 1 1 0 1
1 0 0 0 0
0 1 1 1 1
0 0 1 1 1
9
B, and, or, not, 0, 1) ist eine Boolesche Algebra
(A B) C = A (B C) (A B) C = A (B C)
A B = B A A B = B A
A A = A A A = A
A = A A = A
A A = A A =
A (A B) = A A (A B) = A
A (B C) = (A B) (A C)
A (B C) = (A B) (A C)
Assoziativitt
Kommutativitt
Idempotenz
Neutralitt
Komplement
Absorption
Distributivitt
Weitere quivalenzen
A B = A B
A B = A B
A B = A B
A B = A B
A B = (A B) (A B)
= (A B) (A B)
A , B = (A B) (A B)
= (A B) (A B)
(A B) = A B
(A B) = A B
A = A
A = A
A = A
A =
A =
A A =
A A =
=
=
10
Logische Konsequenz
F
1
, . . . , F
n
[=
I
G: Aus val
I
(F
1
) = = val
I
(F
n
) = 1 folgt val
I
(G) = 1.
Logische Konsequenz
F
1
, . . . , F
n
[= G: F
1
, . . . , F
n
[=
I
G gilt fr alle Interpretationen I.
Die Formel G ist eine logische Konsequenz der Formeln F
1
, . . . , F
n
.
Die Formel G folgt aus den Formeln F
1
, . . . , F
n
.
Konvention: [= G (n = 0) bedeutet G ist gltig.
A, A B [= B
I(A) I(B) A, A B [=
I
B
1 1 1 1 1
1 0 1 0 0
0 1 0 1 1
0 0 0 1 0
A, A B ,[= B
Gegenbeispiel: I(A) = 1, I(B) = 0
11
Was Sie heute erwartet
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
3.4. Von der Funktion zur Formel
3.5. Normalformen
3.6. Das Erfllbarkeitsproblem
12
quivalenz, Konsequenz und Gltigkeit
Die Formeln F und G sind quivalent (F = G) genau dann,
wenn F G eine gltige Formel ist.
Deduktionstheorem
G folgt aus F
1
, . . . , F
n
genau dann, wenn F
n
G aus F
1
, . . . , F
n1
folgt.
F
1
, . . . , F
n
[= G genau dann, wenn F
1
, . . . , F
n1
[= F
n
G.
Mehrfache Anwendung liefert:
F
1
, . . . , F
n
[= G genau dann, wenn F
1
(F
2
(F
n
G) ) gltig.
Wegen A (B C) = (A B) C erhalten wir weiters:
F
1
, . . . , F
n
[= G genau dann, wenn (F
1
F
n
) G gltig.
Das heit: Semantik (= und [=) ausdrckbar in der Syntax ( und ).
Ist nicht in jeder Logik mglich! 13
Was Sie heute erwartet
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
3.4. Von der Funktion zur Formel
3.5. Normalformen
3.6. Das Erfllbarkeitsproblem
14
Rezept fr Zweifelsflle der aussagenlogischen Modellierung
1
Identiziere die elementaren Aussagen.
2
Analysiere alle Wahrheitsbelegungen.
3
Whle geeignete logische Funktionen
(unbeirrt von Intuition und natrlicher Sprache)
Klingt ja nicht schlecht, aber:
Wie kann man eine beliebige Funktion auf eine Kombination der
vordenierten logischen Grundfunktionen zurckfhren?
Beziehungsweise:
Wie kann man eine beliebige Funktion mit den vordenierten Operatoren
als Formel darstellen?
Gesucht: Ein allgemeines Verfahren (ein Algorithmus), das zu einer
gegebenen Funktion eine passende Formel liefert.
15
Von der Funktion zur Formel
Gegeben: Funktion f : B
n
B (z.B. als Wahrheitstafel)
Gesucht: Formel, die f darstellt
A B C F[A, B, C]?
x y z f (x, y, z)
1 1 1 1
1 1 0 0
1 0 1 0
1 0 0 1
0 1 1 1
0 1 0 0
0 0 1 0
0 0 0 0
:= (ABC)
1
0
0
0
0
0
0
0
(ABC)
0
0
0
1
0
0
0
0
(ABC)
0
0
0
0
1
0
0
0
DNF
f
. . . Disjunktive Normalform zur Funktion f
16
Von der Funktion zur Formel
Gegeben: Funktion f : B
n
B (z.B. als Wahrheitstafel)
Gesucht: Formel, die f darstellt
A B C F[A, B, C]
?
x y z f (x, y, z)
1 1 1 1
1 1 0 0
1 0 1 0
1 0 0 1
0 1 1 1
0 1 0 0
0 0 1 0
0 0 0 0
:= (ABC)
1
0
0
0
0
0
0
0
(ABC)
0
0
0
1
0
0
0
0
(ABC)
0
0
0
0
1
0
0
0
DNF
f
. . . Disjunktive Normalform zur Funktion f
16
Von der Funktion zur Formel
Gegeben: Funktion f : B
n
B (z.B. als Wahrheitstafel)
Gesucht: Formel, die f darstellt
A B C F[A, B, C]?
x y z f (x, y, z)
1 1 1 1
1 1 0 0
1 0 1 0
1 0 0 1
0 1 1 1
0 1 0 0
0 0 1 0
0 0 0 0
:= (ABC)
1
0
1
1
1
1
1
1
(ABC)
1
1
0
1
1
1
1
1
(ABC)
1
1
1
1
1
0
1
1

1 1
1 1
1 1
1 1
1 1
1 1
0 1
1 0
KNF
f
. . . Konjunktive Normalform zur Funktion f
17
Von der Funktion zur Formel
Gegeben: Funktion f : B
n
B (z.B. als Wahrheitstafel)
Gesucht: Formel, die f darstellt
A B C F[A, B, C]
?
x y z f (x, y, z)
1 1 1 1
1 1 0 0
1 0 1 0
1 0 0 1
0 1 1 1
0 1 0 0
0 0 1 0
0 0 0 0
:= (ABC)
1
0
1
1
1
1
1
1
(ABC)
1
1
0
1
1
1
1
1
(ABC)
1
1
1
1
1
0
1
1

1 1
1 1
1 1
1 1
1 1
1 1
0 1
1 0
KNF
f
. . . Konjunktive Normalform zur Funktion f
17
Von der Funktion f : B
n
B zur Formel DNF
f
Notation:

F, G, H, . . . = F G H

=

F, G, H, . . . = F G H

=
Charakteristisches Konjunkt fr

b = (b
1
, . . . , b
n
) B
n
:
K

b
=

A
i
[ b
i
= 1, i = 1..n

A
i
[ b
i
= 0, i = 1..n

b = (1, 0, 1, 1) = K

b
= A
1
A
2
A
3
A
4
I

b
. . . Interpretation deniert durch I

b
(A
i
) = b
i
K

b
hat den Wert 1 fr I

b
, und 0 fr alle anderen Interpretationen.
I

b
: A
1
1, A
2
0, A
3
1, A
4
1 = val
I

b
(K

b
) = 1
Disjunktive Normalform fr f : B
n
B
DNF
f
=

b
[ f (

b) = 1,

b B
n
reprsentiert die Funktion f , d.h.:
val
I

b
(DNF
f
) = f (

b) fr alle

b B
n
.
18
Von der Funktion f : B
n
B zur Formel KNF
f
Notation:

F, G, H, . . . = F G H

=

F, G, H, . . . = F G H

=
Charakteristisches Disjunkt fr

b = (b
1
, . . . , b
n
) B
n
:
D

b
=

A
i
[ b
i
= 0, i = 1..n

A
i
[ b
i
= 1, i = 1..n

b = (1, 0, 1, 1) = D

b
= A
1
A
2
A
3
A
4
I

b
. . . Interpretation deniert durch I

b
(A
i
) = b
i
D

b
hat den Wert 0 fr I

b
, und 1 fr alle anderen Interpretationen.
I

b
: A
1
1, A
2
0, A
3
1, A
4
1 = val
I

b
(D

b
) = 0
Konjunktive Normalform fr f : B
n
B
KNF
f
=

b
[ f (

b) = 0,

b B
n
reprsentiert die Funktion f , d.h.:
val
I

b
(KNF
f
) = f (

b) fr alle

b B
n
.
19
A
1
A
2
A
3

b f (

b)
1 1 1 1
1 1 0 0
1 0 1 0
1 0 0 1
0 1 1 1
0 1 0 0
0 0 1 0
0 0 0 0
K

b
A
1
A
2
A
3
=: K
111
A
1
A
2
A
3
=: K
100
A
1
A
2
A
3
=: K
011
D

b
A
1
A
2
A
3
=: D
110
A
1
A
2
A
3
=: D
101
A
1
A
2
A
3
=: D
010
A
1
A
2
A
3
=: D
001
A
1
A
2
A
3
=: D
000
DNF
f
= K
111
K
100
K
011
KNF
f
= D
110
D
101
D
010
D
001
D
000
Folgerung:
not, and, or ist funktional vollstndig.
20
Was Sie heute erwartet
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
3.4. Von der Funktion zur Formel
3.5. Normalformen
3.6. Das Erfllbarkeitsproblem
21
Normalformen
Literal: Variable oder negierte Variable, also A, A, B, B, . . .
Negationsnormalform (NNF)
Literale sowie und sind in NNF.
(F G) und (F G) sind in NNF, wenn F und G in NNF sind.
Keine Formel sonst ist in NNF.
NNF: (A ((B C) )) Keine NNFs: A, (A B),
DNF
f
und KNF
f
sind Formeln in NNF.
Disjunktive Normalform (DNF)
, sowie Disjunktionen von Konjunktion von Literalen:
(
()
A
1,1

()
A
1,2

()
A
1,3
) (
()
A
2,1

()
A
2,2

()
A
2,3
)
Konjunktive Normalform (KNF)
, sowie Konjunktionen von Disjunktion von Literalen:
(
()
A
1,1

()
A
1,2

()
A
1,3
) (
()
A
2,1

()
A
2,2

()
A
2,3
)
22
Normalformen
Formeln, die gleichzeitig in DNF und KNF sind:

()
A
1

()
A
2

()
A
n
()
A
1

()
A
2

()
A
n
Normalformen fr die Funktion f von vorhin
DNF
f
= K
111
K
100
K
011
vollstndige (maximale) DNF, NNF
(A
2
A
3
) (A
1
A
2
A
3
) minimale DNF, NNF
KNF
f
= D
110
D
101
D
010
D
001
D
000
vollstndige KNF, NNF
(A
1
A
3
) (A
2
A
3
) (A
2
A
3
) minimale KNF, NNF
(A
1
A
2
) (A
2
A
3
) (A
2
A
3
) andere minimale KNF, NNF
Normalformen sind in der Regel nicht eindeutig.
Typische Problemstellung: Finde kleine oder kleinste Normalform.
23
Normalformen
Weitere Normalformen:
Beschrnkung auf andere Operatoren, etwa
Andere Einschrnkungen der Struktur, etwa
Konjunktion von Disjunktionen von Konjunktionen von Literalen
(ermglicht kleinere Formeln als DNF oder KNF)
Noch mehr Normalformen fr die Funktion f von vorhin
(A
2
A
3
) (A
1
((A
2
A
2
) (A
3
A
3
) (A
2
A
2
) (A
3
A
3
)))
((A
1
A
3
) A
2
) (A
2
A
3
) NNF
24
Konstruktion von DNFs/KNFs Semantische Methode
Gegeben: Aussagenlogische Formel F
Gesucht: quivalente Formel in DNF/KNF
1
Stelle die zu F gehrige Funktion f als Wahrheitstafel dar.
2
Konstruiere DNF
f
bzw. KNF
f
.
A
1
A
2
A
3
F := (A
1
(A
2
A
3
)) (A
1
(A
2
A
3
))
1 1 1 1 K
111
1 1 0 0 D
110
1 0 1 0 D
101
1 0 0 1 K
100
0 1 1 1 K
011
0 1 0 0 D
010
0 0 1 0 D
001
0 0 0 0 D
000
DNF: F = K
111
K
100
K
011
KNF: F = D
110
D
101
D
010
D
001
D
000
25
Konstruktion von DNFs/KNFs Algebraische Methode
Gegeben: Aussagenlogische Formel F
Gesucht: quivalente Formel in DNF/KNF
1
Ersetze alle Junktoren durch , und .
A B = A B A B = A B A B = A B A B = A B
A B = (A B) (A B) = (A B) (A B)
A B = (A B) (A B) = (A B) (A B)
2
Verschiebe Negationen nach innen, eliminiere Doppelnegationen.
(A B) = A B (A B) = A B A = A
3
Wende das Distributivgesetz an.
DNF: Schiebe Disjunktionen nach auen mittels
A (B C) = (A B) (A C)
KNF: Schiebe Konjunktionen nach auen mittels
A (B C) = (A B) (A C)
4
Eliminiere und .
A = A
A = A
A =
A =
A A =
A A =
=
=
(quivalenzen werden hier von links nach rechts angewendet.)
26
((A
1
A
2
) A
2
) (A
1
(A
2
))
1
Ersetze alle Junktoren durch , und :
( (A
1
A
2
) A
2
) ( A
1
(A
2
))
((A
1
A
2
) A
2
) ( A
1
(A
2
))
((A
1
A
2
) A
2
) (A
1
(A
2
))
2
Verschiebe Negationen nach innen, eliminiere Doppelnegationen:
((A
1
A
2
) A
2
) (A
1
(A
2
))
( (A
1
A
2
) A
2
) ( A
1
(A
2
))
3
Wende das Distributivgesetz an:
DNF: (((A
1
A
2
) A
2
) A
1
) (((A
1
A
2
) A
2
) (A
2
))
(((A
1
A
2
) A
2
) A
1
) (A
1
A
2
A
2
) (A
2
A
2
)
(A
1
A
2
A
1
) (A
2
A
1
) (A
1
A
2
A
2
) (A
2
A
2
)
(A
1
A
2
) (A
2
A
1
) (A
1
A
2
) (A
2
A
2
) (Idemp.)
KNF: (A
1
A
2
) (A
2
A
2
) (A
1
(A
2
))
(A
1
A
2
) (A
2
A
2
) (A
1
A
2
) (A
1
)
27
4
Vereinfache mit den Regeln fr und :
DNF: (A
1
A
2
) (A
2
A
1
) (A
1
A
2
) (A
2
A
2
)
(A
1
A
2
) (A
2
A
1
) (A
1
A
2
)
(A
1
A
2
) (A
2
A
1
) (A
1
A
2
)
(A
1
A
2
) (A
2
A
1
)
(A
1
A
2
) (A
2
A
1
) DNF erreicht!
A
1
(A
2
A
2
) (Distributivgesetz, keine DNF mehr)
A
1

A
1
(wieder DNF)
KNF: (A
1
A
2
) (A
2
A
2
) (A
1
A
2
) (A
1
)
(A
1
A
2
) (A
2
A
2
) (A
1
A
2
) A
1
KNF erreicht!
(A
1
A
2
) (A
2
A
2
) A
1
(Absorption)
(A
1
A
2
) A
1
(keine KNF mehr!)
(A
1
A
2
) A
1
(wieder KNF)
A
1
(Absorption)
28
Welche Methode ist besser?
Gefhlsmig: Die semantische Methode ist bersichtlicher.
Theoretisch: Beide Methoden sind schlecht, denn beide sind im
schlechtesten Fall exponentiell.
Semantische Methode: Aufwand immer exponentiell in Variablenzahl!
Wahrheitstafel besitzt 2
Variablenzahl
Zeilen.
Algebraische Methode: Schritt 3 (Distributivgesetz) ist aufwndig,
kann zu einer exponentiellen Verlngerung der Formel fhren.
Praktisch:
Semantische Methode nur brauchbar bei Formeln mit sehr wenigen
Variablen. Immer exponentiell in Variablenzahl, liefert immer die
maximale DNF/KNF.
Algebraische Methode teilweise auch fr groe Formeln brauchbar,
insbesondere mit Computeruntersttzung. Kann auch kleine
DNFs/KNFs liefern.
29
Was Sie heute erwartet
1. Organisatorisches
2. Was bedeutet Modellierung?
3. Aussagenlogik
3.1. Was ist Logik?
3.2. Aussagenlogische Funktionen
3.3. Syntax und Semantik der Aussagenlogik
3.4. Von der Funktion zur Formel
3.5. Normalformen
3.6. Das Erfllbarkeitsproblem
30
Das Erfllbarkeitsproblem der Aussagenlogik
Erfllbarkeitsproblem (Satisability, SAT)
Gegeben: aussagenlogische Formel F
Frage: Ist F erfllbar, d.h., gibt es ein I J, sodass val
I
(F) = 1?
Eziente Verfahren zur Lsung von SAT sind wichtig in der Praxis:
Viele praktische Aufgaben lassen sich als Probleme der Aussagenlogik
formulieren, wie z.B.

Verikation von Hard- und Software

Planungsaufgaben, Logistik-Probleme
Die meisten aussagenlogischen Fragen lassen sich zu einem
(Un)Erfllbarkeitsproblem umformulieren:
G gltig G unerfllbar
G widerlegbar G erfllbar
G = H G , H unerfllbar
F
1
, . . . , F
n
[= G F
1
F
n
G unerfllbar
31
Methoden zur Lsung von SAT
Wahrheitstafel:
Berechne den Formelwert der Reihe nach fr jede Interpretation.
Antwort ja, sobald man den Wert 1 erhlt; nein, wenn immer 0.
Unbrauchbar, da exponentiell: 2
Variablenzahl
Interpretationen!
Umwandlung in DNF:
Wandle F in eine disjunktive Normalform um.
Antwort nein, wenn man erhlt; ja sonst.
Unbrauchbar: F meistens in Fast-KNF. Distributivgesetz verlngert F
exponentiell.
SAT-Solver: Programme, die SAT lsen.
Verwenden fortgeschrittene algebraische/graphenorientierte/logische
Methoden mit besonderen Datenstrukturen.
Knnen SAT fr Formeln mit Millionen von Variablen lsen.
Stand der Technik bei der Verikation von Prozessoren etc.
Aber: Exponentielle Laufzeit fr manche Formelarten! 32
$ 1.000.000, Prmie fr einen ezienten SAT-Solver
. . . oder fr den Beweis, dass es diesen nicht geben kann.
Abzuholen beim Clay Mathematics Institute (www.claymath.org)
fr das oene Milleniumsproblem P versus NP.
Weiters warten ewiger Ruhm, eine Universittsstelle, . . .
P: Klasse der Probleme, die sich ezient (polynomiell) lsen lassen.
NP: Klasse jener Probleme, deren Lsungen sich ezient (polynomiell)
verizieren lassen; die Suche nach der Lsung kann aber aufwndig sein.
P versus NP (Stephen Cook, 1971)
Gilt P = NP oder P ,= NP (gleichbedeutend mit P NP)?
33
NP-Vollstndigkeit
Die schwierigsten Probleme in NP heien NP-vollstndig.
Ihr Kennzeichen:
Kann man ein NP-vollstndiges Problem ezient lsen,
dann kann man alle Probleme in NP ezient lsen.
HAMILTON-KREIS ist NP-vollstndig
Gegeben: eine Gruppe Studierender, von denen sich einige nicht mgen.
Frage: Kann man die Gruppe so um einen runden Tisch setzen, dass sich
je zwei Sitznachbarn vertragen?
Wenn alle sitzen, ist leicht zu prfen, ob sich alle Nachbarn verstehen.
Das Finden einer geeigneten Sitzordnung ist aber schwierig.
Exponentiell?
34
SAT ist NP-vollstndig
Gegeben: eine aussagenlogische Formel.
Frage: Ist die Formel erfllbar?
Ist die Interpretation I gegeben, lsst sich val
I
(F) = 1 leicht
berprfen.
Das Finden der Interpretation ist aber schwierig. Exponentiell?
SAT polynomiell lsbar = P = NP
SAT nicht polynomiell lsbar = P ,= NP
35
Wann wird die Frage P
?
= NP gelst werden?
Anzahl
5
10
5
2
0
0
2

2
0
0
9
12
2
0
1
0

2
0
1
9
13
2
0
2
0

2
0
2
9
10
2
0
3
0

2
0
3
9
5
2
0
4
0

2
0
4
9
12
2
0
5
0

2
0
5
9
4
2
0
6
0

2
0
6
9
0
2
0
7
0

2
0
7
9
1
2
0
8
0

2
0
8
9
0
2
0
9
0

2
0
9
9
7
2
1
0
0

2
1
9
9
5
2
2
0
0

3
0
0
0
5
n
i
e
nach 2070
18%
bis 2070
61%
k.A.
21%
Wie wird die Antwort lauten?
P = NP
9%
weder-noch
4%
P = NP
61%
k.A.
26%
[W.I.Gasarch, 2002, Meinungsumfrage unter Experten]
36
Falls Sie SAT nicht ausreichend inspiriert . . .
MINESWEEPER ist NP-vollstndig
Gegeben: eine Minesweeper-Stellung
Frage: Ist die Stellung mglich?
Beispiel einer unmglichen Stellung:
2, aber 5 Bomben in der Umgebung
6, aber nur drei Bomben mglich
1, aber keine Bombe in der Umgebung
MINESWEEPER polynomiell lsbar = P = NP
MINESWEEPER nicht polynomiell lsbar = P ,= NP
Es sind mittlerweile hunderte von NP-vollstndigen Problemen aus allen
Bereichen der Informatik bekannt.
37