Ich habe versucht, und mein Gehirn verbrannt, um die Definition von Regular Languages in Discrete Mathematics and its Applications(Rosen) zu verstehen, ohne das Ziel zu erreichen zu verstehen, warum die Definition so ist, dass in diesem Buch. Auf Seite (789), ich bin die Definition Umformulierung:Die Definition regulärer Sprachen
Typ 3 Grammatiken definiert werden als:
w1 --> w2
Wo w1 ein Nicht-Terminal ist, und w2 ist von der Form:
w2 = aB
w2 = a
wobei B ein nicht-Terminal ist, und a ist ein Terminal. Ein Sonderfall ist, wenn w1 das Startsymbol und w2 ist Lambda (leerer String):
w1 = S
S --> lambda
Zwei Fragen, die ich konnte keine Antwort finden. Erstens, warum kann nicht w2 von der Form sein Ba. Zweitens, warum Lambda ist nur für das Startsymbol nur zulässig. Das Buch besagt, dass reguläre Sprachen dem Finite-State-Automaten entsprechen, und wir können leicht erkennen, dass wir FSA für beide Fälle erstellen können. Ich habe mir andere Ressourcen angeschaut, und diese Einschränkungen existieren in diesen Ressourcen nicht.
Haben Sie überprüft, ob das Buch irgendwelche Errata hat? –
@David M Nein, das habe ich nicht gemacht, aber ich werde es jetzt tun.Interessanterweise werden auf Seite (795) Übung # 19 (i, j) genau nach dieser Definition gelöst. – AraK
Ich habe gerade die Errata der 6. Ausgabe überprüft. und ohne etwas zu finden: http: //highered.mcgraw-hill.com/sites/dl/free/0072880082/299357/Rosen_errata.pdf – AraK