HTWK Leipzig, Fakultät IMN
Prof. Dr. Sibylle Schwarz sibylle.schwarz@htwk-leipzig.de
5. Übung zu Theoretische Informatik: Automaten und formale Sprachen
Wintersemester 2015/16 zu lösen bis 16. November 2015
Aufgabe 5.1:
Gegeben ist der NFA A = ({a, b},{0,1,2}, δ,{0},{2}) mit δ(a) = {(0,0),(0,2)} und δ(b) = {(0,0),(0,1),(1,2),(2,0)}.
a. Zeichnen Sie den NFA Aals Graphen.
b. Stellen Sie fest, ob der NFA Avollständig ist. Begründen Sie Ihre Antwort.
c. Stellen Sie fest, ob der NFA Adeterministisch ist. Begründen Sie Ihre Antwort.
d. Stellen Sie für die folgenden Wörter fest, ob der NFA A das Wort akzeptiert. Geben Sie für die aktzeptierten Wörter je einen akzeptierenden Pfad an.
ε, a, b, aa, ab, ba, bb, abb, bba, bab, ababbbaba, bbbbab
e. Welche Sprache akzeptiert dieser NFA?
Aufgabe 5.2:
a. Zeigen Sie, dass jede endliche Sprache NFA-akzeptierbar ist.
b. Finden Sie einen NFA, der genau die (endliche) Sprache von Palindromen L={wwR|w∈ {a, b}∗∧ |w|<3} akzeptiert.
Aufgabe 5.3:
a. Konstruieren Sie einen zum NFA A= ({a, b},{0,1,2,3},{0,1},{3,2}) mit
δ(a) = {(0,1),(0,2),(0,0)} und δ(b) = {(0,3),(1,3),(2,2)} einen NFA B mit genau einem Start- und genau einem akzeptierenden Zustand, so dassL(A) =L(B) gilt.
b. Konstruieren Sie zu jedem beliebigen NFA A = (X, Q, δ, I, F) mit I ∩F = ∅ einen NFA B mit genau einem Start- und genau einem akzeptierenden Zustand, so dassL(A) =L(B) gilt.
c. Existiert auch zu jedem NFAA= (X, Q, δ, I, F) mitI∩F 6=∅ ein NFAB mit L(A) =L(B) und genau einem Start- und genau einem Endzustand? Warum?
Aufgabe 5.4:
a. Zeigen Sie, dass isomorphe NFA äquivalent sind.
b. Geben Sie zwei äquivalente NFA an, die nicht isomorph sind.
Aufgabe 5.5:
a. Finden Sie mit Hilfe der Potenzmengenkonstruktion einen DFAB, der zum
NFA A = ({a, b},{0,1,2}, δ,{0,1},{2}) mit δ(a) = {(0,0)} und δ(b) = {(0,0),(0,1),(1,2)}
äquivalent ist.
b. Geben Sie einen zu A äquivalenten NFAC an, der genauso viele Zustände wie A hat, aber weder zuA noch zuB isomorph ist.
c. Gibt es einen zuA äquivalenten NFA, der weniger Zustände alsA hat? Warum?
Aufgabe 5.6:
Zeigen Sie, dass für jede NFA-akzeptierbare Sprache Lauch die Sprache LR NFA-akzeptierbar ist.
Aufgabe 5.7:
In der Vorlesung wurde eine Konstruktion eines NFA für die SpracheL(A)aus einem eingegebenen vollständigen DFAA vorgestellt.
Zeigen Sie, dass der AutomatAbeide Bedingungen (vollständig und deterministisch) erfüllen muss, damit die vorgestellte Konstruktion zu einem korrekten Ergebnis führt.
Hinweis: Man kann das durch Angabe zweier Automaten als Gegenbeispiele zeigen:
a. ein vollständiger, aber nicht deterministischer NFA A, für den die Konstruktion zu einem AutomatenB mit L(B)6=L(A)führt.
b. ein deterministischer, aber nicht vollständiger NFA A, für den die Konstruktion zu einem AutomatenB mit L(B)6=L(A)führt.
Aufgabe 5.8:
Die symmetrische Differenz∆zweier MengenX, Y enthält alle Elemente, dieentweder Element der MengeX oder Element der MengeY sind, ist also definiert durch
X∆Y = (X∪Y)\(X∩Y) = (X\Y)∪(Y \X)
a. Geben Sie ein möglichst einfaches Verfahren zur Konstruktion eines vollständigen DFAC mit L(C) =L(A)∆L(B) aus NFAA und B an.
b. Demonstrieren Sie Ihr Verfahren an den NFA
A= ({a, b},{0,1}, δA,{0},{1}) mit δA(a) ={(0,1),(1,0)} undδA(b) ={(0,0),(1,1)}
undB = ({a, b},{0,1,2}, δB,{0},{1}) mit δB(a) ={(0,2),(1,0),(2,1)}und δB(b) ={(0,1),(1,2),(2,0)}.
Geben Sie auch die SprachenL(A),L(B) undL(A)∆L(B)an.
Aufgabe 5.9:
Wir betrachten die SprachenLn={w∈ {a, b}∗ |w|w|−n=a}.
(Ln ist also die Menge aller Wörter in {a, b}∗ mit mindestens n+ 1 Symbolen, in denen an Stelle n+ 1von rechts eina steht.)
Beispiele:aba∈L0, a∈L0, ab6∈L0, bab∈L1, a6∈L1, ba6∈L1, abb∈L2, a6∈L2, baa6∈L2
a. Geben Sie einen NFA mit möglichst wenigen Zuständen an, der die SpracheL0 akzeptiert.
b. Geben Sie einen vollständigen DFA an, der die Sprache L0 akzeptiert.
c. Warum gibt es keinen vollständigen DFA mit weniger als 2 Zuständen, der die Sprache L0
akzeptiert?
d. Geben Sie einen NFA mit möglichst wenigen Zuständen an, der die Sprache L2 akzeptiert.
e. Geben Sie einen vollständigen DFA an, der die Sprache L2 akzeptiert.
f. Warum gibt es keinen vollständigen DFA mit weniger als 8 Zuständen, der die Sprache L2 akzeptiert?
g. Warum gibt es keinen vollständigen DFA mit weniger als2n+1 Zuständen, der die SpracheLn akzeptiert?
Übungsaufgaben, Folien und weitere Hinweise zur Vorlesung finden Sie online unter www.imn.htwk-leipzig.de/~schwarz/lehre/ws15/ti