18.09.2013 Aufrufe

Skript in PDF - Theoretische Informatik - Technische Universität ...

Skript in PDF - Theoretische Informatik - Technische Universität ...

Skript in PDF - Theoretische Informatik - Technische Universität ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

6.7. N P-VOLLSTÄNDIGKEIT 167<br />

Satz 3. E<strong>in</strong>e Sprache gehört genau dann zur Klasse N P, wenn sie e<strong>in</strong>e Zertifikatensprache<br />

hat.<br />

Beweis. 1. Gegeben e<strong>in</strong>e Zertifikatensprache Lcheck ⊆ Γ ∗ für L ⊆ Σ ∗ *, wir<br />

beweisen, dass L ∈ N P.<br />

Sei M e<strong>in</strong>e Tur<strong>in</strong>gmasch<strong>in</strong>e mit polynomialer Zeitkomplexität q(n), die Lcheck<br />

akzeptiert. Dann haben wir die folgende nichtdeterm<strong>in</strong>istische Tur<strong>in</strong>gmasch<strong>in</strong>e<br />

M ∗ , die L akzeptiert:<br />

Band 1<br />

E<strong>in</strong>gabeband<br />

Band 2<br />

Erzeugung von z<br />

Band 3<br />

Simulation von M<br />

. . .<br />

w1 w2 wn<br />

z1 z2 . . . zk für k ≤ p(n)<br />

. . . . . .<br />

w1 w2 wn z1 z2 zk<br />

Auf Band 1 steht die Eigabe w der Länge n. Auf Band 2 wird nichtdeterm<strong>in</strong>istisch<br />

e<strong>in</strong> Wort z über der Länge k ≤ p(n) geschrieben. Dann werden<br />

w und danach z auf Band 3 kopiert, und die Masch<strong>in</strong>e M wird simuliert;<br />

falls M hält und akzeptiert, hält auch M ∗ und akzeptiert. Es folgt also,<br />

dass M ∗ genau die Wörter w akzeptiert, für die es e<strong>in</strong> Wort z der Länge<br />

≤ p(n) mit wz ∈ Lcheck gibt – also akzeptiert M ∗ die Sprache L. Die Erzeugung<br />

von z dauert 2k ∈ O(p(n)) Schritte und die Simulation von M dauert<br />

q(n+k) ∈ O(q(p(n))) Schritte, also hat M ∗ e<strong>in</strong>e polynomiale Zeitkomplexität.<br />

2. Für jede Sprache L ⊆ Σ ∗ der Klasse N P konstruieren wir e<strong>in</strong>e Zertifikatensprache.<br />

Wir haben e<strong>in</strong>e nichtdeterm<strong>in</strong>istische Tur<strong>in</strong>gmasch<strong>in</strong>e M mit polynomialer<br />

Zeitkomplexität p(n), die L akzeptiert. Für jedes Wort w ∈ L der<br />

Länge n gibt es e<strong>in</strong>e Boolesche Formel φw der Länge O(p 2 (n)), die die Berechnung<br />

von w vollständig beschreibt – siehe den obigen Beweis des Cookschen<br />

Satzes. Da φw e<strong>in</strong>e Formel <strong>in</strong> KNF ist, ist sie e<strong>in</strong> Wort aus den Symbolen<br />

∨, ∧, (, ), x0, x1, x10, . . . , xi (i ≤ p(n) 2 )<br />

wobei i b<strong>in</strong>är dargestellt wird, also e<strong>in</strong> Wort über<br />

Γ = {∨, ∧, (, ), x, 0, 1}.<br />

Das Wort w hat die Länge O(p 2 (n)). Genauer gibt es nur e<strong>in</strong>e Konstante<br />

K, so dass für jedes Wort w ∈ L der Länge n die Berechnung von w durch<br />

e<strong>in</strong>e Formel φw der Länge ≤ Kp 2 (n) repräsentiert wird. Nehmen wir der<br />

E<strong>in</strong>fachheit halber an, dass Γ ∩ Σ = ∅. Dann ist die folgende Sprache Lcheck<br />

über Σ ∪ Γ e<strong>in</strong>e Zertifikatensprache für L: Lcheck besteht aus allen Wörtern<br />

wφ, wobei w e<strong>in</strong> Wort über Σ (der Länge n) ist und φ e<strong>in</strong>e Boolesche Formel<br />

der Länge ≤ Kp 2 (n), die e<strong>in</strong>e akzeptierende Berechnung von w beschreibt,<br />

ist.<br />

(a) Lcheck gehört zu P.<br />

In der Tat, für jedes Wort u der Länge m über Σ ∪ Γ überprüfen wir,<br />

i. ob u = wφ für w ∈ Σ ∗ und φ ∈ Γ ∗ , wobei w die Länge n und φ die<br />

Länge ≤ Kp 2 (n) hat und

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!