¨Ubungsblatt 8

Werbung
Komplexität von Algorithmen
SS 2013
Übungsblatt 8
Abgabe: In der Woche ab 8.7. in der jeweiligen Übungsgruppe
Bitte vermerken Sie in Ihrer Lösung die Namen und CIP-Logins/StudOn-IDs aller Mitglieder
ihrer Gruppe sowie den Namen Ihres Übungsleiters. Geben Sie für jede Aufgabe eindeutig
den Namen des für die Lösung verantwortlichen Mitgliedes an.
Aufgabe 1
(10 Einzelpunkte, 5 Gruppenpunkte)
Ein Entscheidungsproblem wurde als eine Menge von Bitstrings definiert. Beispielsweise entspricht das Problem, zu entscheiden, ob eine Zahl eine Primzahl ist, der Menge
PRIMES = {bin(x) | x ist Primzahl}.
Das mengentheoretische Komplement X eines Entscheidungsproblems X entspricht dann dem
dualen Problem. Beispielsweise gilt:
PRIMES = {0, 1}∗ \ PRIMES = {bin(x) | x ist keine Primzahl}.
Eine Komplexitätsklasse wurde als eine Menge von Entscheidungsproblemen (welche alle unter bestimmten gemeinsamen Zeit- oder Speicher-Beschränkungen lösbar sind) definiert. Zum
Beispiel bezeichnet PTIME die Menge all jener Entscheidungsprobleme, die von einer deterministischen Turing-Maschine in polynomieller Zeit gelöst werden können. Für eine gegebene
Komplexitätsklasse C ist die duale Klasse co-C als co-C = {P | P ∈ C} definiert.
1. Beweisen Sie, dass PTIME = co-PTIME.
2. Kann dieselbe Argumentation verwendet werden, um NPTIME = co-NPTIME zu beweisen? Begründen Sie Ihr Antwort.
3. Zeigen Sie, dass wenn NPTIME 6= co-NPTIME, dann auch PTIME 6= NPTIME.
Hinweis: Wenn Ihr Antwort auf Frage 2 “ja” lautet, sollten Sie vielleicht noch ein wenig länger
über Ihre Antwort nachdenken.
Aufgabe 2
(10 Einzelpunkte, 5 Gruppenpunkte)
Wir sagen, dass ein gerichteter Graph G = hV, Ei einen Zyklus enthält, wenn es einen gerichteten
Pfad der folgenden Form in G gibt:
e
e
ek−1
e
0
1
k
v0 −→
v1 −→
. . . −→ vk −→
v0
wobei vi ∈ V und ei ∈ E für alle entsprechenden i. Wir nehmen an, dass die Knoten in V mit
den Zahlen 0, 1, 2, . . . , m − 1 nummeriert sind; eine Kantenrepräsentation von G ist dann ein
Tupel hm, `i wobei ` eine Liste der Länge |E| ist und alle Paare (a, b) ∈ E enthält.
KompAlg, SS 2013
Zeigen Sie, dass das Problem, zu entscheiden, ob ein gerichteter Graph in Kantenrepräsentation
einen Zyklus enthält in NL ist (d.h., dass das Problem von einer nicht-deterministischen TuringMaschine gelöst werden kann, die für eine Eingabe der Länge n zusätzlichen Speicherplatz der
Grösse höchstens c log(n) benötigt, wobei c eine Konstante ist, die nicht von n abhängt). Begründen Sie Ihre Lösung sorgfältig.
Hinweis: Es ist nicht notwendig, eine Turing-Maschine in vollem Detail anzugeben; PseudoCode mit klaren Hinweisen für die tatsächliche Implementation des Codes auf einer nichtdeterministischen Turing-Maschine (insbesondere bezüglich des Speicherverbrauchs) genügt.
Aufgabe 3
Beweisen Sie:
(10 Einzelpunkte, 5 Gruppenpunkte)
∞
[
TIME(c) ⊆ SPACE(0)
c=0
S
wobei ∞
c=0 TIME(c) die Klasse von Entscheidungsproblemen ist, die von einer Turing-Maschine
in konstanter Zeit gelöst werden können, und SPACE(0) die Menge von Entscheidungsproblemen bezeichnet, die ganz ohne Verwendung von zusätzlichem Speicherplatz gelöst werden
können.
2
Herunterladen