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.

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).

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!