• Keine Ergebnisse gefunden

Berechenbarkeit und Komplexit¨at Vorlesung 18

N/A
N/A
Protected

Academic year: 2022

Aktie "Berechenbarkeit und Komplexit¨at Vorlesung 18"

Copied!
19
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Berechenbarkeit und Komplexit¨at Vorlesung 18

Prof. Dr. Wolfgang Thomas Lehrstuhl Informatik 7

RWTH Aachen

23. Januar 2015

(2)

NP-Vollst¨andigkeit von CLIQUE

Wie erinnern uns an das Cliquenproblem.

Problem (CLIQUE)

Eingabe:Graph G = (V,E), k ∈ {1, . . . ,|V|}

Frage:Gibt es eine k-Clique?

Satz

CLIQUE istNP-vollst¨andig.

(3)

Beweis der NP-Vollst¨andigkeit von CLIQUE

Da wir schon wissen, dass das Cliquenproblem in NP ist, m¨ussen wir zum Nachweis der NP-Vollst¨andigkeit nur noch die NP-H¨arte nachweisen.

Dazu zeigen wir 3SAT≤p CLIQUE.

Wir beschreiben eine polynomiell berechenbare Funktionf, die eine 3-KNF-Formelϕin einen GraphenG = (V,E) und eine Zahl k∈Ntransformiert, so dass gilt:

ϕist erf¨ullbar ⇔ G hat einek-Clique .

(4)

Beweis der NP-Vollst¨andigkeit von CLIQUE

Beschreibung der Funktionf:

Seien C1, . . . ,Cm die Klauseln vonϕ.

Seien ℓi,1, . . . , ℓi,3 die Literale in KlauselCi. Identifiziere Literale und Knoten, d.h. setze

V = {ℓi,j |1≤im,1≤j ≤3} . Zwei Knoten werden durch eine Kante verbunden, wenn

1) die assoziierten Literale geh¨oren zu verschiedenen Klauseln, 2) die beiden Literale sind nicht komplement¨ar zueinander.

Setzek =m.

(5)

Beweis der NP-Vollst¨andigkeit von CLIQUE

Korrektheit der Transformation:

zz:ϕerf¨ullbar⇒ G hat m-Clique

Jede erf¨ullende Belegung erf¨ullt in jeder Klausel mindestens ein Lite- ral. Pro Klausel w¨ahle eines dieser erf¨ullten Literale beliebig aus. Sei U die Menge dieser Literale. Wir behaupten,U ist eine m-Clique.

Begr¨undung:

Per Definition ist|U|=m.

Seien ℓund ℓ zwei unterschiedliche Literale ausU. ℓ undℓ geh¨oren zu verschiedenen Klauseln.

ℓ undℓ k¨onnen nicht komplement¨ar sein; sonst w¨urde die Belegung einer Variablen zugleich den Wert 0 und den Wert 1 zuordnen.

Also gibt es eine Kante zwischen ℓund ℓ.

(6)

Beweis der NP-Vollst¨andigkeit von CLIQUE

zz:G hat m-Clique⇒ φerf¨ullbar Sei U einem-Clique inG.

Wir bestimmen eine Belegung, indem jedes Literal inU den Wert 1 erh¨alt.

Die Belegung ist wohldefiniert, da kein Literal sowohl positiv als auch negativ vorkommt. (Komplement¨are Literale sind nach Konstruktion nicht durch eine Kanten verbunden.) U enth¨alt somit genau ein Literal mit Wahrheitswert 1 pro Klausel in ϕ.

Also ist ϕerf¨ullbar.

Die Laufzeit f¨ur die Berechnung vonf ist offensichtlich polynomiell

beschr¨ankt.

(7)

COLOR(3)

Erinnerung:

Problem (COLOR(3))

Gegeben ein ungerichteter Graph G = (V,E)

Frage: Ist G 3-f¨arbbar, d.h. kann man jedem Knoten eine von drei Farben so zuordnen, dass kantenverbundene Knoten verschiedene Farben tragen?

Wir zeigen:

Satz

COLOR(3) ist NP-vollst¨andig.

COLOR(3) ist in NP, denn als Zertifikate man Funktionen

f :V → {0,1,2} w¨ahlen: Das Zertifikat, etwa als Liste von Paaren (Knotenname, Farbe), ist von polynomialer L¨ange in|V|. Es kann in Polynomzeit daraufhin getestet werden, ob kantenverbundene Knoten verschiedene Farben tragen.

(8)

NP-Vollst¨andigkeit von COLOR(3)

Finde eine Polynomzeit-berechenbare Transformationf, die jede Boolesche Formelϕmit 3 Literalen pro Klausel in einen Graphen Gϕ ¨uberf¨uhrt mit

(∗) ϕerf¨ullbar gdw. Gϕ ist 3-f¨arbbar.

Betrachte

ϕ=c1∧. . .∧cm, wobeici =li1li2li3,lij jeweilsxk oderxk.

Wir konstruierenG mit den Knoten A,B, den Knotenx1, . . . ,xn,

¯

x1, . . . ,x¯n sowie sechs weiteren Knoten pro Klausel.

Das folgende Beispiel illustriert die Konstruktion.

(9)

Beispiel

ϕ= (x1x2x3)∧(x1x2x3).

Gϕ sieht so aus:

Basisknoten:

Variablenknoten:

Klauselgraphen:

A B

x1 x¯1 x2 x¯2 x3 x¯3

(10)

Von Erf¨ullbarkeit zu F¨arbbarkeit

Seiβ eineϕerf¨ullende Belegung.

Finde 3-F¨arbung vonGϕ, etwa mit Farben 0,1,2.

F¨arbeAmit 2, B mit 0,

xi mit Farbe 1, falls β(xi) = 1, sonst mit 0, xi umgekehrt.

Daβ die Formel ϕerf¨ullt, wird f¨ur jeden Klauselgraphen, mit Anbindung etwa beil1,l2,l3, einer der Knotenl1,l2,l3 mit 1 gef¨arbt.

(11)

1. Fall

Die Knotenl1,l2 der Anbindung haben beide die Farbe 0. Dann ist l3 mit 1 gef¨arbt, und wir k¨onnen den Klauselgraphen f¨arben:

l1 l2 l3

0 0 1

1 2

0 2

1

0 0

B

(12)

2. Fall

Beil1,l2 kommt wenigstens eine 1 vor. Dann k¨onnen wir den Klauselgraphen wieder f¨arben:

l1 l2 l3

1 0 1

0 2

1 0

1

2 0

B

(13)

Von F¨arbbarkeit zu Erf¨ullbarkeit

SeiGϕ 3-f¨arbbar. Nehme Farben 0,1,2.

O.B.d.A. seiA mit 2 gef¨arbt undB mit 0.

(Siehe unten zum Fall, dass wir B die Farbe 1 geben.) Dann sind diexi ,xi irgendwie mit 0 oder 1 gef¨arbt.

Definiere die Belegungβ durch β(xi) := Farbe von xi. Zeige:Diesesβ erf¨ullt ϕ.

Es gen¨ugt: In jeder Klausell1l2l3 bekommt wenigstens ein Literal den Wert 1.

D.h.: Im Klauselgraphen, der zur Klausell1l2l3 geh¨ort, f¨uhrt wenigstens eine Kante zu einem mit 1 gef¨arbtenli.

(14)

Erf¨ullbarbeit aus F¨arbbarkeit

Wir f¨uhren folgende Annahme zum Widerspruch:

Alle drei Variablenknoten haben Farbe 0.

Die 3-F¨arbung vonGϕ f¨uhrt zu Kollision:

l1 l2 l3

0 0 0

1,2 → 0

0

← 1,2 0 B

(15)

Alternative F¨arbung von B

Wenn B die Farbe 1 erh¨alt,

definieren wir die Belegung mit Vertauschung von 0 und 1.

Dann muss jede Klausel mindestens einmal den Wert 0 erhalten.

Man schließt dann aus, dass alle drei Literale den Wert 1 haben.

(16)

Hamiltonkreisprobleme

Problem (Hamiltonkreis – Hamiltonian Circuit – HC) Eingabe: Graph G = (V,E)

Frage: Gibt es einen Hamiltonkreis in G ?

Problem (Gerichteter Hamiltonkreis – Directed HC – DHC) Eingabe: gerichteter Graph G = (V,E)

Frage: Gibt es einen Hamiltonkreis in G ?

(17)

HC ≤

p

DHC

Lemma HCp DHC.

Beweis:

Reduktion:F¨ur HC liege ein ungerichteter GraphG vor. Wir transformierenG in einen gerichteten GraphenG, indem wir jede ungerichtete Kante durch zwei entgegengesetzte gerichtete Kanten ersetzen. Diese lokale Ersetzung ist offensichtlich in polynomieller Zeit m¨oglich.

Korrektheit:G hat genau dann einen Hamiltonkreis, wenn auch G

einen Hamiltonkreis hat.

(18)

DHC ≤

p

HC

Lemma DHCp HC.

Beweis:

Reduktion:Gegeben sei nun ein gerichteter GraphG = (V,E).

AusG konstruieren wir wieder mittels lokaler Ersetzung einen ungerichteten GraphenG:

... ... ... ...

G’

v vout

vin

G v

Interpretation: v ist Zimmer,vin und vout sind Ein- bzw.

Ausgangst¨uren.

(19)

DHC ≤

p

HC – Fortsetzung Beweis

Korrektheit:

Wir m¨ussen zeigen,G hat genau dann einen Hamiltonkreis, wenn auchG einen Hamiltonkreis hat.

Jede Rundreise inG kann offensichtlich in eine Rundreise inG transformiert werden.

Aber wie sieht es mit der Umkehrrichtung aus?

Eine Rundreise in G, die ein Zimmer durch die Eingangst¨ur betritt, betritt alle Zimmer durch die Eingangst¨ur.

Eine Rundreise in G, die ein Zimmer durch die Ausgangst¨ur betritt, betritt alle Zimmer durch die Ausgangst¨ur. Aber diese Rundreise k¨onnen wir r¨uckw¨arts ablaufen.

Also kann auch jeder Hamiltonkreis inG in einen Hamiltonkreis in

G transformiert werden.

Referenzen

ÄHNLICHE DOKUMENTE

Welche Funktionen sind durch einen Algorithmus

Falls dieses Zeichen eine 1 ist, so l¨osche es, gehe nach links, und wechsel in den Zustand

F¨ur jeden m¨oglichen Zustand, gibt es dann eine zweite Stufe von |Γ| vielen if-Abfragen, die das gelesene Zeichen selektieren. Durchf¨uhrung des

Als Eingabe erh¨alt die universelle TM U ein Wort der Form hMiw f¨ur beliebiges w ∈ {0, 1} ∗.. Mit der Eingabe hMiw verf¨ahrt U so, wie M dies mit

Auf diese Weise entsteht die “arithmetische Hierarchie”, eine Abstufung der unentscheidbaren Sprachen nach wachsender logischer Komplexit¨ at. Auf der n-ten Stufe sind Sprachen

Wir m¨ussen also nur noch zeigen, dass jede Funktion, die durch eine eingeschr¨ankte RAM berechnet werden kann, auch durch ein WHILE-Programm berechnet werden kann... Beweis

Wir zeigen jetzt, dass sogar bei der Berechnung totaler Funktionen das while-Konstrukt nicht durch loop ersetzt werden kann.. Dazu betrachten wir

NP ist die Klasse der Entscheidungsprobleme, die durch eine NTM M erkannt werden, deren worst case Laufzeit t M (n) polynomiell beschr¨ankt ist. NP steht dabei f¨ur