Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S Ac |

Ähnliche Präsentationen


Präsentation zum Thema: "Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S Ac |"—  Präsentation transkript:

1 Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S Ac | Bd A aAb | ab B aBbb | abb Definieren Sie G als ein Quadrupel. Beschreiben Sie L(G). Beispiel 2: Gegeben sei die KFG L = {a n bcd n+1 | n 0} –Geben Sie eine KFG G an, die L erzeugt. –Zeichnen Sie die Ableitungsbäume für a 3 bcd 4 und bcd. Beispiel 3: Sei G eine Grammatik mit den folgenden Regeln: S U | V U TaU | TaT V TbV | TbT T aTbT | bTaT | Beschreiben Sie L(G).

2 Institut für Softwarewissenschaft – Universität WienP.Brezany 2 Beispiel 4: Sei G eine Grammatik mit den folgenden Regeln: S T + S | T - S | T T T * T | T / T | ( S ) | x | y | z Beschreiben Sie L(G). Konstruieren Sie 3 Ableitungsbäume. (Syntaktisch-korrekte infix algebraische Ausdrücke, z.B. (x+y)*x- z*y/(x+x)) Automaten und Reguläre Ausdrücke Beispiel 5: Spezifizieren Sie einen endlichen Automaten, der alle Zeichenketten (Strings, Worte) über dem Binäralphabet 0, 1 akzeptiert, in denen sowohl die Anzahl der Nullen als auch die Anzahl der Einsen gerade ist, zum Beispiel die Zeichenketten, 00, 11, 1010, 0000, , usw.

3 Institut für Softwarewissenschaft – Universität WienP.Brezany 3 Beispiel 6: Gegeben sei die formale Sprache L über dem Alphabet {0,1}, die genau jene Wörter w {0,1} * enthält, in denen drei aufeinanderfolgende Nullen oder Einsen vorkommen, z.B. die Zeichenketten 000, 111, 10001, 0111, 1000, 00001, 01110, , , usw. Spezifizieren Sie einen endlichen Automaten A, der die Sprache L akzeptiert. Beispiel 7: Spezifizieren Sie einen endlichen Automaten, der die Sprache L(A) = {w | w = 01x10, x {0,1} * akzeptiert. Beispiel 8: Spezifizieren Sie einen endlichen Automaten A, der die Sprache L(A) = {w | w = xyxy, x {a,b} * y = cd} akzeptiert.

4 Institut für Softwarewissenschaft – Universität WienP.Brezany 4 Beispiel 9: Sei = {a, b} ein Alphabet und Q = {q 0, q 1 } eine Menge von Zuständen. Weiters sei folgende Übergangsfunktion : Q x (Q) gegeben ( - Potenzmenge) : (q 0, a) = {q 0, q 1 }, (q 0, b) = {q 1 }, (q 1, a) = {q 0, q 1 } –(a) Erklären Sie die Komponenten und die Funktionsweise eines endlichen Automaten anhand des Beispiels. –(b) Ist der obige Automat durch Angabe von, Q und bereits vollständig definiert? Was fehlt? –(c) Wann nennt man einen Automaten deterministisch? –(d) Was ist die von einem Automaten A akzeptierte Sprache? –(e) Erklären Sie den wesentlichen Unterschied regulären und kontextfreien Grammatiken (Sprachen). Beispiel 10: Gegeben sei der EA A = ( {q 0, q 1, q 2 }, {a, b, c},, q 0, {q 0 } ) (q 0, a) = {q 0, q 2 }, (q 0, b) = {q 0, q 1 }, (q 1, c) = {q 0 }, (q 2, b) = {q 1 }, (q 2, c) = {q 0 }. (a) Konstruieren Sie daraus einen äquivalenten deterministischen Automaten. (b) Beschreiben Sie die von A akzeptierte Sprache durch einen regulären Ausdruck.

5 Institut für Softwarewissenschaft – Universität WienP.Brezany 5 Beispiel 11: Gegeben sei die (reguläre) Sprache L über dem Alphabet {a,b,c} durch folgenden regulären Ausdruck R: c + (a+b+c) 3 ac * –(a) Beschreiben Siel L formal durch Angabe einer (regulären) Menge. –(b) Finden Sie einen endlichen Automaten A, der L(G) akzeptiert. –(c) Konstruieren Sie daraus einen äquivalentnen deterministisch. endlichen Automaten A´. –(d) Bestimmen Sie eine reguläre Grammatik G, die L(G) erzeugt. Beispiel 12: Beschreiben Sie die durch folgende reguläre Ausdrücke definierten formalen Sprachen mithilfe von Mengenschreibweise, konstruieren Sie reguläre Grammatiken, die diese Sprachen erzeugen und definieren Sie Automaten, die sie akzeptieren. (1) (ab + bb) * (2) b + + a + + c + (3) (b + a + c) + bc(b + a) * (4) (b + a * ) *

6 Institut für Softwarewissenschaft – Universität WienP.Brezany 6 Beispiel 13 : Konstruieren Sie zu den folgenden Automaten äquivalente deterministische Automaten und beschreiben Sie die von den Automaten akzeptierten Sprachen durch reguläre Grammatiken und reguläre Ausdrücke. –(a) A 1 = ( {q 0, q 1 }, {a, b}, { (q 0, a) = {q 1 }, (q 0, b) = {q 1 }, (q 1, a) = {q 0, q 1 } }, q 0, {q 1 } ) –(b) A 2 = ( {q 0, q 1, q 2, q 3, q 4 }, {a, b, c}, { (q 0, a) = {q 1, q 2 }, (q 1, b) = {q 3 }, (q 2, c) = {q 3 }, (q 3, a) = {q 0, q 4 } }, q 0, {q 3, q 4 } ) - (c) A 3 = ( {q 0, q 1, q 2, q 3 }, {a, b, c}, { (q 0, a) = {q 1 }, (q 1, b) = {q 0, q 2 }, (q 2, c) = {q 0, q 3 } }, q 0, {q 3 } ) Beispiel 14: Gegeben sei die formale Sprache L über dem Alphabet {a,b,c}, die genau jene Wörter w {a, b, c} * enthält, in denen das Teilwort acb nicht vorkommt. –(a) Geben Sie einen EA A an, der L akzeptiert. –(b) Konstruieren Sie (gegebenenfalls) daraus einen äquivalenten determinist. EA A´. –(c) Beschreiben Sie die Sprache L formal (Mengenschreibweise). –(d) Bestimmen Sie eine Grammatik G, die L(G) erzeugt. –(e) Beschreiben Sie L durch einen regulären Ausdruck.

7 Institut für Softwarewissenschaft – Universität WienP.Brezany 7 Beispiel 15: Sei G eine Grammatik mit den folgenden Regeln: S SS | aSb | bSa | Beschreiben Sie L(G). Beispiel 16: Sei G eine Grammatik mit den folgenden Regeln: S aA |, A bS. Beschreiben Sie L(G). Beispiel 17: Sei = {a, b}, Finden Sie eine Grammatik, die die Menge von allen Zeichenketten mir mindestens drei a Symbolen generiert. Beispiel 18: Für folgende Sprachen finden Sie entsprechende Grammatiken, die Sie generieren –(a) L 1 = {a n b m | n 0, m > n } –(b) L 2 = {a n b n-3 | n 3 } Beispiel 19: Sei = {a}. Finden Sie eine Grammatik für die folgende Sprachen: –(a) L 1 = { w | |w| mod 3 = 0 } –(b) L 2 = { w | |w| mod 3 > 0 } Beispiel 20: Sei = {a, b}. Finden Sie eine Grammatik für die folgende Sprache: L = {w | n a (w) = n b (w) + 1}, wo n a (w) bezeichnet die Anzahl von a in w, und n b (w) bezeichnet die Anzahl von b in w

8 Institut für Softwarewissenschaft – Universität WienP.Brezany 8 Beispiel 21 Gegeben: Alphabet = {a,b} und Ausdruck r = (a+b)*b(a+ab)* Zählen Sie die 11 Wörter w mit |w|<4 der Sprache L(r) auf. Beispiel 22 Gegeben: Alphabet = {0,1} und Ausdruck r = ((0+1)(0+1)*)*00(0+1) a) Beschreiben Sie die Sprache L(r) und b) versuchen Sie r einfacher bzw. kürzer anzuschreiben. Beispiel 23 Gegeben: Alphabet = {a,b} und Sprache L = {a n b m : (n+m) ist gerade und (n+m)>0} Finden Sie einen entsprechenden Regulären Ausdruck r.

9 Institut für Softwarewissenschaft – Universität WienP.Brezany 9 Beispiel 24 Gegeben: Alphabet = {a,b} und Sprache L = {a n b m : n4, m4} Finden Sie einen entsprechenden Regulären Ausdruck r. Beispiel 25 Gegeben: Alphabet = {0,1} Finden Sie Reguläre Ausdrücke r für folgende Sprachen L: a) alle Wörter w enthalten eine gerade Anzahl von Nullen. b) alle Wörter w enden mit 01. c) alle Wörter w enden nicht mit 01. Beispiel 26 Gegeben: Alphabet = {a,b} und Sprache L = {a,aa,aaa,…,b,ab,aab,aaab,…} Finden Sie einen entsprechenden Regulären Ausdruck r.


Herunterladen ppt "Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S Ac |"

Ähnliche Präsentationen


Google-Anzeigen