Hochgeladen von Nutzer11386

INFORMATIK KLausuren

Prof. Dr. Viorica Sofronie-Stokkermans
Dipl.-Inform. Claudia Schon
AG Formale Methoden und Theoretische Informatik
Fachbereich Informatik
Universität Koblenz-Landau
Klausur zur Vorlesung
Grundlagen der Theoretischen Informatik
Sommersemester 2015
UN
G
07.08.2015
...................................................
Vorname:
...................................................
Matrikelnummer:
...................................................
Studiengang:
...................................................
LÖ
S
Name:
US
TE
R
Hinweise
• Legen Sie Ihren Studentenausweis und ein Ausweisdokument mit Lichtbild (Personalausweis, Pass, Führerschein) auf den Tisch.
• Schalten Sie Ihr Handy aus.
• Prüfen Sie Ihr Exemplar der Klausur auf Vollständigkeit (8 Aufgaben).
• Schreiben Sie mit einem dokumentenechten, schwarzen oder blauen Stift.
• Es sind keine Hilfsmittel erlaubt. Weitere leere Blätter sind bei der Aufsicht erhältlich.
Diese sind mit Namen und Matrikelnummer zu beschriften und müssen abgegeben werden.
M
• Heften Sie bei der Abgabe sämtliche Blätter zusammen.
• Blätter, die versehentlich nicht abgegeben wurden, können nicht nachträglich abgegeben
werden.
Viel Erfolg!
Diese Musterlösung erhebt nicht den Anspruch absoluter Korrektheit.
Aufgabe
1
2
3
4
5
6
7
8
Σ
6
6
6
7
4
6
8
7
50
Punkte erreicht
von möglichen
Note: . . . . . . . . . . . . . . . . . . . .
Unterschrift: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufgabe 1
(6 Punkte)
Entscheiden Sie durch Ankreuzen, ob die folgenden Aussagen wahr oder falsch sind.
Punktevergabe: Pro korrektem Kreuz werden 0.5 Punkte vergeben. Pro inkorrektem
Kreuz werden 0.5 Punkte abgezogen. Nicht gesetzte Kreuze verändern die Punktzahl nicht.
Für diese Aufgabe werden insgesamt mindestens 0 Punkte vergeben.
wahr
falsch
unbekannt
Es gibt mehrdeutige kontextfreie Grammatiken, für die es keine
eindeutige kontextfreie Grammatik gibt.
Falls eine Sprache L die Bedingungen aus dem L2 -Pumping
Lemma erfüllt, ist L kontextfrei.
Wenn es für eine Sprache L folgendes gilt:
Es gibt eine Grammatik G in Chomsky Normalform, so dass
L(G) nicht in L1 ist.
Jede kontextsensitive Sprache ist entscheidbar.
Jede Sprache aus L0 ist entscheidbar.
Jede entscheidbare Sprache ist in L0 .
Ist eine Sprache L akzeptierbar und ihr Komplement L nicht
rekursiv aufzählbar, so ist L nicht entscheidbar.
Jedes NP-schweres Problem ist in NP.
NP = P
NP = co-NP
P ist abgeschlossen unter Komplement-Bildung.
Für alle n ∈ N existiert ein z ∈ L mit |z| ≥ n, so
dass es für alle u, v, w, x, y ∈ Σ∗ mit z = uvwxy
und |vx| > 0 und |vwx| < n ein i ∈ N gibt mit
uv i wxi y 6∈ L,
dann ist L nicht kontextfrei.
/6 P
/6 P
1
Aufgabe 2
(6 Punkte)
Entscheiden Sie durch Ankreuzen genau einer der beiden Möglichkeiten (wahr oder falsch),
ob die folgenden Aussagen wahr oder falsch sind. Geben Sie jeweils eine kurze Begründung
für Ihre Antwort. Für jede korrekte Entscheidung erhalten Sie 0.5 Punkte; für eine korrekte
Begründung erhalten Sie einen weiteren Punkt.
Seien L1 und L2 entscheidbare Sprachen. Dann ist auch L1 ∩L2 entscheidbar.
wahr
falsch
Kurze Begründung: Da L2 entscheidbar ist, ist auch L2 entscheidbar.
Die Behauptung folgt aus der Tatsache, dass der
Durchschnitt von entscheidbaren Sprachen entscheidbar
ist.
Jede Sprache, die in P ist, ist entscheidbar.
Kurze Begründung: P ist die Menge aller Probleme, die in von einer DTM
in polynomieller Zeit gelöst werden können.
Daher ist jede Sprache in P entscheidbar.
Es existieren Sprachen L1 , L2 mit L1 L2 und L1 nicht entscheidbar und
L2 ∈ P .
Kurze Begründung: Da L2 ∈ P ist, ist L2 entscheidbar.
Aus L1 L2 und der Untentscheidbarkeit von L1
folgt jedoch, dass L2 unentscheidbar sein muss.
Das ist ein Widerspruch. Also ist die Aussage falsch.
Wenn es ein NP-hartes Problem L mit L ∈ P gibt, dann ist P=NP.
Kurze Begründung: L ist NP-hart. Daher lassen sich alle Probleme aus NP
polynomiell auf L reduzieren. Da L ∈P, gilt dann
für alle L1 ∈ NP auch L1 ∈ P.
/6 P
/6 P
2
Aufgabe 3
(6 Punkte)
Beantworten Sie die folgenden Fragen in nicht mehr als 3 Sätzen.
a) Nennen Sie ein in der Vorlesung besprochenes unentscheidbares Problem und erläutern
Sie es kurz.
Hinweis: Die Unentscheidbarkeit soll nicht begründet werden.
Das spezielle Halteproblem ist die Frage, ob die DTM mit Gödelnummer n bei Eingabe
n hält. Es entspricht der Sprache:
K = {n | die DTM mit Gödelnummer n hält bei Eingabe n}
/2 P
b) Nennen Sie ein in der Vorlesung besprochenes NP-vollständiges Problem und erläutern
Sie es kurz.
Hinweis: Die NP-Vollständigkeit soll nicht begründet werden.
Das Erfüllbarkeitsproblem in für aussagenlogische Formeln ist NP-vollständig. Es entspricht der folgenden Sprache:
SAT = {w | w is eine aussagenlogische Formel, die erfüllbar ist.}
/2 P
c) Erläutern Sie den Unterschied zwischen NP-vollständig und NP-hart.
L ist NP-hart, wenn sich alle Probleme aus NP polynomiell auf L reduzieren lassen. Dabei
ist nicht gefordert, dass L in NP liegt. Liegt L zusätzlich in NP, ist L NP-vollständig.
/2 P
/6 P
3
Aufgabe 4
(7 Punkte)
Zeigen Sie mit dem Pumping Lemma für kontextfreie Sprachen, dass die folgende Sprache nicht
kontextfrei ist:
L = {w1 cw2 | w1 , w2 ∈ {a, b}∗ , w1 ist ein Infix von w2 }1
Hinweis: Verwenden Sie für das Pumping Lemma das Wort z = an bn can bn , wobei n die Zahl
aus dem Pumping Lemma ist.
Annahme L ist kontextfrei. Dann gilt das PL für L2 für diese Sprache. Sei n die PL-Konstante
und z = an bn can bn ein Wort aus L mit |z| > n. Dann muss es eine Zerlegung z = uvwxy mit
|vx| ≥ 1 und |uvx| < n geben für die gilt: uv 1 wxi y ∈ L für alle i ∈ N.
Fall 1. v oder x enthält c: Dann enthält uv 0 wx0 y kein c und liegt daher nicht in L.
Fall 2. |v| =
6 0 und |x| =
6 0:
(a) v and x liegen links von c: uv 2 wx2 y liegt nicht in L, da das Wort w1 links vom c
länger als das Wort w2 rechts vom c ist. Daher ist w1 kein Infix von w2 .
(b) v and x liegen rechts von c: uv 0 wx0 y liegt nicht in L, da das Wort w1 links vom
c länger als das Wort w2 rechts vom c ist. Daher ist w1 kein Infix von w2 .
(c) v liegt links von c und x liegt rechts von c: Wegen |uvx| < n muss v komplett
in bn und x komplett in an liegen. Dann liegt uv 2 wx2 y nicht in L, da es auf der
linken Seite vom c mehr b enthält als auf der rechten Seite vom c.
Fall 3. |v| = 0 oder |x| = 0 (aber nicht beide wegen |vx| ≥ 1): Wenn man v und x so behandelt,
als würden Sie beide links oder beide rechts vom c liegen, kann dieser Fall genauso wie
die Fälle 2. (a) und 2. (b) behandelt werden.
Eine solche Zerlegung kann also nicht existieren. Daher ist L nicht kontextfrei.
/7 P
/7 P
1
Ein Wort u ∈ Σ∗ heißt Infix eines Wortes w ∈ Σ∗ genau dann, wenn es r, s ∈ Σ∗ gibt, mit rus = w.
4
Aufgabe 5
(4 Punkte)
Es sei die folgende Sprache L über dem Alphabet Σ = {a, b, c} gegeben:
L = {w1 cw2 | w1 , w2 ∈ {a, b}∗ , |w1 | = |w2 |}
Zeichnen 2 Sie einen PDA, der L über den leeren Keller akzeptiert. Vervollständigen Sie dazu
den folgenden PDA, indem Sie die Kanten beschriften. Bitte geben Sie auch das von Ihnen
verwendete Stackalphabet an.
Hinweis: Kanten können mit mehr als einem Übergang beschriftet sein.
s0
s1
Stackalphabet Γ = {Z0 , A}
a, Z0 | A
b, Z0 | A
a, A | AA
a, A | ε
b, A | AA
b, A | ε
c, X | X
c, Z0 | ε
s0
/4 P
s1
oder
ε, Z0 | ε
a, X | AX
a, A | ε
b, X | AX
b, A | ε
c, X | X
s0
/4 P
s1
2
Verwenden Sie die aus der Übung bekannte Notation: a, X|Y an einem Übergang bedeutet, dass ein a
gelesen wird und das oberste Stacksymbol X vom Stack genommen wird und dann das Wort Y (über dem
Stackalphabet) auf den Stack gelegt wird.
5
Aufgabe 6
(6 Punkte)
Gegeben sei die Grammatik G = ({S, A, B, C}, {a, b, c}, R, S) mit
R = {S → CB | CS,
A → a | CB | AC,
B → b | AB | BA | CC,
C → c | AA | AC}
Entscheiden Sie mit Hilfe des Cocke-Younger-Kasami-Algorithmus, ob w = ccab ∈ L(G) gilt.
Vervollständigen Sie dazu eine der beiden unten gegebenen Tabellen:
Tabelle nach Priese:
i
j
Da
c
c
a
b
1
2
3
4
c
1
{C}
c
2
{B}
{C}
a
3
{B}
∅
{A}
b
4
{S}
{S, A}
{B}
{B}
S ∈ V1,4 . . . . . . . . . , gilt
w ∈ L(G) . . . .
Tabelle nach Ullmann:
{S}
/6 P Da
{B}
{S, A}
{B}
∅
{B}
{C}
{C}
{A}
{B}
c
c
a
b
S ∈ X14 . . . . . . . . . , gilt
w ∈ L(G) . . . .
/6 P
6
Aufgabe 7
(3+5 = 8 Punkte)
(a) Die DTM M, die auf dem Alphabet Σ = {a, b, c, #} arbeitet, sei durch das folgende
Flussdiagramm gegeben:
M:
σ 6= #
#
> L
L
σ
L
σ 6= #
Geben Sie eine formale Beschreibung der Sprache L an, die M akzeptiert und begründen
Sie Ihre Wahl kurz.
L = {w ∈ Σ∗ |
/3 P
w ∈ {a, b}∗ and ∃n : |w| = 2n . . . . . . . . . . . . . . . . . . . . . . . . . . }
Begründung: Wenn die Länge des Eingabewortes ungerade ist, wechselt die DTM M in
einen Zustand, von dem aus sie nicht in den Haltezustand wechseln kann. Sie kann also
nur halten, wenn die Länge des Eingabewortes gerade ist.
(b) Sei M = ({s0 , s1 , s2 , s3 }, {a, b, c, #}, δ, s0 ) eine Standard-DTM mit δ gegeben durch die
folgende Tabelle:
a
b
c
s0
(s2 , c)
(s2 , a)
s1
(s3 , L)
(s3 , L)
(s3 , L)
s2
(s2 , b)
(s2 , c)
(s2 , a)
s3
(s1 , b)
(s1 , a)
(s1 , c)
#
(s3 , L)
(s2 , R)
(h, #)
Überprüfen Sie, ob M das Wort w = bcba akzeptiert. Vervollständigen Sie dazu die
folgende Rechnung:
s0, #bcba# ` s3, #bcba `
s1, #bcbb ` s3, #bcbb ` s1, #bcab ` s3, #bcab `
s1, #bcab ` s3, #bcab ` s1, #acab ` s3, #acab `
h, #acab
/5 P
/8 P
w ∈ L(M)
M akzeptiert w
ja
nein
7
Aufgabe 8
(7 Punkte)
Geben Sie eine determinierte 2-Band Turingmaschine M in Flussdiagrammschreibweise an, die
von einer Zahl in Binär-Darstellung führende Nullen entfernt. Sie dürfen dabei davon ausgehen,
dass die eingegebene Binärzahl größer als Null ist.
Beispielrechnung:
s, #0010#, # `∗M h, #10#, #
Hinweis: Sie dürfen die Turingmaschinen Mmove1,2 und Mdel benutzen, die für alle w ∈ {0, 1}∗
wie folgt rechnen:
s, #w#, # `∗Mmove
1,2
h, #, #w#
s, #w# `∗Mdel h, #
/7 P
/7 P
Beachten Sie, dass das erste Band komplett leer ist, wenn Mmove1,2 hält. Außerdem dürfen Sie
die aus der Vorlesung bekannten Turingmaschinen R# und L# verwenden.
8