10.07.2015 Aufrufe

Einführung in die Theoretische Informatik - Technische Universität ...

Einführung in die Theoretische Informatik - Technische Universität ...

Einführung in die Theoretische Informatik - Technische Universität ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Technische</strong> Universität MünchenFakultät für <strong>Informatik</strong>Lehrstuhl <strong>Informatik</strong> IIProf. Dr. Helmut SeidlDr. Werner MeixnerSommersemester 2013Übungsblatt 329. April 2013E<strong>in</strong>führung <strong>in</strong> <strong>die</strong> <strong>Theoretische</strong> <strong>Informatik</strong>Abgabeterm<strong>in</strong>: 6. Mai, 13 Uhr <strong>in</strong> <strong>die</strong> THEO BriefkästenHausaufgabe 1 (3 Punkte)Wir betrachten e<strong>in</strong>en nichtdeterm<strong>in</strong>istischen Automat A = (Q, Σ, δ, q 0 , F ), der durch <strong>die</strong>folgende Grafik gegeben ist.1q 0 q 1 q 20,10, 11. Geben Sie e<strong>in</strong>en regulären Ausdruck R an, dessen Sprache von A akzeptiert wird.2. Bestimmen Sie δ({q 0 , q 1 }, 1) und δ({q 1 }, 1) !3. Geben Sie den zu A äquivalenten DFA A ′ = (P(Q), Σ, δ, {q 0 }, F ) <strong>in</strong> extensionalerMengenschreibweise an! Welche Zustände von A ′ können entfernt werden, ohne dass<strong>die</strong> akzeptierte Sprache geändert wird!Hausaufgabe 2 (3 Punkte)Sei Σ = {0, 1, 2, 3} <strong>die</strong> Zeichenmenge der Ziffern von 0 bis 3. Sei Q <strong>die</strong> Sprache der Zahldarstellungenzur Basis 4 ohne führende Nullen. (Beispiel: 0 ∈ Q, 2013 ∈ Q, 02013 ∉ Q. Esgilt # 4 2013 = 2 · 4 3 + 4 1 + 3 · 4 0 = # 10 135.)Sei L = {w ∈ Q | #w mod 3 = 2} .1. Konstruieren Sie e<strong>in</strong>en determ<strong>in</strong>istischen endlichen Automat A, der L akzeptiert.2. Beweisen Sie, dass A <strong>die</strong> Sprache L akzeptiert.Hausaufgabe 3 (3 Punkte)Sei M = (Q, Σ, δ, q 0 , F ) e<strong>in</strong> DFA mit e<strong>in</strong>er Anzahl n von Zuständen. Zeigen Sie:1. Sei w = w 1 w 2 . . . w 2n ∈ Σ ∗ mit |w i | = 1 e<strong>in</strong> Wort der Länge 2n und sei q 0 , q 1 , . . . , q 2n<strong>die</strong> Folge der Zustände, <strong>die</strong> M ausgehend von q 0 bei E<strong>in</strong>gabe von w annimmt. Danngibt es k, l mit k < l, so dass q k = q l .2. Falls es e<strong>in</strong> Wort w der Länge 2n gibt mit w ∈ L(M), dann gibt es unendlich vieleWörter, <strong>die</strong> der Automat M akzeptiert.


Hausaufgabe 4 (3 Punkte)Wir betrachten das folgende e<strong>in</strong>fache Modell e<strong>in</strong>es Aufzugs <strong>in</strong> e<strong>in</strong>em Gebäude mit 3 Stockwerken,nummeriert mit 0, 1, 2. Der Aufzug kann folgende Aktionen durchführen:(o) Tür öffnen (open)(c) Tür schließen (close)(u) E<strong>in</strong> Stockwerk nach oben fahren (up)(d) E<strong>in</strong> Stockwerk nach unten fahren (down)Dabei gelten <strong>die</strong> E<strong>in</strong>schränkungen, dass der Aufzug niemals mit offener Tür fährt, undnatürlich auch nicht <strong>in</strong> Stockwerke fährt, <strong>die</strong> nicht existieren.1. Modellieren Sie den Aufzug als NFA N über Σ = {o, c, u, d}, so dass L(N) genau<strong>die</strong> Wörter enthält, <strong>die</strong> e<strong>in</strong>e zulässige Aktionsfolge des Aufzugs darstellen.2. Beschreiben Sie <strong>die</strong> notwendigen Änderungen, um das Modell N <strong>in</strong> e<strong>in</strong>en DFA umzuwandeln!Hausaufgabe 5 (4 Punkte)Das Reißverschlussprodukt von zwei Sprachen L 1 und L 2 ist wie folgt def<strong>in</strong>iert:L 1 % L 2 = {a 1 b 1 a 2 b 2 . . . a n b n | a i ∈ Σ, b i ∈ Σ, a 1 . . . a n ∈ L 1 , b 1 . . . b n ∈ L 2 }1. Geben Sie e<strong>in</strong>en regulären Ausdruck an, der L(aba ∗ ) % L(bc ∗ ) beschreibt.2. Vergleichen Sie dass Reißverschlussprodukt mit dem Shuffle-Produkt aus TA3 vonBlatt 2, und f<strong>in</strong>den Sie zwei Sprachen A und B und e<strong>in</strong> Wort, das <strong>in</strong> (A ‖ B), abernicht <strong>in</strong> A % B liegt.3. Zeigen Sie durch e<strong>in</strong>e geeignete Automatenkonstruktion: Wenn L 1 und L 2 regulärs<strong>in</strong>d, dann ist auch L 1 % L 2 regulär.Beschreiben Sie ihre Konstruktion zunächst <strong>in</strong>formell.Hausaufgabe 6 (4 Punkte)Wir bezeichnen <strong>die</strong> Menge der regulären Ausdrücke über e<strong>in</strong>em Alphabet Σ mit RE Σ .1. Def<strong>in</strong>ieren Sie e<strong>in</strong>e rekursive Funktion eps : RE Σ → {true, false}, so dass gilteps(α) ⇐⇒ L(α) = {ɛ} .Dafür dürfen Sie e<strong>in</strong>e Funktion empty : RE Σ → {true, false} annehmen, für <strong>die</strong> giltempty(α) ⇐⇒ L(α) = ∅ .Zeigen Sie mit struktureller Induktion, dass Ihre Funktion tatsächlich <strong>die</strong> geforderteEigenschaft hat.2. Sei a ∈ Σ. Def<strong>in</strong>ieren Sie e<strong>in</strong>e Funktion f<strong>in</strong>ite : RE Σ → {true, false}, <strong>die</strong> entscheidet,ob e<strong>in</strong> regulärer Ausdruck e<strong>in</strong>e endliche Sprache beschreibt, alsof<strong>in</strong>ite(α) ⇐⇒ |L(α)| < ∞ .2


Zusatzaufgabe 1 (Für Interessierte, ohne Abgabe)E<strong>in</strong> ∀-NFA (“all-NFA”) ist wie e<strong>in</strong> NFA als 5-Tupel N = (Q, Σ, δ, q 0 , F ) def<strong>in</strong>iert. Allerd<strong>in</strong>gsist <strong>die</strong> akzeptierte Sprache anders def<strong>in</strong>iert:L ∀ (N) = {w ∈ Σ ∗ | ˆ¯δ({q0 }, w) ⊆ F }1. Sei Σ = {a, b, c}. Konstruieren Sie e<strong>in</strong>en ∀-NFA N, so dass L ∀ (N) genau <strong>die</strong> Mengealler Wörter aus Σ ∗ ist, <strong>die</strong> weder e<strong>in</strong> c noch das Teilwort baba enthalten.2. Zeigen Sie, dass man aus jedem ∀-NFA N e<strong>in</strong>en NFA N ′ konstruieren kann, so dassL(N ′ ) = Σ ∗ \ L ∀ (N).Vorgehensweise: Beschreiben Sie <strong>die</strong> Konstruktion zunächst <strong>in</strong>formell, dann formalals Tupel, und beweisen Sie dann <strong>die</strong> Korrektheit Ihrer Konstruktion.3. Modifizieren Sie <strong>die</strong> Potenzmengenkonstruktion geeignet, so dass man damit e<strong>in</strong>en∀-NFA <strong>in</strong> e<strong>in</strong>en äquivalenten DFA umwandeln kann.3


H<strong>in</strong>weis: Auf den Übungsblättern <strong>in</strong> <strong>die</strong>sem Semester wird es grundsätzlich <strong>die</strong> drei AufgabentypenVorbereitungsaufgabe, Tutoraufgabe und Hausaufgabe geben. Die als Vorbereitungbezeichneten Aufgaben <strong>die</strong>nen der häuslichen Vorbereitung der Tutoraufgaben. Tutoraufgabenwerden <strong>in</strong> den Übungsgruppen bearbeitet. Dabei wird <strong>die</strong> Lösung der Vorbereitungsaufgabenvorausgesetzt und entsprechend abgefragt werden. Ab Blatt 2 werden zusätzlich Hausaufgabengestellt, <strong>die</strong> selbstständig bearbeitet und zur Korrektur und Bewertung abgegeben werden sollen.Vorbereitung 1Beantworten Sie kurz <strong>die</strong> folgenden Fragen:1. Wenn L regulär ist und L ′ ⊆ L gilt, ist dann auch L ′ regulär?2. Ist <strong>die</strong> Sprache L = {a n b m | n + m gerade} regulär? Läßt sich das mit dem Pump<strong>in</strong>g-Lemmazeigen?Vorbereitung 2In e<strong>in</strong>em Tresor liegt e<strong>in</strong>e Liste mit 6-stelligen TAN-Nummern. Der Schlüssel zum Öffnen des Tresors istverloren gegangen und es gibt ke<strong>in</strong>e andere Möglichkeit, den Tresor zu öffnen.Sei A <strong>die</strong> Menge der Primzahlen, <strong>die</strong> auf der TAN-Liste vorkommen.Ist A ⊆ N entscheidbar? Begründung!Vorbereitung 31. Seien A, B und X Sprachen über Σ mit ɛ /∈ A. Beweisen oder widerlegen Sie <strong>die</strong> Umkehrung vonArden’s Lemma, d.h. X = A ∗ B =⇒ X = AX ∪ B.2. Seien A, B ⊆ Σ ∗ mit ɛ ∉ A. Dann ist <strong>die</strong> Lösung X der Gleichung X = AX ∪ B e<strong>in</strong>e reguläreMenge. Wahr oder falsch? Beweis!Tutoraufgabe 1 (Entscheidungsverfahren bei Automaten)F<strong>in</strong>den Sie e<strong>in</strong> Verfahren, welches für e<strong>in</strong>en gegebenen NFA M entscheidet, ob|L(M)| ≤ 100 gilt.Tutoraufgabe 2 (Pump<strong>in</strong>g-Lemma für reguläre Sprachen)1. Sei Σ = {a, b, c, d, e}.Zeigen Sie, dass <strong>die</strong> Sprache L = {ab 2i cd i e | i ∈ N} nicht regulär ist.2. Sei Σ = {1}. Zeigen Sie, dass <strong>die</strong> Sprache P = {1 p | p prim} nicht regulär ist.Tutoraufgabe 3 (Angabe bzw. Konstruktion regulärer Ausdrücke)1. Sei L 1 = {a m b n | (m + n) mod 2 = 1}. Geben Sie e<strong>in</strong>en regulären Ausdruck α an,so dass L 1 = L(α) gilt.2. Wir betrachten den DFA A = (Q, Σ, δ, q 0 , {q 1 , q 2 }), dessen Zustandsübergangsfunktionδ gegeben ist durchq i δ(q i , 0) δ(q i , 1)q 0 q 1 q 2q 1 q 0 q 1q 2 q 1 q 0Stellen Sie zur Berechnung der Sprachen L i = {w ∈ Σ ∗ | ˆδ(q i , w) ∈ {q 1 , q 2 }} e<strong>in</strong>Gleichungssystem mit entsprechenden Unbekannten X i für <strong>die</strong> Sprachen L i auf undberechnen Sie mit Hilfe von Ardens Lemma alle X i als reguläre Ausdrücke.4

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!