Grammatik Ableitungsschritte
Minimale Ableitungslänge in Chomsky-Normalform für ein Wort der Länge n: MinSchritte = 2·n − 1.
Grammatik Ableitungsschritte berechnen
Minimale Ableitungslänge in Chomsky-Normalform für ein Wort der Länge n: MinSchritte = 2·n − 1.
- MinSchritte — Min. Ableitungsschritte
- Wortlänge — Wortlänge
Worum geht es?
Eine kontextfreie Grammatik in Chomsky-Normalform (CNF) erlaubt nur Produktionen der Gestalt A → BC oder A → a. Jede binäre Regel erzeugt aus einem Nichtterminal zwei Symbole — dadurch verdoppelt sich die Länge der Satzform schrittweise, bis n Terminale erreicht sind.
Für ein Wort der Länge n benötigt man dadurch genau n − 1 binäre Produktionen und n terminale Produktionen, also 2·n − 1 Ableitungsschritte. Das ist die Tiefenformel des CYK-Parsers und der Grund, warum der CYK-Algorithmus mit O(n³·|G|) skaliert.
Die Formel
MinSchritte = 2 · Wortlänge - 1
Umstellung:
Wortlänge = (MinSchritte + 1) / 2Die Variablen
| Symbol | Bedeutung | Einheit | Erklärung |
|---|---|---|---|
| Wortlänge | Wortlänge | — | Länge des abzuleitenden Worts (n ≥ 1). |
| MinSchritte | Min. Ableitungsschritte | — | Minimale Ableitungsschritte in CNF. |
Minimal-Beispiel
Ein Wort der Länge 4:
MinSchritte = 2 · 4 - 1
= 7Praxis-Beispiele
Beispiel 1 — Quelltext-Token-Stream
Ein Parser leitet eine Statement-Folge mit n = 50 Tokens in CNF ab:
MinSchritte = 2 · 50 - 1
= 99Beispiel 2 — Wortlänge aus Ableitungstiefe
Ein Trace zeigt 41 Ableitungsschritte:
Wortlänge = (41 + 1) / 2
= 21Beispiel 3 — Untergrenze für CYK
Ein Wort der Länge n = 200:
MinSchritte = 2 · 200 - 1
= 399 Schritte