Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
6.6. KOMPLEXITÄTSKLASSE N P 161<br />
•<br />
u <br />
•<br />
<br />
<br />
1 •<br />
<br />
•<br />
1 <br />
•<br />
<br />
<br />
<br />
•<br />
<br />
•<br />
1 <br />
•<br />
<br />
<br />
<br />
•<br />
<br />
•<br />
1 •<br />
1 • u′<br />
1<br />
3 •<br />
′ v<br />
(6.6a)<br />
• v<br />
•<br />
u <br />
•<br />
<br />
<br />
1 •<br />
<br />
•<br />
1 <br />
•<br />
<br />
<br />
<br />
•<br />
<br />
•<br />
1 <br />
•<br />
<br />
<br />
•<br />
<br />
•<br />
1 •<br />
2 • u′<br />
2<br />
3 •<br />
′ v<br />
(6.6b)<br />
Abbildung 6.6: Färbung e<strong>in</strong>er Kopie des Graphen H<br />
(a) Falls u ′ Farbe 1 hat (siehe 6.6a), benutzen wir die Färbung von Bild 6.3a.<br />
(b) Falls u ′ die Farbe 2 oder 3 hat, (siehe 6.6b), benutzen wir die Färbung<br />
von Bild 6.3b bzw. 6.3c.<br />
4. Die Konstruktion von G ∗ aus G dauert O(k 2 ) Schritte, wobei k die Zahl<br />
aller Kanten von G ist (falls G schon <strong>in</strong> der Ebene repräsentiert wird, was<br />
auch <strong>in</strong> polynomialer Zeit durchgeführt wird). In der Tat müssen wir für<br />
jede Kante höchstens k Schneidungen überbrücken, und das dauert (da e<strong>in</strong>e<br />
Überbrückung <strong>in</strong> konstanter Zeit O(1) durchgeführt wird) O(k) Schritte pro<br />
Kante.<br />
6.6 Komplexitätsklasse N P<br />
Probleme, die grundsätzlich schwieriger zu lösen s<strong>in</strong>d als die der Klasse P, die sich<br />
aber trotzdem <strong>in</strong> polynomialer Zeit von e<strong>in</strong>er nichtdeterm<strong>in</strong>istischen TM lösen lassen,<br />
formen die Komplexitätsklasse N P. Intuitiv kann man N P wie folgt erklären:<br />
falls e<strong>in</strong> Entscheidungsproblem die Eigenschaft hat, dass man <strong>in</strong> polynomialer Zeit<br />
überprüfen kann, ob e<strong>in</strong>e ” angebotene“ Lösung wirklich die Aufgabe löst, gehört<br />
das Problem zu N P. Bevor wir N P formal def<strong>in</strong>ieren, zeigen wir diese <strong>in</strong>tuitive<br />
Erklärung an e<strong>in</strong>em Beispiel.<br />
Beispiel 1 (ZERLEGBARKEIT). Wir sollen entscheiden, ob für e<strong>in</strong>e Zahl n (E<strong>in</strong>gabe)<br />
e<strong>in</strong>e Zerlegung <strong>in</strong> e<strong>in</strong> Produkt n = pq zweier kle<strong>in</strong>erer Zahlen existiert. Obwohl<br />
das e<strong>in</strong> Problem ist, dass <strong>in</strong> der Mathematik seit tausenden von Jahren behandelt<br />
wurde, gibt es ke<strong>in</strong>en effizienten Algorithmus dafür. Wir wissen also nicht, ob ZER-<br />
LEGBARKEIT zu P gehört. Aber dieses Problem gehört offensichtlich zu N P:<br />
falls uns jemand Zahlen p und q nennt, können wir effizient überprüfen, ob sie e<strong>in</strong>e<br />
Lösung bilden, d.h., ob das Produkt pq der E<strong>in</strong>gabe gleicht.<br />
Das letzte kann mit e<strong>in</strong>er nichtdeterm<strong>in</strong>istischen TM wie folgt gelöst werden: Band 1<br />
ist das E<strong>in</strong>gabeband. Auf Band 2 wird nichtdeterm<strong>in</strong>istisch e<strong>in</strong>e Zahl p geschrieben<br />
und auf Band 3 nichtdeterm<strong>in</strong>istisch e<strong>in</strong>e Zahl q. Die NTM multipliziert p mit q und<br />
vergleicht pq mit Band 1: falls pq auf Band 1 steht, hält die NTM und akzeptiert,<br />
falls nicht, hält sie und akzeptiert nicht. Für jede Zahl n, die zerlegbar ist, gibt es<br />
e<strong>in</strong>e Berechnung, die n <strong>in</strong> l<strong>in</strong>earer Zeit akzeptiert.<br />
Def<strong>in</strong>ition. Wir sagen, dass e<strong>in</strong>e nichtdeterm<strong>in</strong>istische Tur<strong>in</strong>gmasch<strong>in</strong>e M die<br />
Zeitkomplexität p(n) hat, falls es für jede E<strong>in</strong>gabe der Länge n, die M akzeptiert,<br />
e<strong>in</strong>e akzeptierende Berechnung gibt, die höchstens p(n) Berechnungsschritte<br />
benötigt.<br />
Mit N P bezeichnen wir die Klasse aller Sprachen (oder Entscheidungsprobleme), die<br />
von e<strong>in</strong>er NTM mit polynomialer Zeitkomplexität akzeptiert (oder gelöst) werden<br />
können. Genauer: e<strong>in</strong>e Sprache L gehört zu N P, falls es e<strong>in</strong>e NTM und e<strong>in</strong> Polynom<br />
p(n) gibt, so dass die NTM die Zeitkomplexität p(n) hat und L akzeptiert.<br />
• v