|
|
|
WS 98/99 |
|
|
Aufgabe 1 (3 + 2 + 2 + 2 Punkte)
Gegeben sei die Grammatik G mit dem Startsymbol S', den weiteren Nichtterminalen E, T und F, den Terminalen +, *, v, ( und ) und den Produktionen
S' -> E E -> E+T | T T -> T*F | F F -> (E) | v
- Bestimmen Sie den LR(0)-Automaten zu G. Ist G LR(0)?
- Zeigen Sie, daß G SLR(1) ist.
- Geben Sie die Aktions- und goto-Tabellen für den SLR(1)-Parser an.
- Bestimmen Sie die Aktions- und goto-Tabellen für den LALR(1)-Parser.
Aufgabe 2 (3 + 2 Punkte)
Gegeben sei die folgende Grammatik G mit dem Startsymbol S', den weiteren Nichtterminalen A und B, den Terminalen a, b, c und d und den Produktionen
S' -> A A -> a B | a B c B -> b | d A
- Weisen Sie mit Hilfe des kanonischen LR(1)-Verfahrens nach, daß G nicht LR(1) ist. Der LR(1)-Automat braucht nur so lange konstruiert werden, bis ein Konflikt offenbar wird.
- Zeigen Sie, wie G die LR(1)-Eigenschaft (laut Definition in der Vorlesung) verletzt. D.h. geben Sie eine Situation bestehend aus zwei Rechtsableitungen an, bei der ein lookahead von 1 den "Griff" (handle) nicht eindeutig festlegt.