• Keine Ergebnisse gefunden

Kochrezept f¨ur NP-Vollst¨andigkeitsbeweise

N/A
N/A
Protected

Academic year: 2022

Aktie "Kochrezept f¨ur NP-Vollst¨andigkeitsbeweise"

Copied!
15
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Kochrezept f¨ ur NP-Vollst¨ andigkeitsbeweise

Prof. Dr. Berthold V¨ocking Lehrstuhl Informatik 1 Algorithmen und Komplexit¨at

RWTH Aachen

14. Januar 2011

(2)

Kochrezept f¨ ur NP-Vollst¨ andigkeitsbeweise

Um Nachzuweisen, dass SAT NP-hart ist, haben wir in einer

”Master-Reduktion“ alle Probleme aus NP auf SAT reduziert.

Die NP-Vollst¨andigkeit von SAT k¨onnen wir jetzt verwenden, um nachzuweisen, dass weitere Probleme NP-hart sind.

Lemma

L NP-hart, LpL ⇒ LNP-hart.

Beweis:Gem¨aß Voraussetzung gilt∀L0∈NP :L0pL und LpL. Aufgrund der Transitivit¨at der polynomiellen Reduktion

folgt somit∀L0 ∈NP :L0pL.

(3)

NP-Vollst¨ andigkeit von 3SAT

Eine Formel ink-KNF besteht nur aus Klauseln mit jeweilsk Literalen, sogenanntenk-Klauseln.

Problem (3SAT)

Eingabe: Aussagenlogische Formelφin 3-KNF Frage: Gibt es eine erf¨ullende Belegung f¨ur φ?

3SAT ist ein Spezialfall von SAT und deshalb wie SAT in NP.

Um zu zeigen, dass 3SAT ebenfalls NP-vollst¨andig ist, m¨ussen wir also nur noch die NP-H¨arte von 3SAT nachweisen.

Dazu zeigen wir SAT ≤p 3SAT.

(4)

SAT ≤

p

3SAT

Lemma

SAT≤p 3SAT.

Beweis:

Gegeben sei eine Formel φin KNF.

Wir transformieren φin eineerf¨ullbarkeits¨aquivalente Formel φ0 in 3KNF, d.h.

φ ist erf¨ullbar ⇔ φ0 ist erf¨ullbar.

Aus einer 1- bzw 2-Klausel k¨onnen wir leicht eine ¨aquivalente 3-Klausel machen, indem wir ein Literal wiederholen.

Was machen wir aber mit k-Klauseln f¨urk >3?

(5)

SAT ≤

p

3SAT

Sei k ≥4 und C eine k-Klausel der Form C = `1∨`2∨`3· · · ∨`k .

In einer Klauseltransformationersetzen wir C durch die Teilformel

C0 = (`1∨ · · · ∨`k−2∨h)∧(¯h∨`k−1∨`k) , wobei h eine zus¨atzlich eingef¨uhrte Hilfsvariable bezeichnet.

(6)

Nachweis der Erf¨ ullbarkeits¨ aquivalenz

Nachweis der Erf¨ullbarkeits¨aquivalenz:

φ0 sei aus φentstanden durch Ersetzen vonC durch C0. zz:φerf¨ullbar⇒ φ0 erf¨ullbar

Sei B eine erf¨ullende Belegung f¨ur φ.

B weist mindestens einem Literal ausC hat den Wert 1 zu.

Wir unterscheiden zwei F¨alle:

1) Falls`1∨ · · · ∨`k−2erf¨ullt ist, so istφ0 erf¨ullt, wenn wirh= 0 setzen.

2) Falls`k−1`k erf¨ullt ist, so istφ0 erf¨ullt, wenn wirh= 1 setzen.

Also ist φ0 in beiden F¨allen erf¨ullbar.

(7)

Nachweis der Erf¨ ullbarkeits¨ aquivalenz

zz:φ0 erf¨ullbar⇒ φerf¨ullbar

Sei B nun eine erf¨ullende Belegung f¨ur φ0. Wir unterscheiden wiederum zwei F¨alle:

FallsB der Variablehden Wert 0 zuweist, so mussB einem der Literale`1, . . . , `k−2den Wert 1 zugewiesen haben.

FallsB der Variablehden Wert 0 zuweist, so mussB einem der beiden Literale`3 oder`4den Wert 1 zugewiesen haben.

In beiden F¨allen erf¨ullt B somit auchφ.

(8)

SAT ≤

p

3SAT

Durch Anwendung der Klauseltransformation entstehen aus einer k-Klausel eine (k−1)-Klausel und eine 3-Klausel.

Nach k−3 Iterationen sind aus einerk Klausel somitk−2 viele 3-Klauseln entstanden.

Diese Transformation wird solange auf die eingegebene Formel φangewandt, bis die Formel nur noch 3-Klauseln enth¨alt.

Wenn n die Anzahl der Literale in φist, so werden insgesamt h¨ochstensn−3 Klauseltransformationen ben¨otigt.

Die Laufzeit ist somit polynomiell beschr¨ankt.

Korollar

3SAT istNP-vollst¨andig.

(9)

SAT ≤

p

3SAT

Beispiel f¨ur die Klauseltransformation:

Aus der 5 Klausel

x1∨¯x2∨x3∨x4∨x¯5

wird in einem ersten Transformationsschritt die Teilformel (x1∨¯x2∨x3∨h1) ∧ (¯h1∨x4∨¯x5) , also eine 4- und eine 3-Klausel. Auf die 4-Klausel wird die Transformation erneut angewandt. Wir erhalten die Teilformel

(x1∨¯x2∨h2) ∧ (¯h2∨x3∨h1) ∧ ( ¯h1∨x4∨x¯5) , die nur noch 3-Klauseln enth¨alt.

(10)

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.

(11)

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 .

(12)

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≤i ≤m,1≤j ≤3} . Jedes Knotenpaar wird durch eine Kante verbunden, mit folgenden Ausnahmen:

1) die assoziierten Literale geh¨oren zur selben Klausel oder 2) eines der beiden Literale ist die Negierung des anderen Literals.

Setzek =m.

(13)

Beweis der NP-Vollst¨ andigkeit von CLIQUE

Beispiel:φ = (x1∨¯x2∨¯x3)∧(x2∨x¯3∨x4)∧(x3∨x2∨x¯1)

(14)

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 `0 zwei unterschiedliche Literale ausU. Ausnahme 1 trifft auf `und `0 nicht zu, da sie aus verschiedenen Klauseln sind.

Ausnahme 2 trifft auf `und `0 nicht zu, da sie gleichzeitig erf¨ullt sind.

Also gibt es eine Kante zwischen `und `0.

(15)

Beweis der NP-Vollst¨ andigkeit von CLIQUE

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

Aufgrund von Ausnahmeregel 1 geh¨oren die Literale in U zu verschiedenen Klauseln.

U enth¨alt somit genau ein Literal pro Klausel in φ.

Diese Literale k¨onnen alle gleichzeitig erf¨ullt werden, da sie sich wegen Ausnahmeregel 2 nicht widesprechen.

Also ist φerf¨ullbar.

Die Laufzeit vonf ist offensichtlich polynomiell beschr¨ankt.

Referenzen

ÄHNLICHE DOKUMENTE

M akzeptiert Da Laufzeit polynomiell beschr¨ ankt, beschr¨ ankt dies auch die Gr¨ oße der Formel und wir haben ≤ p.. M akzeptiert Da Laufzeit polynomiell beschr¨ ankt, beschr¨

Hinweis: Ersetzen Sie jedes Vorkommen einer Variable x durch eine eigene Variable, und sorgen Sie dafur, dass die verschiedenen Ersetzungen von x alle zueinander aquivalent

Hinweis: deniere zu einer Formel F in 2 -KNF einen geeigneten Graphen G , so dass sich die Unerfullbarkeit von F durch die Existenz von Wegen in G ausdrucken lasst.. Aufgabe

Mit anderen Worten: eine 6=-Wertzuweisung erf¨ ullt ϕ ohne in irgendeiner Klausel alle drei Literale wahr zu machen.. Beweise, dass 6=3SAT NP-vollst¨

Zeigen Sie, dass man falls CLIQUE ∈ P auch in Polynomialzeit eine k-Clique in einem gegebenen Graphen G berechnen kann, wenn sie existiert.. Sie d¨ urfen dabei annehmen, dass

Das Dilemma einer Argumentation bei Tempo 130 ist ja ähnlich wie beim Rauchen: Dagegen kann man eigentlich nicht sein, weil die oberen 50 % des Geschwindigkeits­.. bereichs bis

Fachbereich Mathematik und Informatik Sommersemester 2008 Universit¨ at

Sommersemester 2010 Universität Bielefeld. Ubungsaufgaben zur Analysis II ¨ Blatt III