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.
166 KAPITEL 6. KOMPLEXITÄT VON ALGORITHMEN<br />
Alle Bandsymbole bleiben unverändert:<br />
(8)<br />
Es gilt:<br />
(u t y ∧ s t j,r) → s t+1<br />
j,r<br />
für alle j = 0, . . .,k<br />
und alle r = −p(n), . . . , p(n) − 1.<br />
Wenn alle Klauseln (5)–(8) zu φw h<strong>in</strong>zugefügt worden s<strong>in</strong>d, wird der<br />
Übergang Nr. y korrekt ausgeführt. Damit ist die Konstruktion von φw<br />
vollständig.<br />
φw ist erfüllbar ⇐⇒ M akzeptiert die E<strong>in</strong>gabe w.<br />
In der Tat ergibt jede akzeptierende Berechnung von w e<strong>in</strong>e Belegung der<br />
Variablen von φw für die alle Teile der Konjunktion true s<strong>in</strong>d, also w = true:<br />
wir setzen qt i = true, falls die Berechnung M zur Zeit t den Zustand qi<br />
hatte, analog mit kt r und stj,r ; wir setzen uty = true, falls der Übergang Nr.<br />
y im Schritt t durchgeführt wurde. Umgekehrt beschreibt jede Belegung der<br />
Variablen von φw, für die alle Teile der Konjunktion von φw true s<strong>in</strong>d, e<strong>in</strong>e<br />
akzeptierende Berechnung von w.<br />
Wie viel Zeit benötigen wir, um φw zu konstruieren?<br />
Der Teil (1) braucht O(p(n)) Symbole (also O(p(n)) Zeite<strong>in</strong>heiten), dasselbe<br />
gilt für den Teil (2). Es läßt sich leicht zeigen, dass die Randbed<strong>in</strong>gungen nur<br />
O(p(n) 2 ) Symbole benötigen. Der letzte Teil, der die d Übergänge repräsentiert,<br />
braucht<br />
O(p(n)) Symbole für (5)<br />
O(1) Symbole für (6)<br />
O(p(n)) Symbole für (7) und<br />
O(p(n)) Symbole für (8),<br />
und da d e<strong>in</strong>e Konstante ist, brauchen wir für den letzten Teil O(p(n)) Symbole.<br />
Also reichen <strong>in</strong>sgesamt<br />
O(p(n) 2 ) Symbole.<br />
Es folgt, dass die Konstruktion von φw höchstens O(p(n) 2 ) Schritte verlangt.<br />
Bemerkung 2. Die Idee, dass e<strong>in</strong>e Sprache L genau dann zu N P gehört, wenn<br />
angebotene Lösungen <strong>in</strong> polynomialer Zeit überprüft werden können, läßt sich sich<br />
durch den Begriff Zertifikat formalisieren. Z.B. ist für 3-FÄRBUNG e<strong>in</strong> Zertifikat<br />
e<strong>in</strong>es ungeordneten Graphen e<strong>in</strong>e Färbung (korrekt oder nicht) se<strong>in</strong>er Knoten mit<br />
drei Farben. Wir formen die Sprache Lcheck aller Wörter wz, wobei w e<strong>in</strong> Code<br />
e<strong>in</strong>es Graphen ist und z e<strong>in</strong> Code se<strong>in</strong>es Zertifikates, das korrekt ist. Diese Sprache<br />
gehört der Klasse P an, denn für jeden Graphen und jede Färbung ist die Korrektheit<br />
effizient überprüfbar. Wichtig ist hier, dass die angebotenen Lösungen nicht<br />
” komplizierter“ zu codieren s<strong>in</strong>d als die E<strong>in</strong>gaben selbst. Genauer: für die Wörter<br />
wz (w – E<strong>in</strong>gabe, z - Zertifikat) nehmen wir an, dass die Länge z des Wortes z<br />
durch p(w), wobei p(n) e<strong>in</strong> Polynom ist, begrenzt werden kann:<br />
Def<strong>in</strong>ition. Für e<strong>in</strong>e Sprache L ⊆ Σ ∗ heißt e<strong>in</strong>e Sprache Lcheck e<strong>in</strong>e Zertifikatensprache,<br />
falls<br />
1. Lcheck <strong>in</strong> P liegt und<br />
2. es gibt e<strong>in</strong> Polynom p(n), so dass für jedes Wort w über Σ der Länge n gilt:<br />
w ∈ L ⇐⇒ wz ∈ Lcheck für irgende<strong>in</strong> Wort z der Länge ≤ p(n).