# Übungsblatt 6 > Wenzel Schwan (1125033), Paul Kneidl (1125219), David Schirrmeister (1125746), Michelle Klein (1126422) ## Übung 1 Betrachten Sie folgendes algorithmisches Problem: **Bestimmung des Nerode-Index** - **Eingabe**: ein (vollständiger) NEA $N$ - **Ausgabe**: der Nerode-Index der Sprache $L(N)$ Beschreiben Sie eine algorithmische Lösung dieses Problems (stichpunktartig oder als Pseudocode). Nutzen Sie dazu das in der Vorlesung gesammelte Wissen und begründen Sie damit die Durchführbarkeit und Korrektheit Ihrer Lösung. **Lösung:** - Potenzautomat bilden - DEA minimieren - Zustände zählen ## Übung 2 Betrachten Sie den Automaten $A$ aus Abbildung 1 über dem Alphabet $\Sigma = \{0,1\}$. ![image_864.png](image_864.png) ### 2(a) Wenden Sie das in den Vorlesungsfolien beschriebene Verfahren zur Minimierung des Automaten $A$ an, um die Zustands-Äquivalenzklassen des Automaten $A$ zu bestimmen. Stellen Sie Ihr Vorgehen nachvollziehbar dar (orientieren Sie sich dazu an dem finalen Beispiel des Foliensatzes 4). - Äquivalenzklassen finden - {a,b,c,d,h,f}, {e,g} - Zeuge: ε - {a,c,d,f}, {b,h}, {e,g} - Zeuge: 1 - {a,d,c}, {f}, {b,h}, {e,g} - Zeuge: 01 - {a,c}, {d}, {f}, {b,h}, {e,g} - Zeuge: 11 - {a,c}, {d}, {f}, {b}, {h}, {e,g} - Zeuge: 001 - Zustandsübergänge - $≡_{a,c}$ - 1 → $≡_{d}$ - 0 → $≡_{b}$ - $≡_{d}$ - 0,1 → $≡_{b}$ - $≡_{b}$ - 0 → $≡_{a,c}$ - 1 → $≡_{e,g}$ - $≡_{e,g}$ - 0 → $≡_{f}$ - 1 → $≡_{h}$ - $≡_{h}$ - 0 → $≡_{f}$ - 1 → $≡_{e,g}$ - $≡_{f}$ - 0, 1 → $≡_{f}$ ### 2(b) Konstruieren Sie den Quotientenautomaten zu $A$ mit Hilfe der von Ihnen bestimmten Zustands-Äquivalenzklassen (in der Graphdarstellung). ```plantuml @startuml scale 0.50 left to right direction skinparam dpi 150 skinparam state { BackgroundColor #FFFACD BorderColor black FontName Helvetica RoundCorner 30 Shadowing false LineThickness 0 } state eg##[bold] [*] --> ac ac --> d: 1 ac --> b: 0 d --> b: 0,1 b --> ac: 0 b --> eg: 1 eg --> h: 1 eg --> f: 0 h --> eg: 1 h --> f: 0 f --> f: 0,1 @enduml ``` ### 2(c) Welche Sprache akzeptiert der Automat $A$? ## Übung 3 Betrachten Sie die beiden deterministischen endlichen Automaten $A_1$ und $A_2$ aus Abbildung 2. Lesen Sie Kapitel 2.3.3 über das Äquivalenzproblem für endliche Automaten aus dem Skript. Nutzen Sie das dort beschriebene Vorgehen, um nachvollziehbar zu überprüfen, ob die Automaten $A_1$ und $A_2$ die gleiche Sprache akzeptieren. ![image_865.png](image_865.png) ## Übung 4 ### 4(a) Geben Sie die folgende Grammatik $G_1$ in formaler Tupel-Darstellung an. Leiten Sie außerdem 5 Wörter der Sprache $L(G_1)$ ab und beschreiben Sie anschließend $L(G_1)$ in formaler Mengenschreibweise. Grammatik $G_1$: - $S \Rightarrow aSa\ |\ bSb\ |\ X$ - $X \Rightarrow 0\ |\ 1$ ### 4(b) Geben Sie die folgende Grammatik $G_2$ in formaler Tupel-Darstellung an. Leiten Sie außerdem 5 Wörter der Sprache $L(G_2)$ ab und beschreiben Sie anschließend $L(G_2)$ in formaler Mengenschreibweise. Grammatik $G_2$: - $S \Rightarrow A00A$ - $A \Rightarrow 0A\ |\ 1A\ |\ 0\ |\ 1$ ### 4(c) Geben Sie alle möglichen Ableitungen mit Regeln aus der Grammatik $G_2$ für das Wort $10001$ an. ## Übung 5 Betrachten Sie folgende Grammatik $G$: - $S \Rightarrow x\ |\ yS$ - $xy \Rightarrow yx$ - $yx \Rightarrow xy$ ### 5(a) Können Sie mit $G$ das Wort $xxy$ ableiten? Können Sie mit $G$ das Wort $xyy$ ableiten? Begründen Sie jeweils Ihre Antwort. ### 5(b) Beschreiben Sie die von $G$ erzeugte Sprache in formaler Mengenschreibweise. ### 5(c) Gibt es eine Grammatik $G'$ mit $L(G') = L(G)$, sodass $G'$ weniger als vier Regeln hat?