Zum Inhalt springen

Greibach-Normalform

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 26. März 2005 um 16:43 Uhr durch MKI (Diskussion | Beiträge) (Formale Defninition: TeX: loglike functions). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Formale Defninition

Sei eine kontextfreie Grammatik (vgl. Chomsky-Hierarchie), also . Sei das leere Element .

, mit , ist in Greibach-Normalform (kurz GNF), wenn alle Regeln (= Produktionen) aus die Form mit haben, wobei (Nichtterminale) und (Terminale). Mit ist also eine reguläre Grammatik ein Spezialfall einer kontextfreien Grammatik in Greibach-Normalform.

Für alle mit gibt es ein , mit , in Greibach-Normalform.

Die Greibach-Normalform hat den Vorteil, dass bei jedem Ableitungsschritt jeweils genau ein Terminalzeichen entsteht.

Konstruktion der GNF

Ausgehend von der Ch-Normalform gibt es folgenden Algorithmus zur Überführung einer Grammatik in die Greibach-Normalform:

Einsetzen der Produktionen

Gibt es eine Regel der Form mit , muss sie ersetzt werden ( sei eine beliebige Folge von Nichtterminalen).

Beispiel: mit wird zu .

Diese Ersetzung fangen wir beim höchsten i an und arbeiten uns bis zur 1 nach oben.

Ersetzen von Regeln, die zuerst auf sich selbst ableiten

Gibt es eine Regel der Form , so entferne diese Produktion von und füge sowie für alle anderen eine Regel hinzu.

Ab jetzt gibt es nur noch Regeln der Form .

Entfernen der Regeln, die mit einem Nichtterminal beginnen

Jetzt können wir in allen Regeln, die zuerst auf ein Nichtterminal ableiten, die Produktionen dieses Nichtterminals einsetzen.

Ab jetzt gibt es nur noch Regeln der Form .

Weiter bis Ende

Nun werden die Kontruktionsregeln auf alle Regeln von B analog angewandt.

Siehe auch:

Chomsky-Normalform, Normalform