Musterlösung zur Hauptklausur Informatik III Wintersemester 2008

Werbung
Institut für Kryptographie und Sicherheit
Dr. Jörn Müller-Quade
Musterlösung zur Hauptklausur
Informatik III
Wintersemester 2008/2009
Name:
Matrikelnummer:
Seite 1
Aufgabe 1
(5 + 5 = 10 Punkte)
(a) Gegeben sei der folgende nichtdeterministische Akzeptor M = (Q, A, δ, q0 , F) mit Q =
{q0 , q1 , q2 }, A = {a, b} und F = {q2 }.
a
a
q0
q1
b
b
a
a
q2
Geben Sie einen äquivalenten deterministischen Akzeptor an (mit Zeichnung des Zustandsübergangsgraphen).
Lösung
M′ = (Q′ = {{q0 }, {q0 , q1 }, {q1 , q2 }, ∅}, A, δ ′ , {q0 }, F ′ = {{q0 , q2 }})
Name:
Matrikelnummer:
Seite 2
{q0 }
b
a
∅
{q0 , q1 }
a
{q0 , q1 }
{q0 , q2 }
a
b
∅
{q0 , q1 }
Abbildung 1: Ableitungsbaum
a
a
{q0 }
{q0 , q1 }
b
∅
a
b
b
{q0 , q2 }
a, b
Abbildung 2: Äquivalenter deterministischer Automat M′
Name:
Matrikelnummer:
Seite 3
(b) Gegeben sei die folgenden Grammatik G = (V, A, S, P) mit dem Terminalalphabet A =
{a, b, c, d}, dem Variablenalphabet V = {S, A, B, C, X, Y }, dem Startsymbol S ∈ V und
den Produktionen.
P = {S
→ AY |XY
X → AX|BX|AA|BA
Y
→ CX|CA
A → a
B → b
C → c
Geben Sie an, ob sich das Wort w = bacaa in der Sprache L(G) befindet. Benutzen Sie
dazu den Cocke-Younger-Kasami-Algorithmus aus der Vorlesung.
Lösung
S
S
S
S
X
Y
Y
X
B
A
C
A
A
b
a
c
a
a
Das Wort w befindet sich also in L(G)
Name:
Matrikelnummer:
Aufgabe 2
Seite 4
(2 + 3 + 5 = 10 Punkte)
(a) Gegeben seien die Sprachen L1 und L2 über dem Alphabet A mit L1 ∩ L2 = ∅ und
L1 ∪ L2 = A∗ . L1 ist entscheidbar. Ist L2 rekursiv aufzählbar? Begründen Sie Ihre Antwort.
Lösung:
Ja, L2 ist rekursiv aufzählbar. Begründung: Da L1 ∩ L2 = ∅ und L1 ∪ L2 = A∗ gilt, ist L1
die Komplementsprache zu L2 . Laut einem Satz aus der Vorlesung ist eine Menge genau
dann entscheidbar, wenn die Menge selbst und ihr Komplement beide rekursiv aufzählbar
sind. Da L1 entscheidbar ist, muss also ihr Komplement L2 rekursiv aufzählbar sein.
(b) Sei L eine Sprache vom Typ 0 über dem Alphabet A und M eine deterministische
Turingmaschine, die L in polynomialer Zeit akzeptiert.
(i) Ist L = A∗ \ L entscheidbar? Begründen Sie Ihre Antwort.
Lösung:
Ja, L ist entscheidbar. Begründung:
Version1: Aus der Turingmaschine M, die L akzeptiert, lässt sich folgendermaßen
eine deterministische Turingmaschine mit polynomialer Laufzeit konstruieren, die
L akzeptiert: Sei Q die Zustandsmenge von M und F ⊂ Q die Menge der Endzustände von M. Sei M′ nun eine Turingmaschine, die genauso aussieht wie M,
d.h. gleiche Übergänge, gleicher Startzustand, gleiches Eingabe- und Bandalphabet,
gleiche Zustandsmenge u.s.w., mit dem einzigen unterschied, dass die Endzustandsmenge von M′ nicht F sondern Q \ F ist. Die Turingmaschine ist genau wie M
deterministisch und akzeptiert L in polynomiale Laufzeit. Damit ist L entscheidbar.
Version 2: Da es eine Turingmaschine gibt, die L akzeptiert, liegt L in der Komplexitätsklasse P. Laut Vorlesung gilt P = co-P. Damit liegt auch die Komplementsprache zu L in P, ist also entscheidbar.
(ii) In welcher Komplexitätsklasse liegt L? Begründen Sie Ihre Antwort.
Lösung:
Da es eine deterministische Turingmaschine gibt, die L in polynomialer laufzeit
akzeptiert (siehe Lösung von i) Version 1), liegt L in der Komplexitätsklasse P.
(c) Betrachten Sie folgende Instanz des Post’schen Korrespondenzproblems über dem Alphabet {a, b}:
!
!
a
aa
K=
b
baa
Name:
Matrikelnummer:
Seite 5
(i) Warum hat das Postsystem K keine Lösung?
Lösung:
Das Postsystem kann keine Lösung haben, weil in beiden Klammern die obere
Zeichenfolge mit einem a und die untee Zeichenfolge mit einem b beginnt. Es gibt
also keine Indexfolge, so dass das obere und das untere Wort mit dem gleichen
Buchstaben beginnen. Damit kann es auch keine Indexfolge geben, so dass das
obere Wort gleich dem unteren Wort ist.
(ii) Ergänzen Sie das Postsystem K so, dass es mindestens eine Lösung hat, und geben
Sie eine Lösung des ergänzten Postsystems an.
Lösung:
Einfache Version: (reicht für volle Punktzahl)!
a
Füge dem Postsystem eine dritte Klammer
hinzu. Eine Lösung für das Posta
system wäre dann die Indexfolge (3), die das Wort a erzeugen würde.
Version, die alle Klammern mit einbezieht:
Ergänztes System:
!
!
!
a
aa
bb
b
baa
λ
Eine Lösung wäre die Indexfolge (3,1,2,4).
λ
a
!
Name:
Matrikelnummer:
Aufgabe 3
Seite 6
(4 + 3 + 3 = 10 Punkte)
(a) Zeigen Sie: Es gibt ein n ∈ N0 , sodass
ϕn (x) = (n · x)2
wobei ϕn die Funktion mit der Gödelnummer n ist.
Lösung
Man betrachte folgende Programmumschreibefunktion
f (i) = „x1 := i · x1 ; x1 := x21 ;“
Die Funktion f ist berechenbar und total und es gilt
ϕf (i) (x) = (i · x)2
Nach dem Kleene’sche Fixpunktsatz gibt es ein n ∈ N für welches gilt
ϕf (n) = ϕn .
Damit gilt
ϕn (x) = (n · x)2
(b) Zeigen Sie: Die Menge
H = {i ∈ N0 |ϕi (7) = 1}
ist nicht rekursiv.
Lösung
Zunächst stellt man fest dass die Menge H Funktionen respektiert, denn sind i, j ∈ N0
mit ϕi = ϕj und ist i ∈ H, so gilt
1 = ϕi (7) = ϕj (7).
Also ist auch j ∈ H. H ist auch nicht leer, denn für i = "x1 := 1;“ gilt ϕi (7) = 1. H ist
nicht voll (also H =
6 N0 ), denn für i = „x1 := 2;“ gilt ϕi (7) = 2 6= 1. Es ist also nach dem
Satz von Rice H nicht rekursiv.
(c) Was besagt Gödels Unvollständigkeitssatz?
Lösung
Jedes hinreichend mächtige Beweissystem (sprich jedes aus welchem sich die Menge der
natürlichen Zahlen ableiten lässt) ist entweder unvollständig oder widersprüchlich.
Name:
Aufgabe 4
Matrikelnummer:
Seite 7
(5 + 3 + 2 = 10 Punkte)
Gehen Sie bei dieser Aufgabe durchweg von der Annahme P =
6 N P aus. Sie können Aussagen
verwenden, die in Vorlesung oder Übung gezeigt/behandelt wurden.
(a) Problem: 4-COLOR
Gegeben: Ein ungerichteter Graph G = (V, E).
Frage:
Gibt es eine Färbung der Knoten V , sodass je zwei Knoten, die durch eine Kante aus E miteinander verbunden sind, unterschiedlich gefärbt sind?
Dabei stehen nur vier unterschiedliche Farben zur Verfügung.
Zeigen Sie: 4-COLOR ist N P-vollständig.
Dabei kann es hilfreich für Sie sein, wenn Sie in ihrem Beweis die N P-Vollständigkeit
des Dreifärbbarkeitsproblems 3-COLOR verwenden.
Lösung
Zunächst einmal macht man sich klar dass 4-COLOR in N P liegt. Das ist der Fall,
denn rät man eine Färbung der Knoten, dann ist die Korrektheit der Färbung in O(#E)
Schritten verifizierbar, indem man schlicht alle Kanten iteriert und überprüft ob die
Endknoten unterschiedlich gefärbt sind.
4-COLOR ist N P-hart, denn wir können 3-COLOR auf 4-COLOR reduzieren. Sei I eine
Instanz von 3-COLOR mit G = (V, E). Die Idee der Reduktion ist einen weiteren Knoten
zu V hinzuzufügen, der die extra Farbe von 4-COLOR zwingend „verbraucht“ ohne dass
ein weiterer Knoten die selbe Farbe hat. Dazu verbindet man ihn mit allen Knoten in V .
Die 4-COLOR Instanz I ′ hat also G′ = (V ∪ {v ′ }, E ∪ {(v, v ′ )|v ∈ V }). Ist G dreifärbbar,
so behalten wir die Färbung der Knoten von G in G′ bei und färben v ′ in der vierten
Farbe, G′ ist dann also vierfärbbar. Ist G′ vierfärbbar, so hat kein anderer Knoten die
selbe Farbe wie v ′ , da v ′ mit allen anderen Knoten verbunden ist. Durch entfernen von
v ′ aus G′ erhält man somit eine korrekte Dreifärbung von G, G ist also dreifärbbar.
Name:
Matrikelnummer:
Seite 8
(b) Es ist bekannt dass, sowohl SAT, das Erfüllbarkeitsproblem der Aussagenlogik, als auch
3-SAT, das Erfüllbarkeitsproblem beschränkt auf Klauseln, die nur aus 3 Literalen bestehen, N P-vollständig ist. Sei das Problem 3-CLIQUE folgendermaßen definiert:
Problem: 3-CLIQUE
Gegeben: Ein ungerichteter Graph G = (V, E)
Frage:
Gibt es eine Clique der Größe 3 in G?
Zeigen Sie: 3-CLIQUE ist nicht N P-vollständig.
Lösung
Wir geben einen Algorithmus an der 3-CLIQUE in Polynomialzeit entscheidet. Da wir
in dieser Aufgabe von der Annahme P =
6 N P ausgehen, kann 3-CLIQUE nicht N Pvollständig sein, denn sonst wäre P = N P. Das CLIQUE-Problem gehört zu den „fixed
Parameter tractable“ Problemen. Das heißt, ist die Größe einer Clique fest vorgegeben,
in diesem Fall 3, so ist das zugehörige Entscheidungsproblem in Polynomialzeit lösbar.
Der Algorithmus verfolgt dabei schlicht den Brute-Force Ansatz: Man betrachtet alle
Tripel von Knoten und tested ob diese eine Dreierclique bilden. Ist nach durchlaufen aller Tripel eine Dreierclique
gefunden, so gibt man als Ausgabe JA aus, ansonsten NEIN.
Es gibt insgesamt #V
Tripel
von Knoten, daher ist der Aufwand des Algorithmus im
3
#V 3
wesentlichen O( 3 ) = O(#V ) was polynomiell in der Eingabe ist.
(c) Formulieren sie die starke Church-Turing These
Lösung
Jedes vernünftige Berechnungsmodell kann effizient auf einer Turingmaschine simuliert
werden.
Name:
Matrikelnummer:
Aufgabe 5
Seite 9
(2 + 2 + 3 + 3 = 10 Punkte)
Gegeben sei ein binärer Kanal mit Quelle (Sender) X mit Augabealphabet A = {0, 1} und
Empfänger Y. Die Quelle sendet eine 0 mit Wahrscheinlichkeit p0 = β und eine 1 mit Wahrscheinlichkeit p1 = 1 − β.
Der Kanal zwischen X und Y überträgt eine 1 immer richtig. Eine 0 wird mit Wahrscheinlichkeit α falsch übertragen.
Abbildung 3: Skizze für Ausgabe- und Übertragungswahrscheinlichkeiten
Im Folgenden bezeichne I(p) die Information eines Ereignisses mit der Wahrscheinlichkeit p.
(a) Für welche Werte von β gilt I(p0 ) = I(p1 )? Für welche Werte von β gilt I(p0 ) > I(p1 )?
Lösung:
I(p0 ) = I(p1 ) gilt für β = 12 .
I(p0 ) > I(p1 ) gilt, falls 0 ≤ β < 21 .
(b) Für welches β is die Entropie der Quelle X maximal?
Lösung:
Die Entropie einer Quelle ist Maximal bei Gleichverteilung, also hier bei β = 12 .
(c) Für welches α ist die Transinformation I(X ; Y) maximal? Begründen Sie Ihre Antwort.
Lösung:
Die Transinformation wird maximal, wenn Äquivokation und Fehlinformation minimal
werden. Diese werden minimal bei möglichst wenigen Übertragungsfehlern, also α = 0.
(d) Bestimmen Sie für β = 12 und α = 14 die Entropie der Quelle H(X ) und die Entropie des
Empfängers H(Y) Geben Sie außerdem die Formeln für die Totalinformation H(X , Y)
und die Äquivokation H(X |Y) an.
Tipp: log2
3
8
≈ −1, 42 und log2
5
8
≈ −0, 68
Name:
Matrikelnummer:
Seite 10
Lösung:
Entropie der Quelle:
Es gilt p0 = p1 = 12 . D.h. H(X ) = − 12 log2 ( 21 ) − 21 log2 ( 21 ) = − log2 ( 12 ) = 1.
Entropie des Empfängers:
Es gilt p(0|0) = 43 , p(0|1) = 0, p(1|0) = 14 und p(1|1) = 1.
Damit gilt P (Y = 0) = 12 ∗ p(0|0) = 83 und P (Y = 1) = 1 − P (Y = 0) = 58 . Damit lässt sich nun die Entropie von Y ausrechnen: H(Y) = − 83 log2 ( 83 ) − 58 log2 ( 85 ) =
3
5
8 ∗ 1, 42 + 8 ∗ 0, 68 ≈ 0, 53 + 0, 43 ≈ 0, 95.
Formel für die Totalinformation:
H(X , Y) =
XX
y ∈ Yp(x, y) log2 (
x∈X
1
)
p(x, y)
Formel für die Äquivokation:
H(X |Y) =
X
x∈X ,y∈Y
p(x, y) log2 (p(x|y))
Name:
Matrikelnummer:
Seite 11
Aufgabe 6
(10 Punkte)
Bei dieser Multiple-Choice-Aufgabe gibt jede richtige Antwort 1 Punkt, für jede falsche Antwort wird 1 Punkt abgezogen. Für nicht beantwortete Fragen (kein Kreuz) werden keine Punkte
abgezogen. Die Gesamtpunktzahl der Aufgabe kann nicht negativ sein.
Geben Sie für jede der folgenden Aussagen an, ob die Aussage wahr oder falsch ist.
Zu jeder CH-2-Sprache gibt es eine CH-1-Grammatik
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
wahr
f alsch
Es ist entscheidbar, ob zwei endliche Automaten äquivalent sind
(d.h. die gleiche Sprache akzeptieren).
Wenn P = N P dann ist N P = co−N P
Die erwartete Codelänge einer Huffman-Kodierung ist immer größer als oder gleich der Entropie der Quelle.
Jede while-berechenbare Funktion ist auch loop-berechenbar.
Um zu zeigen, dass ein Problem Π N P−vollständig ist, genügt es,
ein N P-hartes Problem auf Π zu reduzieren.
Die Menge aller totalen while-Programme ist nicht rekursiv, die
Menge aller while-Programme hingegen schon.
Die Funktion f (x) =
(
1
0
, P = NP
ist berechenbar und total.
, sonst
Wenn P =
6 N P gilt, dann liegt das Entscheidungsproblem zu
L = {n ∈ N| Die Turingmaschine mit Gödelnummer n terminier immer } in N P ∩ co-N P
Der Schnitt einer Sprache von Chomsky-Typ-1 mit einer Sprache
von Chomsky-Typ-2 ist wieder eine Sprache von Chomsky-Typ-1.
Herunterladen