NP-vollständige Probleme

Ähnliche Dokumente
Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Reduktionen. Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie. Exkurs: Reduktionen allgemein. Reduktionen: Erläuterungen

Einführung in Algorithmen und Komplexität

Logik für Informatiker

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4

Die Komplexität von Scrabble

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

2.4 Kontextsensitive und Typ 0-Sprachen

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Lösungsvorschläge Blatt Z1

Algorithmen für OBDD s. 1. Reduziere 2. Boole sche Operationen

Theoretische Informatik 1

Erfüllbarkeit und Allgemeingültigkeit

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Formale Sprachen. Script, Kapitel 4. Grammatiken

Übung 4: Aussagenlogik II

Kapitel 1.3. Normalformen aussagenlogischer Formeln. Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1

Einführung in Approximative Algorithmen und Parametrisierte Komplexität

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Rekursiv aufzählbare Sprachen

Die Komplexitätsklassen P und NP

Theoretische Informatik 1

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Ersetzbarkeitstheorem

abgeschlossen unter,,,, R,

Theoretische Informatik SS 03 Übung 11

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2014/2015

Komplexitätstheorie Slide 1. Komplexitätstheorie

Ausgewählte unentscheidbare Sprachen

2. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

11.1 Kontextsensitive und allgemeine Grammatiken

Resolutionsalgorithmus

Ressourcen: Beweisbits nur für Funktionsauswertungen benötigt. Stelle sicher, dass jedes Teilmodul nur konstant viele Funktionsauswertungen verwendet.

Berechenbarkeit und Komplexität

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

Theoretische Informatik

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Vorbemerkungen

Normalformen boolescher Funktionen

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

Wortproblem für kontextfreie Grammatiken

Komplexitätstheorie Einführung und Überblick (Wiederholung)

Bisher. minimale DNF. logischen Formeln Booleschen Funktionen Schaltungen

TU5 Aussagenlogik II

Nichtdeterministische Platzklassen

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

Das P versus N P - Problem

Theoretische Informatik 1

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Einführung in die Theoretische Informatik

1 Reguläre Sprachen. 1.1 Reguläre Ausdrücke. Kai Sauerwald Zusammenfassung: GTI SS 12

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel

Informatik A (Autor: Max Willert)

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

Speicherplatz-Komplexität 1 / 30

Vorlesung Logik Wintersemester 2012/13 Universität Duisburg-Essen

Einführung in die Theoretische Informatik

Grammatik konstruieren, Beispiel Ausdrücke der Aussagenlogik in zwei Prädikaten p und q und den Verknüpfungsoperationen. Produktionsregeln:

Theoretische Informatik 2

Berechenbarkeit. Script, Kapitel 2

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

NP-vollständig - Was nun?

8. Turingmaschinen und kontextsensitive Sprachen

Mathematik für Informatiker I

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Mathematik-Vorkurs für Informatiker Aussagenlogik 1

Wir haben eine Beziehung zwischen entscheidbar und rekursiv aufzählbar hergeleitet.

Formale Systeme. Aussagenlogik: Sequenzenkalkül. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

23.1 Constraint-Netze

Aussagenlogische Widerlegungsverfahren zum Nachweis logischer Eigenschaften und Beziehungen

Normalformen der Prädikatenlogik

Sprachen und Automaten. Tino Hempel

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Automaten, Spiele und Logik

Aussagenlogische Kalküle

Klausuraufgaben. 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b}

Grundlagen der Theoretischen Informatik

Schlussregeln aus anderen Kalkülen

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

Endliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für

Theoretische Informatik 1

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

3) Linearzeit-Eigenschaften

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Was bisher geschah: klassische Aussagenlogik

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen

1 Einführung Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT) Notationen und Definitionen Übungsaufgaben...

Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion

Approximationsalgorithmen

Logik für Informatiker

Transkript:

NP-vollständige Probleme Dr. Eva Richter 6. Juli 2012 1 / 13

NP-Vollständigkeit Definition Eine Sprache B heißt NP-vollständig, wenn sei zwei Bedingungen erfüllt: (i) B ist in NP (ii) Jedes Problem A in NP ist polynomiell reduzierbar auf B. Definition Seien A, B Σ für Alphabet Σ. FP = def {f : Σ Σ f ist total berechenbar f ist Polynomialzeit-beschränkt} Die Menge A heißt polynomiell reduzierbar auf B, geschrieben als A P B, wenn es eine Funktion f FP gibt, so dass für alle w Σ gilt: w A genau dann, wenn f (w) B. Die Funkton f heißt polynomielle Reduktion von A auf B. 2 / 13

Der Satz von Levin-Cook Wenn man ein NP-vollständiges Problem gefunden hat, ist es einfach, mit Hilfe von polynomieller Reduktion andere daraus abzuleiten. Satz (LEVIN-COOK) SAT ist NP-vollständig Beweisidee: 1 Wir zeigen, dass SAT in NP liegt. 2 Wir zeigen, dass jede Sprache in NP in polynomieller Zeit auf SAT reduzierbar ist. SAT NP: NTM kann in polynomieller Zeit eine Belegung für ϕ raten und akzeptieren, falls diese erfüllend ist. 3 / 13

Beweis des Satzes von Levin-Cook 1 Sei A NP und N A eine polynomielle nichtdeterministische Turingmaschine für A mit Laufzeit O(n k ) für Konstante k. 2 Ein Tableau für N A auf w ist eine n k n k -Tabelle, Zeilen sind Konfigurationen eines Berechnungszweiges von N auf w. Jede Konfiguration beginnt und endet mit. Erste Zeile enthält die Starkonfiguration, jede folgende Zeile ist eine Nachfolgekonfiguration der darüber liegenden. Tableau ist akzeptierend, wenn eine Zeile eine akzeptierende Konfiguration ist. 3 Reduktionsfunktion f konstruiert aus Eingabe w eine Formel ϕ := ϕ cell ϕ start ϕ move ϕ accept 4 Seien Q und Γ die Menge der Zustände und das Bandalphabet von N A. Sei C = Q Γ. Für jedes i, j {1... n k } und c C definieren wir eine Variable x i,j,c. x i,j,c bekommt den Wert 1, wenn cell(i, j) = c. 4 / 13

Jede Belegung gibt jeder Zelle genau einen Eintrag ϕ cell = 1 i,j n k ( ) x i,j,c (x i,j,c x i,j,c ) c C c,c C,c c erster Teil der Formel besagt, dass in jeder Stelle des Tableaus mindestens ein Wert c stehen muss zweiter Teil besagt, dass es niemals zwei verschiedene Einträge c und c in einer Zelle geben kann 5 / 13

Teilformeln 2 und 3 In der ersten Zeile ist eine Startkonfiguration: ϕ start =x 1,1, x 1,2,q0 x 1,3,w1... x 1,n+2,wn x 1,n+3,... x 1,n k 1, x 1,n k, In einer Zeile steht eine akzeptierende Konfiguration: ϕ accept = 1 i,j n k x i,j,qaccept 6 / 13

Nachbarzeilen sind aufeinanderfolgende Konfigurationen Ein 2 3 Fenster heißt legal, wenn es durch Übereinanderschreiben eines Paares von Konfiguration dessen Nachfolgekonfiguration entsprechend der Überführungsfunktion von N A entstehen kann. Beispiele für legale Fenster: Für a, b, c Γ und q 1, q 2 Q gelte δ NA (q 1, a) = {(q 1, b, R)} und δ NA (q 1, b) = {(q 2, c, L), (q 2, a, R)}. a q 1 b q 2 a c a b a b a q 1 b a a q 1 a a q 2 a a b a b a b b b a b q 2 c b b 7 / 13

Nachbarzeilen... II Beispiele für nicht legale Fenster: Für a, b, c Γ und q 1, q 2 Q gelte δ NA (q 1, a) = {(q 1, b, R)} und δ NA (q 1, b) = {(q 2, c, L), (q 2, a, R)}. a b a a a a a q 1 b q 1 a a b q 1 b q 2 b q 2 Fakt: Wenn die oberste Zeile der Tabelle eine Startkonfiguration ist und jedes 2 3-Fenster legal ist, dann ist jede Zeile der Tabelle eine Nachfolgekonfiguration der darüberliegenden. 8 / 13

Weiter mit Teilformel 4 ϕ move = (das (i, j)-fenster ist legal) 1<i n k,1<j<n k Text steht für folgende Formel: (x i,j 1,a1 x i,j,a2 x i,j+1,a3 x i+1,j 1,a4 x i+1,j,a5 x i+1,j+1,a6 ) a 1,...,a 6 ist legal 9 / 13

Komplexität der Reduktion Da jedes Tableau eine n k n k -Tabelle ist, gibt es n 2k Zellen, jede Zelle hat C Variablen, C hängt nur von N ab, aber nicht von der Eingabelänge, die Zahl der Variablen liegt in O(n 2k ). ϕ cell enthält für jede Zelle nur eine feste beschränkte Teilformel, ihre Größe ist in O(n 2k ) ϕ move und ϕ accept enthalten für jede Zelle eine fest beschränkte Teilformel, also sind sie ebenfalls in O(n 2k ) Größe von ϕ ist in O(n 2k ) wegen iterativem Charakter kann ϕ in polynomieller Zeit erzeugt werden 10 / 13

3SAT ist NP-vollständig Für eine gegebene Belegung(als Zertifikat) können wir in polynomieller Zeit überprüfen, ob eine gegebene Formel in 3CNF davon erfüllt wird. modifizieren Beweis von Levin-Cook, sodass direkt eine Formel in 3CNF entsteht fasst man jede der Variablen als Klausel der Länge 1 auf, dann ist ϕ start eine Konjunktion von Klauseln ϕ accept ist eine große Disjunktion, also eine einzelne Klausel ϕ cell ist eine Konjunktion von Teilformeln, von denen jede eine Disjunktion und eine Konjunktion von Disjunktionen enthält; sie ist bereits in konjunktiver Normalform ϕ move wird mit Distributivgesetzen umgewandelt, Größe jeder Teilformel wird signifikant erhöht, verändert die absolute Größe von ϕ move nur um konstanten Faktor, da die Größe jeder Teilformel nur von N A abhängt durch Einführung neuer Variablen Umwandlung von CNF in 3CNF 11 / 13

Weitere NP-vollständige Probleme 1 CLIQUE ist NP-vollständig (durch polynomielle Reduktion von 3SAT auf CLIQUE) 2 VERTEX COVER ist NP-vollständig (durch polynomielle Reduktion von 3SAT ) 3 HAMPATH ist NP-vollständig (durch polynomielle Reduktion von 3SAT ) 12 / 13