HTWK Leipzig, Fakultät IMN
Prof. Dr. Sibylle Schwarz sibylle.schwarz@htwk-leipzig.de
6. Übung zu Theoretische Informatik: Automaten und formale Sprachen
Wintersemester 2016/17 zu lösen bis 23. November 2016
Aufgabe 6.1:
Gegeben ist der NFA mit ε-Übergängen A= ({a, b},{0,1,2,3,4}, δ,{0},{4}) mit δ(a) ={(0,1),(3,4)},δ(b) ={(1,2),(2,3)} undδ(ε) ={(1,3),(3,1),(4,1)}.
a. Welche Sprache akzeptiert dieser NFA?
b. Konstruieren Sie einen zu Aäquivalenten NFA.
c. Konstruieren Sie einen zu Aäquivalenten DFA.
d. Konstruieren Sie einen NFA, der die SpracheL(A) akzeptiert.
Aufgabe 6.2:
a. Geben Sie ein Verfahren an, wie sich zujedembeliebigen NFAA= (X, Q, δ, I, F)mitI∩F =∅ ein äquivalenter NFA B (d.h. ohne ε-Übergänge) mit genau einem Start- und genau einem akzeptierenden Zustand konstruieren lässt.
b. Konstruieren Sie mit diesem Verfahren 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)} äquivalenten NFA B mit genau einem Start- und genau einem akzeptierenden Zustand.
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 akzeptierenden Zustand? Warum?
Aufgabe 6.3:
In der Vorlesung wurde eine Konstruktion eines NFA für die Sprache L(A) aus einem gegebenen 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 6.4:
a. Geben Sie ein (möglichst einfaches) Verfahren zur Konstruktion eines vollständigen DFA C mitL(C) =L(A)∆L(B)(symmetrische Differenz der SprachenL(A)undL(B)) aus den NFA A undB 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.
Übungsaufgaben, Folien und weitere Hinweise zur Vorlesung finden Sie online unter www.imn.htwk-leipzig.de/~schwarz/lehre/ws16/ti