Formale Grammatik |
|
Hallo,
bin gerade vor einem Übungszettel, wo ich einen Parse-Tree aufstellen soll. Leider hab ich noch ziemlich wenig Plan davon, wie ich das angehen soll. Also die Angabe lautet so:
Man soll zeigen, dass die folgende Grammatik mehrdeutig ist:
Startsymbol S
S -> S + S
S -> S - S
S -> num
Also mal die erste Frage: Was hat das zu bedeuten, wenn +, - und num unterstrichen ist? Hat das eine besondere Bedeutung???? Wenn ich dann S ableite, wirds ja zu S+S, S-S und num. Wie gehts dann weiter wird dann S+S zu 2 * (S+S, S-S und num) usw.??
Bitte um Hilfe!
Danke & LG
|
|
06.04.2008 00:27 |
|
|
Crotaphytus
Mitglied
Dabei seit: 18.09.2006
Beiträge: 45
|
|
Für gewöhnlich nutzt man diese Unterstreichen-Syntax, um zu kennzeichnen, welche Symbole zur Sprache gehören und was zur Beschreibung der Grammatik dient. Häufiger mal dient das + ja zur Kennzeichnung eines Zeichens, das mindestens einmal wiederholt wird. Das muss man vom + der Addition unterscheiden.
Ansonsten... Was genau verstehst du unter mehrdeutig?
Bei der Ableitung darfst du für jedes S eine der drei Regeln einsetzen. Da ich annehme, dass num für beliebige Zahlen steht, geht zum Beispiel so was:
S -> S + S -> S - S + S -> 5 - S + S -> 5 - 3 + S -> 5 - 3 + S - S -> 5 - 3 + 1 - S -> 5 - 3 + 1 - 0
Also stumpfes Ersetzen.
__________________ Das ist keine Signatur.
|
|
06.04.2008 18:25 |
|
|
|
Hi,
danke für deine Hilfe. Also die Angabe lautet so: Zeigen Sie mit Hilfe von Parse-Trees, dass die folgende Grammatik (Startsymbol S) mehrdeutig ist.
Deine Ableitung kann ich nach vollziehen, aber ganz eine blöde Frage noch; was fang ich jetzt mit 5-3+1-0 an?
Danke & Lg
|
|
06.04.2008 20:40 |
|
|
ed209
Routinier
Dabei seit: 07.09.2006
Beiträge: 324
|
|
Weißt Du, was ein Parse Tree ist? Und wie zum Beispiel ein Parse Tree von 5-3+1-0 aussehen könnte?
Eindeutig heisst wohl in diesem Zusammenhang, daß es zu einem String immer nur einen Parse Tree gibt.
Wie kann man das widerlegen?
Gruß,
ED
|
|
07.04.2008 16:52 |
|
|
|