Skriptes - Uni Bremen - Universität Bremen
Skriptes - Uni Bremen - Universität Bremen
Skriptes - Uni Bremen - Universität Bremen
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Normalformen und Entscheidungsprobleme<br />
8. Normalformen und Entscheidungsprobleme<br />
Es existieren verschiedene Normalformen für kontextfreie Grammatiken, bei denen die<br />
syntaktische Form der Regeln weiter eingeschränkt wird, ohne dass die Klasse der erzeugten<br />
Sprachen sich ändert. Wir werden insbesondere die Chomsky Normalform kennenlernen<br />
und sie verwenden, um einen effizienten Algorithmus für das Wortproblem für<br />
kontextfreie Sprachen zu entwickeln. Zudem ist jede kontextfreie Grammatik in Chomsky<br />
Normalform auch eine Typ-1 Grammatik, was die noch ausstehende Inklusion L 2 ⊆ L 1<br />
zeigt. Wir werden auch das Leerheitsproblem und das Äquivalenzproblem diskutieren.<br />
Zwei Grammatiken heißen äquivalent, falls sie dieselbe Sprache erzeugen.<br />
Zunächst zeigen wir, wie man „überflüssige“ Symbole aus kontextfreien Grammatiken<br />
eliminieren kann. Das ist zum späteren Herstellen der Chomsky-Normalform nicht unbedingt<br />
notwendig, es ist aber trotzdem ein natürlicher erster Schritt zum Vereinfachen<br />
einer Grammatik.<br />
Definition 8.1 (terminierende, erreichbare Symbole; reduzierte Grammatik)<br />
Es sei G = (N,Σ,P,S) eine kontextfreie Grammatik.<br />
1) A ∈ N heißt terminierend, falls es ein w ∈ Σ ∗ gibt mit A ⊢ ∗ G w.<br />
2) A ∈ N heißt erreichbar, falls es u,v ∈ (Σ∪N) ∗ gibt mit S ⊢ ∗ G uAv.<br />
3) G heißt reduziert, falls alle Elemente von N erreichbar und terminierend sind.<br />
Die folgenden zwei Lemmata bilden die Grundlage zum wandeln einer kontextfreien<br />
Grammatik in eine reduzierte Kontextfreie Grammatik.<br />
Lemma 8.2<br />
Für jede kontextfreie Grammatik G = (N,Σ,P,S) kann man die Menge der terminierenden<br />
Symbole berechnen.<br />
Beweis. Wir definieren dazu<br />
T 1 := {A ∈ N | ∃w ∈ Σ ∗ : A −→ w ∈ P}<br />
T i+1 := T i ∪{A ∈ N | ∃w ∈ (Σ∪T i ) ∗ : A −→ w ∈ P}<br />
Es gilt<br />
T 1 ⊆ T 2 ⊆ ··· ⊆ N.<br />
Da N endlich ist, gibt es ein k mit T k = T k+1 = ⋃ T i .<br />
Behauptung:<br />
T k = {A ∈ N | A ist terminierend}, denn:<br />
„⊆“: Zeige durch Induktion über i: alle Elemente von T i , i ≥ 1, terminierend:<br />
i≥1<br />
61