Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Nico Döttling Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 6
Aufgabe (K) (4 Punkte) Der ebenso geniale wie wasserscheue Wissenschaftler und Superbösewicht Doktor Meta möchte in seinem Unterwasserlabor ungestört einen finsteren Plan austüfteln. Nachdem er mit dem Labyrinth im Metareaktor so gute Erfahrungen gesammelt hat, installiert er ein Tunnelsystem als Zugang zu seinem Unterwasserlabor. Das Tunnelsystem wird von fließendem Wasser durchströmt, so dass nur Bewegungen in Fließrichtung möglich sind. Außerdem sind besondere Schleusen eingebaut: wenn man bestimmte Schleusen passiert, wird eine andere Schleuse dauerhaft verschlossen. Doktor Meta interessiert sich für allgemeine Ergebnisse und formuliert das Meta-Laborproblem MLP, das ein erfolgreicher Eindringling lösen muss: Gegeben ist ein gerichteter Graph G = (V, E) mit Startknoten s V und Endknoten t V und eine Menge C = {(a, b ),, (a n, b n )}, a i, b i V. Existiert ein Pfad von s nach t, sodass dieser Pfad höchstens einen Knoten von jedem Paar in C enthält? Zeigen Sie: MLP ist N P-vollständig. Hinweis. Reduzieren Sie das aus der Vorlesung bekannte Problem SAT auf das MLP. Sei (M, K) eine -SAT Instanz mit Variablenmenge M = {x,, x n } und Klauselmenge K = {c,, c k }. Wir konstruieren nun ein MLP D welches genau dann lösbar ist, wenn (M, K) erfüllbar ist. Wir konstruieren D in zwei Teillabyrinthen. Im ersten Teil wird eine Variablenbelegung "geraten", im zweiten Teil wird überprüft ob diese Variablenbelegung die Klauselmenge K erfüllt. Zunächst führen wir für jede Variable x i V und einen Knoten T i und zusätzlich für jede Klausel c j K oder x i einer Klausel c K die Variablen X i,j und X i,j in V ein. s X, X, X, X, X,k X,k T T n X n, X n, X n,k T n X n, Xn, Xn,k Im ersten Teil muss also ein Pfad von s nach T n gewählt werden. Ein solcher Pfad enthält für jedes i =,, n entweder X i oder X i. Wir stellen uns im folgenden vor dass falls X i,,, X i,ki auf dem Pfad liegt, x i mit 0 belegt ist und falls X i,,, X i,ki auf dem Pfad liegt x i mit belegt ist. Wir konstruieren nun den zweiten Teil des Labyrinths. Für jede Klausel c j = l l l K mit l j,, l j,, l j, {x,, x n, x,, x n } führen wir nun einen zusätzlichen Knoten R j und drei weiteren Knoten L j,, L j,, L j, ein. Wir verbinden alle diese Knoten nun folgendermaßen. ii
L, L, L k, L, L, L k, T n t L, R L, L k, Der Graph ist nun also vollständig, wir müssen lediglich noch die Menge C angeben, d.h. wir müssen jedem L j,m (für j =,, k und m =,, ) einen Partner zuweisen. Ist l j,m = x i, so verpartnern wir L j,m mit X i,j (setzen also (L j,m, X i,j C) ). Ist l j,m = x i, so verpartnern wir L j,m mit X i,j (setzen also (L j,m, X i,j C)). Diese Reduktion benötigt offensichtlich polynomielle Zeit. Weiterhin ist dieses MLP genau dann erfüllbar wenn (M, K) erfüllbar ist. Im ersten Teil der Konstruktion wird für jedes i entweder X i,, X i,k oder X i,, X i,k "gesperrt". Es können also im zweiten Teil des Labyrinths nurnoch die mit den entsprechend anderen Knoten verpartnerten Knoten genommen werden. Damit führt ein Pfad von s nach t zu einer erfüllenden Belegung für (M, K) genauso können wir aus einer erfüllenden Belegung für (M, K) einen Pfad von s nach t konstruieren. Aufgabe (K) (4 Punkte) Zeigen oder widerlegen Sie: Zu jedem Problem Π N P gibt es ein Polynom p, sodass Π durch einen deterministischen Algorithmus mit Zeitkomplexität O( p(n) ) gelöst werden kann. Klar: wenn das Problem Π P, dann gibt es ein Polynom p, sodass ein deterministischer Algorithmus das Problem mit Zeitkomplexität O(p(n)) löst. Für Π N P: Wir benutzen die folgende Sicht auf N P. Gegeben einen Zeugen w, existiert ein Algorithmus A mit Laufzeit p(n) welcher entscheidet, ob (x, w) L. Nun kann man einfach einen deterministischen Algorithmus A angeben, welcher alle möglichen Zeugen w aufzählt und durch A schickt. Falls A akzeptiert, akzeptiert auch A. Da die Größe des Zeugen polynomiell in der Eingabegröße ist, hat dieser Algorithmus eine Laufzeit von O( p (n) p(n)). Den Faktor p(n) können wir mit n abschätzen, sodas wir als Laufzeit O( p (n)+n ) = O( p (n) ) erhalten. iii
Aufgabe (K) (4 Punkte) Gegeben sei der folgende binäre Kanal. Jedes Zeichen wird mit Wahrscheinlichkeit gesendet. 0 α α 0 i.) Es sei α = 0. X sendet 00 an Y. X 0. 0.9 a) Wie groß ist die Wahrscheinlichkeit, dass 00 empfangen wird? (0,5P) b) Wie groß ist der Informationsgehalt der Zeichenfolge 00? (0,5P) ii.) Es sei α = 4. a) Wie groß ist die Entropie von X bzw. Y? (0,5P) b) Wie groß ist die Verbundentropie H(X, Y )? (0,5P) c) Wie groß sind Irrelevanz H(Y X) und Äquivokation H(X Y )? (0,5P) d) Wie groß ist die Transinformation I(X; Y )? (0,5P) iii.) Für welches α ist die Transinformation I(X; Y ) maximal? Begründen Sie Ihre Antwort. (P) i.) a) Pr(00 00) = 0, 0 0, 9 = 0 Y b) I(0) = I() = bit I(00) = 4bit ii.) iv
a) Da beide Zeichen gleich häufig auftreten, gilt H(X) =. Für H(Y ) benötigen wir Jetzt können wir H(Y ) berechnen: Pr(Y = 0) = 4 + Pr(Y = ) = 4 + = 0, 45 0 9 = 0, 575 0 H(Y ) = (0, 45 log 0, 45 + 0, 575 log 0, 575) 0, 987 b) c) d) H(X, Y ) = x {0,} y {0,} (Pr(X = x, Y = y) log Pr(X = x, Y = y)) = ( 8 log 8 + 8 log 8 + 0 log 0 + 9 0 log 9 0 ), 640 H(Y X) = H(X, Y ) H(X) =, 640 = 0, 640 H(X Y ) = H(X, Y ) H(Y ) =, 640 0, 987 = 0, 6564 I(X; Y ) = H(X) H(X Y ) = 0, 6564 = 0, 46 iii.) Für α = 0 wird die Transinformation maximal, da Fehlinformation und Äquivokation minimal werden. Aufgabe 4 (K) (4 Punkte) Wir betrachten einen gezinkten Münzwurf W mit den Wahrscheinlichkeiten Pr(W = Kopf) = 4 und Pr(W = Zahl) = 4. Dieser Münzwurf wird so oft wiederholt, bis der Ausgang Zahl eintritt. Dabei seien die einzelnen Münzwürfe W, W, stochastisch unabhängig, d.h. es gilt Pr( j J W j) = Π j J Pr(W j ). Sei X eine Zufallsvariable, die die Anzahl der Münzwürfe beschreibt, bis der Ausgang Zahl eintritt. i.) Geben Sie die Wahrscheinlichkeitsverteilung P (X = k) in geschlossener Form an. (P) ii.) Berechnen Sie H(X). (P) v
Hinweis. Geben Sie einen ausführlichen Rechenweg an! Verwenden Sie in dieser Aufgabe folgende Eigenschaften geometrischer Reihen: r n = n= nr n = n= r r r ( r) i.) Die Wahrscheinlichkeit, dass nach k Würfen das erste mal Zahl eintritt, liegt bei: Pr(X = k) = Pr(W = Kopf,, W k = Kopf, W k = Zahl) = Pr(W = Kopf) Pr(W k = Kopf) Pr(W k = Zahl) = 4 k 4 = 4 k Dies ist eine Wahrscheinlichkeitsverteilung, denn es gilt: Pr(X = k) = 4 k = 4 k = 4 = ii.) Wir berechnen H(X): H(X) = Pr(X = k) log Pr(X = k) = = 4 k log ( 4 k ) = 6 4 k (log k) k 4 k log 4 k = 6 9 log, 087 Korrekturhinweis: hier muss der Rechenweg klar erkennbar sein, nicht einfach nur das Ergebnis aus dem Taschenrechner aufschreiben. 4 vi