• Keine Ergebnisse gefunden

NP -vollst¨andigerProbleme Komplexit¨atstheorieTeilII:EineAuswahl FormaleSprachenundKomplexit¨at

N/A
N/A
Protected

Academic year: 2021

Aktie "NP -vollst¨andigerProbleme Komplexit¨atstheorieTeilII:EineAuswahl FormaleSprachenundKomplexit¨at"

Copied!
190
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Formale Sprachen und Komplexit¨ at

Sommersemester 2019

Komplexit¨ atstheorie Teil II: Eine Auswahl N P -vollst¨ andiger Probleme

Prof. Dr. David Sabel

LFE Theoretische Informatik

(2)

Inhalt

Auswahl an N P -vollst¨ andigen Problemen

N P -Vollst¨ andigkeitsbeweise durch polynomielle Reduktionen

und zeigen, dass das Problem in N P ist

(3)

3-CNF-SAT

Konjunktive Normalform

Aussagenlog. Formel F ist in konjunktiver Normalform (CNF), wenn:

F =

m

^

i=1

(

ni

_

j=1

L

i,j

)

Literal L

i,j

ist aussagenlogische Variable oder deren Negation (

ni

W

j=1

L

i,j

) ist eine Klausel

Erf¨ ullende Belegung muss ≥ 1 Literal pro Klausel wahr machen.

Klauselmengenschreibweise: {{L

1,1

, . . . , L

1,n1

}, . . . , {L

m,1

, . . . , L

m,nm

}}

Annahme: Keine Klauseln, die x und ¬x enthalten

Diese Klauseln sind immer wahr und k¨ onnen gel¨ oscht werden.

(4)

Konjunktive Normalform

Jede aussagenlogische Formel kann in eine

¨aquivalente

konjunktive Normalform gebracht werden:

⇐⇒ , = ⇒ aufl¨ osen

Negationen nach innen schieben und anschließend

Ausmultiplizieren (Distributivit¨ at, Kommutativit¨ at anwenden, um konjunktive Normalform herzustellen)

Aber:

Algorithmus hat im worst case

exponentielle Laufzeit

Algorithmus kann daher

nicht

f¨ ur eine

Polynomialzeitreduktion verwendet werden.

(5)

3-CNF-SAT

Definition (3-CNF-SAT)

Das 3-CNF-SAT-Problem l¨ asst sich in der gegeben/gefragt-Notation formulieren als:

gegeben: Eine aussagenlogische Formel F in konjunktiver Normal- form, sodass jede Klausel h¨ ochstens 3 Literale enth¨ alt.

gefragt: Ist F erf¨ ullbar? Genauer: Gibt es eine erf¨ ullende Belegung

der Variablen mit den Wahrheitswerten 0 und 1, sodass F

den Wert 1 erh¨ alt?

(6)

N P -Vollst¨ andigkeit von 3-CNF-SAT

Satz

3-CNF-SAT ist N P-vollst¨ andig.

Beweis, Teil 1: 3-CNF-SAT ist in

N P

Rate nicht-deterministisch eine Belegung der Variablen Pr¨ ufe deterministisch, ob die Belegung die 3-CNF wahr macht. Akzeptiere in diesem Fall. Dies geht in Polynomialzeit in der Gr¨ oße der 3-CNF.

Daher kann 3-CNF-SAT auf einer NTM in Polynomialzeit

entschieden werden.

(7)

N P -Vollst¨ andigkeit von 3-CNF-SAT (2)

Beweis, Teil 2: 3-CNF-SAT ist

N P-hart

Wir zeigen SAT ≤

p

3-CNF-SAT.

Gesucht: Polynomiell berechenbare, totale Funktion f , sodass F erf¨ ullbar g.d.w. 3-CNF f (F ) erf¨ ullbar.

f muss

die Erf¨ullbarkeit erhalten, aber nicht die Aquivalenz¨

Verfahren, um F in erf¨ ullbarkeits¨ aquivalente 3-CNF f(F) umzuformen, sodass f(F )

polynomielle Gr¨oße

in |F | hat:

Tseitin-Transformation

(8)

N P -Vollst¨ andigkeit von 3-CNF-SAT (2)

Beweis, Teil 2: 3-CNF-SAT ist

N P-hart

Wir zeigen SAT ≤

p

3-CNF-SAT.

Gesucht: Polynomiell berechenbare, totale Funktion f , sodass F erf¨ ullbar g.d.w. 3-CNF f (F ) erf¨ ullbar.

f muss

die Erf¨ullbarkeit erhalten, aber nicht die Aquivalenz¨

Verfahren, um F in erf¨ ullbarkeits¨ aquivalente 3-CNF f (F) umzuformen, sodass f(F)

polynomielle Gr¨oße

in |F | hat:

Tseitin-Transformation

(9)

N P -Vollst¨ andigkeit von 3-CNF-SAT (3)

Tseitin-Transformation:

Schiebe alle Negationen nach innen vor die Literale, dabei werden die Regeln ¬¬F → F , ¬(F ∧ G) → ¬F ∨ ¬G,

¬(F ∨ G) → ¬F ∧ ¬G, ¬(F ⇐⇒ G) → (¬F ) ⇐⇒ G und

¬(F = ⇒ G) → F ∧ ¬G angewendet.

Syntaxbaum der Formel (Bl¨ atter = Literale):

F¨ ur jeden Nichtblatt-Knoten: neue aussagenlogische Variable pro Gabelung:

⊗ X

L

1

L

2

erzeuge

(X ⇐⇒ (L

1

⊗ L

2

))

wobei ⊗ ∈ { ⇐⇒ , ∧, ∨, = ⇒ } und L

1

, L

2

entweder die neue Variable oder das Literal am Blatt.

Konjugiere diese Formeln zu F

0

und schließlich erzeuge

W ∧ F

0

, mit W Variable f¨ ur die Wurzel.

(10)

N P -Vollst¨ andigkeit von 3-CNF-SAT (3)

Tseitin-Transformation:

Schiebe alle Negationen nach innen vor die Literale, dabei werden die Regeln ¬¬F → F , ¬(F ∧ G) → ¬F ∨ ¬G,

¬(F ∨ G) → ¬F ∧ ¬G, ¬(F ⇐⇒ G) → (¬F ) ⇐⇒ G und

¬(F = ⇒ G) → F ∧ ¬G angewendet.

Syntaxbaum der Formel (Bl¨ atter = Literale):

F¨ ur jeden Nichtblatt-Knoten: neue aussagenlogische Variable

pro Gabelung:

⊗ X

L

1

L

2

erzeuge

(X ⇐⇒ (L

1

⊗ L

2

))

wobei ⊗ ∈ { ⇐⇒ , ∧, ∨, = ⇒ } und L

1

, L

2

entweder die neue Variable oder das Literal am Blatt.

Konjugiere diese Formeln zu F

0

und schließlich erzeuge

W ∧ F

0

, mit W Variable f¨ ur die Wurzel.

(11)

N P -Vollst¨ andigkeit von 3-CNF-SAT (3)

Tseitin-Transformation:

Schiebe alle Negationen nach innen vor die Literale, dabei werden die Regeln ¬¬F → F , ¬(F ∧ G) → ¬F ∨ ¬G,

¬(F ∨ G) → ¬F ∧ ¬G, ¬(F ⇐⇒ G) → (¬F ) ⇐⇒ G und

¬(F = ⇒ G) → F ∧ ¬G angewendet.

Syntaxbaum der Formel (Bl¨ atter = Literale):

F¨ ur jeden Nichtblatt-Knoten: neue aussagenlogische Variable pro Gabelung:

⊗ X

L

1

L

2

erzeuge

(X ⇐⇒ (L

1

⊗ L

2

))

wobei ⊗ ∈ { ⇐⇒ , ∧, ∨, = ⇒ } und L

1

, L

2

entweder die neue Variable oder das Literal am Blatt.

Konjugiere diese Formeln zu F

0

und schließlich erzeuge

W ∧ F

0

, mit W Variable f¨ ur die Wurzel.

(12)

N P -Vollst¨ andigkeit von 3-CNF-SAT (3)

Tseitin-Transformation:

Schiebe alle Negationen nach innen vor die Literale, dabei werden die Regeln ¬¬F → F , ¬(F ∧ G) → ¬F ∨ ¬G,

¬(F ∨ G) → ¬F ∧ ¬G, ¬(F ⇐⇒ G) → (¬F ) ⇐⇒ G und

¬(F = ⇒ G) → F ∧ ¬G angewendet.

Syntaxbaum der Formel (Bl¨ atter = Literale):

F¨ ur jeden Nichtblatt-Knoten: neue aussagenlogische Variable pro Gabelung:

⊗ X

L

1

L

2

erzeuge

(X ⇐⇒ (L

1

⊗ L

2

))

wobei ⊗ ∈ { ⇐⇒ , ∧, ∨, = ⇒ } und L

1

, L

2

entweder die neue Variable oder das Literal am Blatt.

Konjugiere diese Formeln zu F

0

und schließlich erzeuge

W ∧ F

0

, mit W Variable f¨ ur die Wurzel.

(13)

N P -Vollst¨ andigkeit von 3-CNF-SAT (3)

Tseitin-Transformation (Fortsetzung) Insgesamt: W ∧

V

i,j,k

(X

i

⇐⇒ (X

j

i

X

k

)), wobei X

r

Literale sind.

Berechne f¨ ur jede Subformel (X

i

⇐⇒ (X

j

i

X

k

)) die CNF mit dem ¨ ublichen Algorithmus.

L¨ osche doppelte Vorkommen von Literalen.

Ergibt 3-CNF, da pro Klausel nur 3 verschiedene Variablen

vorkommen k¨ onnen.

(14)

N P -Vollst¨ andigkeit von 3-CNF-SAT (4)

Komplexit¨ at:

Gr¨ oße der kleinen CNFs ist konstant.

Jede Klausel hat nur 3 Literale: Mehr Variablen gibt es in den kleinen Formeln nicht, doppelte Literale l¨ oschen

Gr¨ oße der 3-CNF ist polynomiell in der urspr¨ unglichen Formel

Berechnung in Polynomialzeit: klar!

(15)

N P -Vollst¨ andigkeit von 3-CNF-SAT (5)

F erf¨ ullbar g.d.w. f(F ) erf¨ ullbar:

” ⇒“: Sei I Belegung mit I (F ) = 1. Sei I

0

Belegung mit

I0(X) =I(X)f¨ur alle Variablen, die inF vorkommen I0(W) = 1f¨ur die VariableW an der Wurzel

I0(X) =I0(L1⊗L2)f¨ur

⊗X

L1 L2

Dann gilt: I

0

(f (F )) = 1

” ⇐“: Sei J Belegung von f (F ) mit J (f (F )) = 1 Dann: I = J

|Var(F)

macht F wahr.

Damit: SAT ≤

p

3-CNF-SAT.

Da SAT N P-hart, ist somit auch 3-CNF-SAT N P-hart.

(16)

N P -Vollst¨ andigkeit von 3-CNF-SAT (5)

F erf¨ ullbar g.d.w. f(F ) erf¨ ullbar:

” ⇒“: Sei I Belegung mit I (F ) = 1. Sei I

0

Belegung mit

I0(X) =I(X)f¨ur alle Variablen, die inF vorkommen I0(W) = 1f¨ur die VariableW an der Wurzel

I0(X) =I0(L1⊗L2)f¨ur

⊗X

L1 L2

Dann gilt: I

0

(f (F )) = 1

” ⇐“: Sei J Belegung von f (F ) mit J (f (F )) = 1 Dann: I = J

|Var(F)

macht F wahr.

Damit: SAT ≤

p

3-CNF-SAT.

Da SAT N P-hart, ist somit auch 3-CNF-SAT N P-hart.

(17)

N P -Vollst¨ andigkeit von 3-CNF-SAT (5)

F erf¨ ullbar g.d.w. f(F ) erf¨ ullbar:

” ⇒“: Sei I Belegung mit I (F ) = 1. Sei I

0

Belegung mit

I0(X) =I(X)f¨ur alle Variablen, die inF vorkommen I0(W) = 1f¨ur die VariableW an der Wurzel

I0(X) =I0(L1⊗L2)f¨ur

⊗X

L1 L2

Dann gilt: I

0

(f (F )) = 1

” ⇐“: Sei J Belegung von f (F ) mit J (f (F )) = 1 Dann: I = J

|Var(F)

macht F wahr.

Damit: SAT ≤

p

3-CNF-SAT.

Da SAT N P-hart, ist somit auch 3-CNF-SAT N P-hart.

(18)

Beispiel

F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

) Negationen nach innen schieben:

¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

→ (¬(¬(x

3

= ⇒ ¬x

1

)) ∧ ¬x

2

)

→ (x

3

= ⇒ ¬x

1

) ∧ ¬x

2

) Syntaxbaum dazu:

W X

= ⇒ ¬x

2

x

3

¬x

1

Formel: W ∧ (W ⇐⇒ (X ∧ ¬x

2

)) ∧ (X ⇐⇒ (x

3

= ⇒ ¬x

1

))

(19)

Beispiel

F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

) Negationen nach innen schieben:

¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

→ (¬(¬(x

3

= ⇒ ¬x

1

)) ∧ ¬x

2

)

→ (x

3

= ⇒ ¬x

1

) ∧ ¬x

2

) Syntaxbaum dazu:

W X

= ⇒ ¬x

2

x

3

¬x

1

Formel: W ∧ (W ⇐⇒ (X ∧ ¬x

2

)) ∧ (X ⇐⇒ (x

3

= ⇒ ¬x

1

))

(20)

Beispiel

F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

) Negationen nach innen schieben:

¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

→ (¬(¬(x

3

= ⇒ ¬x

1

)) ∧ ¬x

2

)

→ (x

3

= ⇒ ¬x

1

) ∧ ¬x

2

) Syntaxbaum dazu:

W X

= ⇒ ¬x

2

x

3

¬x

1

Formel: W ∧ (W ⇐⇒ (X ∧ ¬x

2

)) ∧ (X ⇐⇒ (x

3

= ⇒ ¬x

1

))

(21)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(22)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(23)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(24)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(25)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(26)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(27)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(28)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(29)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1

Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(30)

Beispiel (2)

Berechnung der CNFs der kleinen Subformeln:

W∧(W ⇐⇒ (X∧ ¬x2))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨ ¬(X∧ ¬x2))∧(¬W ∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧((W∨(¬X∨x2))∧(¬W∨(X∧ ¬x2)))∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)∧(X ⇐⇒ (x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨(x3 =⇒ ¬x1))∧(X∨ ¬(x3 =⇒ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨ ¬(¬x3∨ ¬x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨(x3∧x1))

→W∧(W∨ ¬X)∧(W∨x2)∧(¬W∨X)∧(¬W∨ ¬x2)

∧(¬X∨ ¬x3∨ ¬x1)∧(X∨x3)∧(X∨x1)

Erf¨ ullende Belegung J :

J(W ) = 1, J(X) = 1, J (x

1

) = 0, J(x

2

) = 0, J(x

3

) = 1 Belegung I:

I(x

1

) = 0, I (x

2

) = 0, I(x

3

) = 1 erf¨ ullt F = ¬(¬(x

3

= ⇒ ¬x

1

) ∨ x

2

)

(31)

Cliquen in Graphen

Definition

F¨ ur einen ungerichteten Graph G = (V, E) ist eine

Clique der Gr¨oßek

eine Menge V

0

⊆ V , sodass |V

0

| = k und f¨ ur alle u, v ∈ V

0

mit u 6= v gilt: {u, v} ∈ E.

Beispiel:

1

2 3

4

1

2 3

4

5 6

7 8

9

Clique der Gr¨ oße 4

(32)

Cliquen in Graphen

Definition

F¨ ur einen ungerichteten Graph G = (V, E) ist eine

Clique der Gr¨oßek

eine Menge V

0

⊆ V , sodass |V

0

| = k und f¨ ur alle u, v ∈ V

0

mit u 6= v gilt: {u, v} ∈ E.

Beispiel:

1

2 3

4

1

2 3

4

5 6

7 8

9

Clique der Gr¨ oße 4

(33)

Cliquen in Graphen

Definition

F¨ ur einen ungerichteten Graph G = (V, E) ist eine

Clique der Gr¨oßek

eine Menge V

0

⊆ V , sodass |V

0

| = k und f¨ ur alle u, v ∈ V

0

mit u 6= v gilt: {u, v} ∈ E.

Beispiel:

1

2 3

4 1

2 3

4

5 6

7 8

9

Clique der Gr¨ oße 4

(34)

CLIQUE-Problem

Definition (CLIQUE-Problem)

Das CLIQUE-Problem l¨ asst sich in der gegeben/gefragt-Notation formulieren durch:

gegeben: Ein ungerichteter Graph G = (V, E) und eine Zahl k ∈

N

.

gefragt: Besitzt G eine Clique der Gr¨ oße mindestens k?

(35)

N P -Vollst¨ andigkeit von CLIQUE (1)

Satz

CLIQUE ist N P -vollst¨ andig.

Beweis: CLIQUE

∈ N P

Rate nichtdeterministisch eine Menge V

0

⊆ V von k Knoten Pr¨ ufe (deterministisch), ob f¨ ur alle u, v ∈ V

0

:

u 6= v = ⇒ {u, v} ∈ E gilt. Falls ja, akzeptiere.

Daher kann eine NTM konstruiert werden, die CLIQUE in

Polynomialzeit entscheidet.

(36)

N P -Vollst¨ andigkeit von CLIQUE (1)

Satz

CLIQUE ist N P -vollst¨ andig.

Beweis: CLIQUE

∈ N P

Rate nichtdeterministisch eine Menge V

0

⊆ V von k Knoten Pr¨ ufe (deterministisch), ob f¨ ur alle u, v ∈ V

0

:

u 6= v = ⇒ {u, v} ∈ E gilt. Falls ja, akzeptiere.

Daher kann eine NTM konstruiert werden, die CLIQUE in

Polynomialzeit entscheidet.

(37)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale)

F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h. V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f(F) = ((V, E), m) ist in Polynomialzeit berechenbar.

(38)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale)

F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h. V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F) = ((V, E), m) ist in Polynomialzeit berechenbar.

(39)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale) F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h.

V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F) = ((V, E), m) ist in Polynomialzeit berechenbar.

(40)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale) F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h.

V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F) = ((V, E), m) ist in Polynomialzeit berechenbar.

(41)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale) F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h.

V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F ) = ((V, E), m) ist in Polynomialzeit berechenbar.

(42)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale) F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h.

V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F ) = ((V, E), m) ist in Polynomialzeit berechenbar.

(43)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale) F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h.

V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F ) = ((V, E), m) ist in Polynomialzeit berechenbar.

(44)

N P -Vollst¨ andigkeit von CLIQUE (2)

Beweis: CLIQUE ist

N P-hart:

Ziel: 3-CNF-SAT ≤

p

CLIQUE

Sei F = K

1

∧ . . . ∧ K

m

eine 3-CNF, wobei K

i

= (L

i,1

∨ L

i,2

∨ L

i,3

) f¨ ur i = 1, . . . , m (falls K

i

< 3 Literale hat, verdopple Literale) F¨ ur jedes L

i,j

erzeuge: Knoten (i, j) im Graphen, d.h.

V =

Sm

i=1

{(i, 1), (i, 2), (i, 3)}

Keine

Kante innerhalb der drei Knoten {(i, 1), (i, 2), (i, 3)}

Kanten zwischen

” verschiedenen Klauseln“:

E ⊆ {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧ i, i

0

∈ {1, . . . , m} ∧ j, j

0

∈ {1, 2, 3}}

E als maximale Menge, sodass sich

niemals zwei verbundene Literale Li,j und Li0,j0 widersprechen

(d.h. L

i,j

6= L

i0,j0

mit L negiertes Literal zu L: x = ¬x und ¬x = x).

E := {{(i, j), (i

0

, j

0

)} | i 6= i

0

∧i, i

0

∈ {1, . . . , m}∧j, j

0

∈ {1, 2, 3}, L

i,j

6= L

i0,j0

}

f (F ) = ((V, E), m) ist in Polynomialzeit berechenbar.

(45)

N P -Vollst¨ andigkeit von CLIQUE (3)

Zu Zeigen: F erf¨ ullbar, g.d.w. (V, E) eine Clique der Gr¨ oße mindestens m hat.

” ⇒“

Wenn F erf¨ ullbar ist:

∃ I, sodass in jeder Klausel I (K

i

) mind 1 Literal wahr. D.h.: L

1,j1

, . . . , L

m,jm

mit I (L

1,j1

) = 1, . . . , I(L

m,jm

) = 1. Diese k¨ onnen sich paarweise nicht widersprechen

= ⇒ sind im Graphen paarweise miteinander verbunden

Sie formen eine Clique der Gr¨ oße m.

(46)

N P -Vollst¨ andigkeit von CLIQUE (3)

Zu Zeigen: F erf¨ ullbar, g.d.w. (V, E) eine Clique der Gr¨ oße mindestens m hat.

” ⇒“

Wenn F erf¨ ullbar ist:

∃ I, sodass in jeder Klausel I (K

i

) mind 1 Literal wahr.

D.h.: L

1,j1

, . . . , L

m,jm

mit I (L

1,j1

) = 1, . . . , I(L

m,jm

) = 1.

Diese k¨ onnen sich paarweise nicht widersprechen

= ⇒ sind im Graphen paarweise miteinander verbunden

Sie formen eine Clique der Gr¨ oße m.

(47)

N P -Vollst¨ andigkeit von CLIQUE (4)

Zu Zeigen: F erf¨ ullbar, g.d.w. (V, E) eine Clique der Gr¨ oße mindestens m hat.

” ⇐“

(V, E) hat Clique der Gr¨ oße mindestens m.

Dann gibt es Clique V

0

= {(i

1

, j

1

), . . . (i

m

, j

m

)},

Da (i, x) und (i, y) nie miteinander verbunden sind, m¨ ussen alle i

1

, . . . , i

m

paarweise verschieden sein, also

{i

1

, . . . , i

m

} = {1, . . . , m}.

Daher: Die Literale L

i1,j1

, . . . Li

m

, j

m

widersprechen sich paarweise nicht

Daher Belegung I mit I (x) = 1 wenn L

ik,jk

= x und I (x) = 0

wenn L

i,k,jk

= ¬x und I (y) = 1 f¨ ur alle anderen Variablen

I macht F wahr

(48)

Beispiel

Sei F = (x

1

∨ x

1

∨ x

1

) ∧ (¬x

1

∨ ¬x

1

∨ ¬x

1

)

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

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

Es gibt keine Kanten, da sich (1, i) und (2, j) stets widersprechen.

(49)

Beispiel (2)

Sei F = (x

1

∨ x

1

∨ x

1

) ∧ (¬x

1

∨ ¬x

1

∨ x

1

)

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

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

Jede der Cliquen der Gr¨ oße 2 f¨ uhrt zu erf¨ ullender Belegung, die x

1

wahr macht.

(50)

Beispiel (2)

Sei F = (x

1

∨ x

2

∨ ¬x

3

) ∧ (¬x

1

∨ x

2

∨ x

3

) ∧ (x

1

∨ ¬x

2

∨ ¬x

3

)

(1,1)

(2,2)

(3,3)

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

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

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

(51)

Beispiel (2)

Sei F = (x

1

∨ x

2

∨ ¬x

3

) ∧ (¬x

1

∨ x

2

∨ x

3

) ∧ (x

1

∨ ¬x

2

∨ ¬x

3

) (1,1)

(2,2)

(3,3)

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

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

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

(52)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(53)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(54)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(55)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(56)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(57)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(58)

Unabh¨ angige Knotenmenge

Definition

F¨ ur einen Graphen G = (V, E) ist V

0

⊆ V eine unabh¨ angige Knotenmenge (independent set), wenn keine zwei Knoten aus V

0

¨

uber eine Kante verbunden sind, d.h. u, v ∈ V

0

= ⇒ {u, v} 6∈ E.

Beispiel:

5 2

7 8

1

5 7

8

1

5 6

9

1

5 7

9

2

5 7

9

5 2

7 8

1 3 4 6

9

(59)

Komplementgraph

F¨ ur Graph G = (V, E) ist der Komplementgraph zu G, der Graph G = (V, E) mit E = {{u, v} | u, v ∈ V, u 6= v, {u, v} 6∈ E}

Lemma

F¨ ur jeden ungerichteten Graph G gilt: G hat eine unabh¨ angige Knotenmenge der Gr¨ oße k genau dann, wenn G eine Clique der Gr¨ oße k hat.

Beweis:

V

0

ist unabh¨ angige Knotenmenge der Gr¨ oße k

g.d.w. V

0

⊆ V mit u, v ∈ V

0

= ⇒ {u, v} 6∈ E und |V

0

| = k g.d.w. u, v ∈ V

0

= ⇒ {u, v} ∈ E

g.d.w. V

0

ist eine Clique der Gr¨ oße k in G

(60)

Komplementgraph

F¨ ur Graph G = (V, E) ist der Komplementgraph zu G, der Graph G = (V, E) mit E = {{u, v} | u, v ∈ V, u 6= v, {u, v} 6∈ E}

Lemma

F¨ ur jeden ungerichteten Graph G gilt: G hat eine unabh¨ angige Knotenmenge der Gr¨ oße k genau dann, wenn G eine Clique der Gr¨ oße k hat.

Beweis:

V

0

ist unabh¨ angige Knotenmenge der Gr¨ oße k

g.d.w. V

0

⊆ V mit u, v ∈ V

0

= ⇒ {u, v} 6∈ E und |V

0

| = k g.d.w. u, v ∈ V

0

= ⇒ {u, v} ∈ E

g.d.w. V

0

ist eine Clique der Gr¨ oße k in G

(61)

Komplementgraph

F¨ ur Graph G = (V, E) ist der Komplementgraph zu G, der Graph G = (V, E) mit E = {{u, v} | u, v ∈ V, u 6= v, {u, v} 6∈ E}

Lemma

F¨ ur jeden ungerichteten Graph G gilt: G hat eine unabh¨ angige Knotenmenge der Gr¨ oße k genau dann, wenn G eine Clique der Gr¨ oße k hat.

Beweis:

V

0

ist unabh¨ angige Knotenmenge der Gr¨ oße k

g.d.w. V

0

⊆ V mit u, v ∈ V

0

= ⇒ {u, v} 6∈ E und |V

0

| = k g.d.w. u, v ∈ V

0

= ⇒ {u, v} ∈ E

g.d.w. V

0

ist eine Clique der Gr¨ oße k in G

(62)

Komplementgraph

F¨ ur Graph G = (V, E) ist der Komplementgraph zu G, der Graph G = (V, E) mit E = {{u, v} | u, v ∈ V, u 6= v, {u, v} 6∈ E}

Lemma

F¨ ur jeden ungerichteten Graph G gilt: G hat eine unabh¨ angige Knotenmenge der Gr¨ oße k genau dann, wenn G eine Clique der Gr¨ oße k hat.

Beweis:

V

0

ist unabh¨ angige Knotenmenge der Gr¨ oße k g.d.w. V

0

⊆ V mit u, v ∈ V

0

= ⇒ {u, v} 6∈ E und |V

0

| = k

g.d.w. u, v ∈ V

0

= ⇒ {u, v} ∈ E

g.d.w. V

0

ist eine Clique der Gr¨ oße k in G

(63)

Komplementgraph

F¨ ur Graph G = (V, E) ist der Komplementgraph zu G, der Graph G = (V, E) mit E = {{u, v} | u, v ∈ V, u 6= v, {u, v} 6∈ E}

Lemma

F¨ ur jeden ungerichteten Graph G gilt: G hat eine unabh¨ angige Knotenmenge der Gr¨ oße k genau dann, wenn G eine Clique der Gr¨ oße k hat.

Beweis:

V

0

ist unabh¨ angige Knotenmenge der Gr¨ oße k g.d.w. V

0

⊆ V mit u, v ∈ V

0

= ⇒ {u, v} 6∈ E und |V

0

| = k g.d.w. u, v ∈ V

0

= ⇒ {u, v} ∈ E

g.d.w. V

0

ist eine Clique der Gr¨ oße k in G

(64)

Komplementgraph

F¨ ur Graph G = (V, E) ist der Komplementgraph zu G, der Graph G = (V, E) mit E = {{u, v} | u, v ∈ V, u 6= v, {u, v} 6∈ E}

Lemma

F¨ ur jeden ungerichteten Graph G gilt: G hat eine unabh¨ angige Knotenmenge der Gr¨ oße k genau dann, wenn G eine Clique der Gr¨ oße k hat.

Beweis:

V

0

ist unabh¨ angige Knotenmenge der Gr¨ oße k g.d.w. V

0

⊆ V mit u, v ∈ V

0

= ⇒ {u, v} 6∈ E und |V

0

| = k g.d.w. u, v ∈ V

0

= ⇒ {u, v} ∈ E

g.d.w. V

0

ist eine Clique der Gr¨ oße k in G

(65)

Beispiel

1

2 3

4

5 6

7 8

9

Komplementgraph dazu: 1

2 3

4

5 6

7 8

9

(66)

INDEPENDENT-SET Problem

Definition (INDEPENDENT-SET-Problem)

Das INDEPENDENT-SET-Problem l¨ asst sich in der gegeben/gefragt-Notation formulieren durch:

gegeben: Ein ungerichteter Graph G = (V, E) und eine Zahl k ∈

N

. gefragt: Besitzt G eine unabh¨ angige Knotenmenge der Gr¨ oße min-

destens k?

(67)

N P -Vollst¨ andigkeit von INDEPENDENT-SET

Satz

INDEPENDENT-SET ist N P-vollst¨ andig.

Beweis, Teil 1: INDEPENDENT-SET

∈ N P:

Rate nichtdeterministisch Menge V

0

von k Knoten.

Verifiziere deterministisch, ob f¨ ur jedes Paar {u, v} ∈ V

0

gilt:

{u, v} 6∈ E. Dies geht in Polynomialzeit.

Daher kann INDEPENDENT-SET in Polynomialzeit auf einer

NTM entschieden werden.

(68)

N P -Vollst¨ andigkeit von INDEPENDENT-SET (2)

INDEPENDENT-SET ist N P-hart.

Sei f ((V, E, m)) = (V, E, m) mit E = {{u, v} | u, v ∈ V, {u, v} 6∈ E}.

Dann gilt:

(V, E) hat eine CLIQUE der Gr¨ oße mindestens k g.d.w.

(V, E) hat ein INDEPENDENT-SET der Gr¨ oße mindestens k.

Funktion f kann in Polynomialzeit berechnet werden.

Daher: CLIQUE ≤

p

INDEPENDENT-SET Da CLIQUE N P-hart, folgt

INDEPENDENT-SET ist N P-hart.

Referenzen

ÄHNLICHE DOKUMENTE

Jede aussagenlogische Formel kann in eine ¨ aquivalente konjunktive Normalform gebracht werden:.. ⇐⇒ , = ⇒

U enth¨ alt somit genau ein Literal pro Klausel Kein Literal tritt sowohl positiv als auch negiert auf Ergo: Alle diese Literale k¨ onnen gleichzeitig erf¨ ullt werden Also ist ϕ

Kein Literal tritt sowohl positiv als auch negiert auf Ergo: Alle diese Literale k¨ onnen gleichzeitig erf¨ ullt werden Also ist ϕ erf¨

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0.. F¨ ur jede Dezimalstelle i ∈ {n

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0. F¨ ur jede Dezimalstelle i ∈ {n

U enth¨ alt somit genau ein Literal pro Klausel Kein Literal tritt sowohl positiv als auch negiert auf Ergo: Alle diese Literale k¨ onnen gleichzeitig erf¨ ullt werden Also ist ϕ

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0. F¨ ur jede Dezimalstelle i ∈ {n

Wir m¨ ussen zeigen, dass die Formel Φ dann und nur dann eine erf¨ ullende Wahrheitsbelegung hat, wenn der von Ihnen konstruierte Graph G(Φ) eine 3-F¨ arbung erlaubt... Wenn zwei