24. Kontextfreie Sprachen

Ähnliche Dokumente
16. Die Chomsky-Hierarchie

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN

Grundlagen der Theoretischen Informatik

Theoretische Grundlagen der Informatik

Grundlagen der Theoretischen Informatik

I.5. Kontextfreie Sprachen

Pumping-Lemma. Beispiel. Betrachte die kontextsensitive Grammatik G mit den Produktionen. S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc.

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 7

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Theoretische Grundlagen der Informatik

Normalformen für kontextfreie Grammatiken. Noam CHOMSKY, Sheila GREIBACH. Bäume. Ableitungen in kontextfreien Grammatiken. Grammatik G = (N,T,P,S)

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Nachklausur zur Vorlesung Einführung in die Theoretische Informatik

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Kontextfreie Sprachen

Kontextfreie Sprachen

Mathematik I. Vorlesung 11. Lineare Unabhängigkeit

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Einführung in die Logik

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Theoretische Grundlagen der Informatik

Musterlösung Informatik-III-Klausur

Klammersprache Definiere

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

Tutoraufgabe 1 (ɛ-produktionen):

4.2 Die Chomsky Normalform

Informales Beispiel. Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen. Grammatiken. Anmerkungen

Automaten und Formale Sprachen SoSe 2013 in Trier

Theoretische Informatik Mitschrift

Kapitel 1.5 und 1.6. Ein adäquater Kalkül der Aussagenlogik

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

Formale Grundlagen der Informatik

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!

3.2 Unabhängigkeitsstrukturen

Grundlagen der Theoretischen Informatik

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

Grundlagen der Theoretischen Informatik

Kapitel 1.5. Ein adäquater Kalkül der Aussagenlogik. Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls

5.7 Kontextfreie Grammatiken und Kellerautomaten

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

q 0 q gdw. nicht (q A) (q A) q i+1 q gdw. q i q oder ( a Σ) δ(q, a) i δ(q, a) L = {a n b n : n N} für a, b Σ, a b

Formale Sprachen. Grammatiken. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marion OSWALD. Grammatiken: Ableitung

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Algorithmen und Datenstrukturen (EI)

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

(Prüfungs-)Aufgaben zu formale Sprachen

TU Berlin Nachklausur TheGI 2 Automaten und Komplexität (Niedermeier/Hartung/Nichterlein, Sommersemester 2012)

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Das Pumping-Lemma Formulierung

Deterministischer Kellerautomat (DPDA)

2. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

FORMALE SYSTEME. 10. Vorlesung: Grenzen regulärer Sprachen / Probleme für Automaten. TU Dresden, 14. November 2016.

Freie Bäume und Wälder

Klausur SoSe Juli 2013

Theorie der Informatik

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

Das Pumping Lemma der regulären Sprachen

Zusammenfassung. Beispiel. 1 Wir betrachten die folgende Signatur F = {,, +, 0, 1} sodass. 3 Wir betrachten die Identitäten E. 4 Dann gilt E 1 + x = 1

2.11 Kontextfreie Grammatiken und Parsebäume

Zentralübung zur Vorlesung Theoretische Informatik

Chomsky-Grammatiken 16. Chomsky-Grammatiken

17. KONTEXTSENSITIVE SPRACHEN

Ausgewählte unentscheidbare Sprachen

Die mathematische Seite

Programmiersprachen und Übersetzer

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Definition 98 Eine Turingmaschine heißt linear beschränkt (kurz: LBA), falls für alle q Q gilt:

Theoretische Informatik Mitschrift

Grammatiken. Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen

Automaten und Formale Sprachen SoSe 2013 in Trier

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Reduktion. 2.1 Abstrakte Reduktion

Grundlagen der Theoretischen Informatik

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Übung zur Vorlesung Grundlagen der theoretischen Informatik. Aufgabenblatt 7 Lösungen. Wiederholung: Pumping-Lemma für kontextfreie Sprachen

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Prof. Dr. H. Brenner Osnabrück SS Zahlentheorie. Vorlesung 3. Der euklidische Algorithmus

Seminar: Algorithmisches in der Geometrie Ausarbeitung zu Vortrag 9. Triangulierungen im Cayley-Graph und Enden von kontextfreien Gruppen

Grundlagen der theoretischen Informatik

Grenzen der Regularität

13 Auswahlaxiom und Zornsches Lemma

Grundlagen der Theoretischen Informatik

Kontextfreie Grammatiken

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S, P) mit den Regeln

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2014/2015

Elemente in Φ werden Wurzeln genannt. Bemerkung 3.2. (a) Zu einem Wurzelsystem können wir immer eine Spiegelungsgruppe definieren

2.3 Deduktiver Aufbau der Aussagenlogik

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier

Aufgabe Mögliche Punkte Erreichte Punkte a b c d Σ a b c d Σ x1 13

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Kontextfreie (Typ-2) Sprachen

Theoretische Informatik I

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Transkript:

24. Kontextfreie Sprachen Obwohl das Wortproblem für kontextsensitive Sprachen entscheidbar ist, ist nicht bekannt, ob dieses auch tatsächlich d.h. in Polynomialzeit entscheidbar ist. Da man allgemein vermutet, dass NSPACE O n nicht in P enthalten ist, ist dies wegen der gezeigten Gleichheit KS NSPACE O n jedoch unwahrscheinlich. Für kontextfreie Grammatiken, die wir uns in diesem Abschnitt näher ansehen möchten, kann man dagegen die Lösbarkeit des Wortproblems in Polynomialzeit zeigen. Da auf der anderen Seite viele wichtige Sprachen (wie z.b. die üblichen Programmiersprachen, wenn man von der Typenkonsistenz absieht) kontextfrei sind, wurden die Klasse KF und Teilklassen hiervon sehr eingehend untersucht. Aus Zeitgründen werden wir uns hier auf einige Aspekte beschränken müssen. Mit Hilfe von Normierungen kontextfreier Grammatiken, insbesondere der Chomsky- Normalform, werden wir zeigen, dass jede kontexfreie Sprache auch kontextsensitiv ist, und eine Struktureigenschaft (Pumping Lemma) der kontextfreien Sprachen herleiten, die die Echtheit der Inklusion von KF in KS zeigt. Weiter werden wir kurz auf Abschlusseigenschaften und Entscheidbarkeitsfragen für KF eingehen. Eine Maschinencharakterisierung von KF werden wir dagegen nur erwähnen, aber nicht beweisen. Ein wichtiges Hilfsmittel für die Untersuchung kontextfreier Grammatiken ist die Darstellung von Herleitungen mit Hilfe von Herleitungsbäumen, wie wir es schon in Abschnitt 21 an einem Beispiel (s. Beispiel 21.4) getan haben. Möglich ist dies, da die Prämisse einer kontextfreien Regel nur aus einer Variablen besteht. Sei G N T P S eine kontextfreie Grammatik. In einem G-Herleitungsbaum eines (Terminal-)Wortes w ist die Wurzel mit dem Axiom S markiert, die Markierungen der Söhne eines mit einer Variablen X markierten Knotens ergeben die Konklusion v einer Regel von G mit Prämisse X 1, und die Blätter von links nach rechts gelesen ergeben das hergeleitete Wort w. Jeder G-Herleitung kann man eindeutig einen G-Herleitungsbaum zuordnen. Umgekehrt entsprechen einem G-Herleitungsbaum jedoch i. Allg. mehrere Herleitungen. Diese unterscheiden sich jedoch nur in der Reihenfolge der Regelanwendungen. Führen zwei Herleitungen zu demselben Herleitungsbaum, nennt man diese daher äquivalent. Verlangt man, dass in einer Herleitung stets Regeln auf die am weitesten links stehende Variable angewendet werden, so spricht man von einer Linksherleitung. Man kann zeigen, dass man jedem Herleitungsbaum genau eine Linksherleitung zuordnen kann, da durch die Forderung, stets die erste Variable zu ersetzen, die Reihenfolge der Regelanwendungen durch den Baum festgelegt ist. Insbesondere besitzt also jedes herleitbare Wort eine Linksherleitung. Wir wollen diese Aussagen hier nicht beweisen, sondern begnügen uns mit einem erläuternden Beispiel. 1 Genauer: Im Falle einer λ-regel X λ hat der mit X markierte Knoten einen mit λ markierten Sohn. Im Falle einer Regel X Y 1 Y n (n 1) sind es n Söhne, die von links nach rechts mit Y 1 Y n markiert sind. Wir gehen also davon aus, dass die Söhne linear (d.h. von links nach rechts) geordnet sind.

24 KONTEXTFREIE SPRACHEN 169 24.1 BEISPIEL. Sei L 0 m 1 m 0 n : m n 1 0 m 1 n 0 n : m n 1 (vgl. Beispiel 21.10 in Abschnitt 21). Eine kontextfreie Grammatik G N 0 1 P S, die L erzeugt, kommt mit den Variablen N S S l S r U und den Regeln (R1) S S l U (R2) S US r (R3,4) S l 0S l 1 01 (R5,6) S r 1S r 0 10 (R7,8) U U0 0 aus. Hierbei sind die Regeln so gewählt, dass man mit den Regeln R1, R3, R4, R7, R8 Wörter der Form 0 m 1 m 0 n, und mit den Regeln R2, R5, R6, R7, R8 Wörter der Form 0 m 1 n 0 n herleiten kann. Gilt n m, so stehen beide Möglichkeiten offen. So besitzt das Wort w 0 2 1 2 0 2 z.b. folgende Herleitungen: (H1) S S l U 0S l 1U 0S l 1U0 0011U0 001100 (H2) S S l U S l U0 S l 00 0S l 100 001100 (H3) S US r U0S r 00S r 001S r 0 001100 Die ersten beiden Herleitungen sind äquivalent, und führen zu dem Herleitungsbaum S S l U 0 S l 1 U 0 0 1 0 Die zugehörige (zu H1 und H2 äquivalente) Linksherleitung ist S S l U 0S l 1U 0011U 0011U0 001100 Der zu H3 gehörende Herleitungsbaum ist S U S r U 0 1 S r 0 0 1 0 Die Herleitung H3 (die bereits eine Linksherleitung ist) ist also zu H1 und H2 nicht äquivalent. Besitzt ein Wort w nichtäquivalente Herleitungen (d.h. verschiedene Linksherleitungen) in einer Grammatik G, so heißt es mehrdeutig (bzgl. G), und die Grammatik G heißt mehrdeutig, wenn es bzgl. G mindestens ein mehrdeutiges Terminalwort gibt. Eine kontextfreie Sprache L heißt inhärent mehrdeutig, wenn jede kontextfreie Grammatik, die L erzeugt, mehrdeutig ist. Die Grammatik G ist, wie das Beispielwort w 0 2 1 2 0 2 zeigt, mehrdeutig. Die mehrdeutigen Wörter sind (wie man leicht zeigen kann) gerade die Wörter der Form w 0 m 1 m 0 m (m 1). Man kann weiter zeigen (nicht so einfach), dass die Sprache L inhärent mehrdeutig ist.

24 KONTEXTFREIE SPRACHEN 170 Um zu zeigen, dass jede kontextfreie Sprache auch kontextsensitiv ist, geben wir zu jeder kontextfreien Grammatik G eine äquivalente λ-treue kontextfreie Grammatik G an. Die Grammatik G ist dann insbesondere kontextsensitiv. 24.2 SATZ. Zu jeder kontextfreien Grammatik G N T P S kann man effektiv eine äquivalente kontextfreie Grammatik G! N T P S " angeben, die λ-treu und separiert ist. 24.3 KOROLLAR. KF # KS. $ Zum Beweis von Satz 24.2 zeigen wir zunächst, dass man für eine kontextfreie Grammatik G die eliminierbaren, d.h. in das leere Wort überführbaren Variablen effektiv bestimmen kann. 24.4 LEMMA. Die Menge E % X & N : X λ G der eliminierbaren Variablen einer kontextfreien Grammatik G effektiv bestimmen. N T P S lässt sich BEWEIS. Die Mengen E n (n 1) seien induktiv definiert durch E 1 X & N : X λ & P E n( 1 E n ) X & N : * w & En X w & P +!, Offensichtlich lassen sich die Mengen E n effektiv angeben, und es gilt E 1 # E 2 # E 3 #-,.,/, Da die Mengen E i in der endlichen Menge N enthalten sind, wird diese Kette schließlich stationär, d.h. es gibt n 0 minimal mit E n E n0 für alle n n 0, also E n0 10 n2 1 E n. Nach Definition der Mengen E n können wir n 0 (und damit E n0 ) effektiv bestimmen. Es gilt nämlich n 0 µn E n E n( 1 3 da E n E n( 1 impliziert, dass E n E m für alle m n gilt (Induktion!). Es genügt also, E E n0 zu zeigen. Hierzu zeigt man zunächst E n # E für alle n durch eine triviale Induktion nach n. Zum Nachweis der Umkehrung E # E n0 hat man für gegebenes X & E zu zeigen, dass X & E n für ein geeignetes n und damit auch X & E n0 gilt. Wegen X & E gibt es eine Herleitung X w n w n4 1 5,.,.,6 w 1 w 0 λ die X in n Schritten (n 1 geeignet) in λ überführt. Mit einer (einfachen) Induktion zeigt man hierfür, dass w i & E i gilt, also insbesondere X & E n. $ Wir können nun Satz 24.2 beweisen. BEWEIS VON SATZ 24.2. Wegen Lemma 23.2 können wir davon ausgehen, dass die Grammatik G N T P S bereits separiert ist. Es bleibt die λ-treue sicherzustellen.

24 KONTEXTFREIE SPRACHEN 171 Wegen Lemma 24.4 können wir effektiv feststellen, ob λ in der von G erzeugten Sprache liegt, da λ & L G genau dann gilt, wenn das Axiom S eliminierbar ist, d.h. S & E gilt. Es genügt also, eine λ-freie kontextfreie Grammatik G Ñ T P S anzugeben mit L G 7 L G 98: λ. Ist nämlich λ &; L G, so ist G die gewünschte, zu G äquivalente λ-treue und separierte Grammatik G. Gilt λ & L G, so erhält man G aus G, indem man ein neues Axiom hinzufügt, das in das alte Axiom überführt oder eliminiert werden kann. D.h. G Ñ ) S! T P) S S S λ! S. Die Grammatik G erhält man aus der Grammatik G, indem man alle λ-regeln von G weglässt. Für jede Umformungsregel X Y 1,.,/, Y n (n 1) nimmt man dafür alle Varianten X w hinzu, wobei w ; λ aus Y 1,.,., Y n durch Weglassen von frei gewählten Vorkommen eliminierbarer Variablen entsteht. Es ist klar, dass in G nur nichtleere Wörter aus L G herleitbar sind. Benutzt man nämlich in einer G-Herleitung von z eine Variante X w einer Regel X Y 1,.,/, Y n aus P, so kann man diese Regelanwendung in G simulieren, indem man zunächst die Regel X Y 1,/,., Y n anwendet und dann die in w weggelassenen Variablen Y i eliminiert. (Formal beweist man die entsprechende Aussage für Satzformen durch Herleitungsinduktion.) Zum Nachweis der Umkehrung L G <8: λ=# L G führen wir die Grammatik Ĝ N T ˆP S mit ˆP P P> X λ : X & E ein und zeigen w & L Ĝ?8@ λa w besitzt eine Ĝ-Herleitung, in der keine λ-regel angewendet wird. (24.1) Dies genügt, da nach Definition von Ĝ die Grammatiken G und G Teilgrammatiken von Ĝ sind, wobei G alle Ĝ-Regeln mit Ausnahme der λ-regeln enthält. Ist also w & L G B8C λ, so gilt auch w & L Ĝ B8C λ und die nach (24.1) existierende λ-regel-freie Ĝ-Herleitung von w ist zugleich eine G-Herleitung, weshalb w & L G. Zum Nachweis von (24.1) zeigen wir durch Induktion nach n, dass sich jede Ĝ- Herleitung H der Länge n eines Terminalwortes w ; λ in eine λ-regel-freie Ĝ-Herleitung H desselben Wortes überführen lässt. Sei also solch eine Herleitung H der Länge n gegeben, wobei wir o.b.d.a. davon ausgehen können, dass in H eine λ-regel Y λ angewendet wird. (Andernfalls können wir HD H wählen.) Da H ein Wort w ; λ herleitet, kann die Regel Y λ nicht die erste Regelanwendung sein (also insbesondere muss n 1 sein). Da Ĝ separiert ist, muss also Y zuvor durch eine Umformungsregel X Y 1,.,/, Y m erzeugt worden sein, d.h. Y Y i für ein i & 1.,/,., m. Die beiden Regelanwendungen X Y 1,.,., Y m und Y λ können wir jedoch durch die Anwendung der Regel r X Y 1,/,., Y i4 1Y i( 1,.,., Y m ersetzen. (Man beachte, dass, für m 2, r & P # ˆP, da Y Y i & E gilt. Ist m 1, d.h. X Y i mit Y Y i, so ist mit Y & E auch X & E, weshalb r X λ & ˆP nach Definition von ˆP.) Dies liefert eine Herleitung H 0 von w der Länge n 8 1. Nach Induktionsvoraussetzung gibt es dann aber eine λ-regel-freie Herleitung H : E H0 von w. $ Satz 24.2 lässt sich durch Einschränkung der zulässigen Umformungsregeln noch verschärfen. 24.5 DEFINITION. Eine kontextfreie Grammatik G N T P S ist in Chomsky- Normalform, wenn G λ-treu ist und neben der eventuellen λ-regel S der Form enthält. X Y Z und X a X Y Z & N a & T λ nur Regeln

24 KONTEXTFREIE SPRACHEN 172 24.6 SATZ. Jede kontextfreie Grammatik G N T P S lässt sich effektiv in eine äquivalente kontextfreie Grammatik GF N T P S " in Chomsky-Normalform überführen. BEWEIS. Nach Satz 24.2 dürfen wir annehmen, dass die gegebene Grammatik G λ- treu und separiert ist. Es genügt dann, Umformungsregeln X Y 1,.,., Y n mit n 1 oder n 3 durch Regeln der zulässigen Gestalt zu ersetzen. Wir erreichen dies in zwei Schritten, indem wir zunächst eine zu G äquivalente Grammatik G Ñ T P S angeben, in der Umformungsregeln mit zu langen Konklusionen eliminiert sind, und dann die zu G äquivalente Grammatik GG N T P S angeben, die auch keine Variablenumbenennungen mehr enthält. Die Grammatik G entsteht aus G, indem man jede Regel X Y 1,.,., Y n mit n 3 durch die Regeln X Y 1 Z 2 Z 2 Y 2 Z 3. Z n4 1 Y n4 1Y n ersetzt, wobei die Variablen Z 1.,/,., Z n4 1 neu (und für jede Regel verschieden) sind. Zur Elimination der Variablenumbenennungen in G definieren wir für jede Variable X & Ñ die Menge U X ) - Y & Ñ : X Y G der Variablen, in die X überführt werden kann, und ersetzen alle Umbenennungsregeln mit Prämisse X durch die Regeln X Y 1 Y 2 H,.,.,I Y k X a wobei * Y & U X Y a & P X Z 1 Z 2 wobei * Y & U X Y Z 1 Z 2 & P D, Die so definierte Grammatik G kann man effektiv aus G gewinnen, da man die Mengen U X effektiv berechnen kann. Hierzu beobachtet man (ähnlich wie im Beweis von Lemma 24.4), dass U X der kleinste Fixpunkt der durch U 0 X J X U n( 1 X J U n X > Y & Ñ : * Z & U n X Z Y & P. definierten aufsteigenden Folge U 0 X K# U 1 X K#L,.,., ist. Auf den formalen Beweis, dass L G H L G H L G gilt, verzichten wir. $ Der folgende Satz ist ein wichtiges Werkzeug zum Nachweis der Nichtkontextfreiheit von Sprachen.

W W 24 KONTEXTFREIE SPRACHEN 173 24.7 SATZ. (PUMPING LEMMA FÜR KF) Zu jeder kontextfreien Sprache L # Σ gibt es eine Zahl p &=M, sodass jedes Wort z & L der Länge z. p eine Zerlegung z uvwxy in Teilwörter u v w x y & Σ mit folgenden Eigenschaften besitzt: (i) vx ; λ (ii) vwxgn p (iii) O n 0 z n uv n wx n y & L Hierbei lässt sich solch eine Zahl p aus jeder kontextfreien Grammatik G, die L erzeugt, effektiv berechnen. BEWEIS. Sei G N T P S eine kontextfreie Grammatik in Chomsky-Normalform, die L erzeugt. Aufgrund der Normalform ist jeder G-Herleitungsbaum ein Binärbaum. Da in einem Binärbaum B die Anzahl b der Blätter in der Tiefe t des Baumes (d.h. der Länge t des längsten Pfades, t die Anzahl der Kanten, d.h t P 1 die Anzahl der Knoten des Pfades) durch b Q 2 t( 1 beschränkt ist, folgt hieraus, dass jedes Wort z & L mit zr 2 t( 1 einen Herleitungsbaum der Tiefe t hat. Wählen wir also p 2S N S ( 2 P 1, ein Wort z & L mit zr p und einen G-Herleitungsbaum B von z, so hat B die Tiefe t UT NT<P 1. Ist also α ein Pfad maximaler Länge in B, so sind dessen Knoten mit S X 1.,.,.,V X t a (X i & N a & T) beschriftet. Da t 1T N TIP 1, muss zumindest eine Variable mehrfach auf dem Pfad vorkommen. Wir können also 1 Q k N t maximal und hierzu k N l Q t wiederum maximal wählen, so dass X k X l gilt. Die gewünschte Zerlegung z uvwxy des Wortes z erhalten wir nun dadurch, dass wir u und y als die (Inschriften der) Blätter wählen, die links bzw. rechts von X k (d.h. von den Blättern unterhalb von X k ) liegen, v und x als die Blätter, die unterhalb von X k aber links bzw. rechts von X l liegen, und w als die Blätter, die unterhalb von X l liegen: SW X k X l u v w x y Um zu zeigen, dass die Zerlegung die gewünschten Eigenschaften hat, beobachten wir, dass (durch geeignetes Anordnen der Regelanwendungen) dem Baum B eine Herleitung H von z entspricht S ux k y uvx l xy uvwxy

24 KONTEXTFREIE SPRACHEN 174 mit Teilherleitungen S X k X l ux k y (24.2) vx l x (24.3) w (24.4) entspricht. Da k N l, hat hierbei die Herleitung (24.3) die Länge 1, weshalb wegen der Normalform von G, vx ; λ, also die Anforderung (i) an die Zerlegung erfüllt ist. Da α ein Pfad maximaler Länge ist, und k maximal gewählt wurde, kommt es echt unterhalb von X k auf keinem Pfad zu Variablenwiederholungen. D.h. der Teilbaum von B mit Wurzel X k hat Tiefe QXT NTHP 1, und damit hat das aus X k (gemäß (24.3) und (24.4)) hergeleitete Teilwort vwx von z die Länge vwxgq 2S N S ( 2 N p Hiermit ist also auch (ii) erfüllt. Zum Nachweis von (iii) müssen wir z n uv n wx n y & L für jedes n 0 zeigen. Da X k X l, erhalten wir jedoch aus (24.2)-(24.4) folgende Herleitung für z n : S uxy 24, 2 uv n Xx n y n mal 24, 3 uv n wx n y 24, 4 wobei wir X für X k X l geschrieben haben. $ 24.8 KOROLLAR. KF Y KS. BEWEIS. Da wir KF # KS bereits gezeigt haben, genügt es, eine Sprache L & KS 8 KF anzugeben. Wir wählen hierfür L Z 0 n 1 n 0 n : n 1, für die wir in Beispiel 21.11 in Abschnitt 21 bereits eine Grammatik vom Erweiterungstyp angegeben haben. Nach Satz 23.3 gilt also L & KS. Den Beweis, dass L nicht kontextfrei ist, führen wir indirekt. Für einen Widerspruch nehmen wir an, dass L & KF gelte. Nach dem Pumping Lemma gibt es dann eine Zahl p, sodass jedes z & L mit zb p eine Zerlegung z uvwxy mit den oben angegebenen Eigenschaften (i), (ii) und (iii) besitzt. Wir wählen nun für z 0 p 1 p 0 p solch eine Zerlegung und betrachten das Wort z 0 uv 0 wx 0 y uwy, das nach (iii) wiederum zu L gehört, also die Gestalt z 0 uwy 0 q 1 q 0 q für ein q 1 hat. Da vwxbq p nach (ii), muss jedoch der erste Block 0 p von z ein Anfangsstück von u oder der zweite Block 0 p von z ein Endstück von y sein (oder beides), weshalb das Weglassen des Teils vx aus z in z 0 zumindest einen dieser Blöcke unverändert lässt. Dies bedeutet aber, dass q p, also z 0 z gelten muss. Der weggelassene Teil vx von z ist also leer, im Widerspruch zu (i). $ Ein Beispiel für eine Sprache über dem unären Alphabet, die kontextsensitiv, aber nicht kontextfrei ist, ist die Sprache L Z 0 n2 : n 0. Um L & KS zu zeigen, gibt man entweder eine kontextsensitive Grammatik an, oder man überzeugt sich, dass man L mit linearem Platzbedarf erkennen kann. Dass L &; KF gilt, zeigt man mit Hilfe des Pumping Lemmas. Hierzu beobachtet man, dass für jede unendliche kontextfreie Sprache L die Lücken zwischen den Längen der Wörter in L linear beschränkt sind, d.h. es eine Zahl p gibt, sodass es für alle n ein Wort w & L mit np Q[ w\q np 1 p gibt. Für eine kontextfreie Sprache L U 0 f] n^ : n 0 über 0 bedeutet dies aber, dass f n <& O n gilt (Übung!).

24 KONTEXTFREIE SPRACHEN 175 Aus dem Pumping-Lemma folgt weiter, dass im Gegensatz zum Fall der kontextsensitiven Grammatiken das Leerheits- und Unendlichkeitsproblem für kontextfreie Grammatiken entscheidbar sind. 24.9 SATZ. Für eine kontextfreie Grammatik kann man effektiv feststellen, ob L G leer oder unendlich ist. BEWEIS. Gegeben eine kontextfreie Grammatik G, können wir eine Zahl p wie im Pumping Lemma für L L G K# Σ effektiv bestimmen. Wir behaupten, dass L ; /0 _ * w & Σ w3n p & w & L (24.5) L unendlich _ * w & Σ p Q` w3n 2p & w & L (24.6) Da das Wortproblem für kontextfreie Grammatiken entscheidbar ist 2, können wir die rechten Seiten in (24.5) und (24.6) effektiv überprüfen, da die Mitgliedschaft in L für eine vorgegebene endliche Menge von Wörtern zu testen ist. Daher liefern (24.5) und (24.6) Entscheidungsverfahren für das Leerheits- bzw. Unendlichkeitsproblem für KF. Zum Beweis der nichttrivialen Richtung in (24.5) nehmen wir L ; /0 an und wählen ein Wort z & L minimaler Länge, und nehmen für einen Widerspruch z+ p an. Nach dem Pumping Lemma gibt es dann eine Zerlegung z uvwxy von z mit vx ; λ und z 0 uwy & L. Da z 0 D a z/8b vx\nc z gilt, widerspricht dies der Minimalität von z. Zum Beweis von in (24.6) nehmen wir L unendlich an. L enthält dann beliebig lange Wörter, weshalb wir ein Wort z mit minimaler Länge p wählen können. Dass dann zrn 2p gelten muss, zeigt man wieder mit dem Pumping Lemma. Gilt nämlich zg 2p, so wählen wir wieder eine Zerlegung z uvwxy mit vx\d 0, vwxgq p und z 0 uwy & L. Da dann aber p QL z 0 3Ǹ z gilt, widerspricht dies der Minimalität von z. Schließlich zum Beweis der Richtung von (24.6) genügt es zu beobachten, dass das Pumping Lemma zu einem Wort z & L mit zr p unendlich viele Wörter z n & L (n 1) durch Aufpumpen von Teilen von z liefert. $ Die Verschiedenheit von KF und KS lässt sich auch durch unterschiedliche Abschlusseigenschaften dieser Klassen zeigen (vgl. Lemmata 23.14 und 23.15). 24.10 SATZ. KF ist gegen Vereinigung und homomorphe Bilder, nicht aber gegen Durchschnitt und Komplement abgeschlossen. BEWEIS. Sind L 1 L 2 & KF und G i N i T i P i S i Grammatiken, die L i erzeugen, wobei o.b.d.a. N i e N j T j H /0 ( i j7 f 1 2 ), so erzeugt die kontextfreie Grammatik G N 1 N 2 ) S T 1 T 2 P 1 P 2 ) S S 1 S 2! S die Vereinigung L 1 L 2 von L 1 und L 2. Ist L # Σ kontextfrei und h : Σ T ein Homomorphismus, so zeigt man h L H h w : w & L& KF wie folgt. Man wählt eine kontextfreie Grammatik G N Σ P S in Chomsky-Normalform, die L erzeugt, und deren Variablenmenge N zu T disjunkt ist. Ersetzt man in P alle Substitutionsregeln X a durch X h a, so erhält man eine kontextfreie Grammatik Gg N T P S, die h L erzeugt. 2 Um w h Li Gj zu entscheiden, überführen wir G effektiv in eine äquivalente kontextfreie Grammatik Gk in Chomsky-Normalform. Diese ist dann auch kontextsensitiv, weshalb w h Li Gklj, wie im vorhergehenden Abschnitt gezeigt, entscheidbar ist.

24 KONTEXTFREIE SPRACHEN 176 Dass KF nicht gegen den Durchschnitt abgeschlossen ist, zeigt das Beispiel der Sprachen L 1 ` 0 m 1 m 0 n : m n 1 und L 2 ` 0 m 1 n 0 n : m n 1. Diese sind kontextfrei (vgl. Beispiel 21.10 in Abschnitt 21), aber L 1 e L 2 0 n 1 n 0 n : n 1 ist, wie im Beweis von Korollar 24.8 gezeigt, nicht kontextfrei. Da sich der Durchschnitt zweier Sprachen mit Hilfe der Vereinigung und des Komplements (L 1 e L 2 L 1 L 2 ) darstellen lässt, ist KF auch nicht gegen Komplementbildung abgeschlossen. $ Im Gegensatz zu der Klasse KS der kontextsensitiven Sprachen lässt sich die Klasse KF der kontextfreien Sprachen durch keine Komplexitätsklasse beschreiben. Man kann zeigen, dass KF # DTIME n 3 gilt, da das Wortproblem für jede kontextfreie Grammatik in Chomsky-Normalform in Kubikzeit lösbar ist (Algorithmus von Cocke-Kasami-Younger, s. Literatur). Für die nichtdeterministische Zeitkomplexität kann man die Abschätzung verbessern zu KF # NTIME O n 3, Hierzu beobachtet man, dass für eine kontextfreie Grammatik G N T P S in Chomsky-Normalform die Länge l einer Herleitung linear in der Länge n des hergeleiteten Wortes w beschränkt ist: Da G λ-treu ist und keine Variablenumbenennungen erlaubt, gilt l Q 2n. Eine nichtdeterministische Turingmaschine M kann daher mit linearem Zeitbedarf die Sprache L dadurch erkennen, dass sie eine Linksherleitung des Eingabewortes w errät. Es gibt jedoch sehr einfache Sprachen, die nicht kontextfrei sind, nämlich DTIME O n m; # KF, Ein Beispiel hierfür ist die Sprache 0 n 1 n 0 n : n 1, die in DTIME O n 8 KF liegt. Wenn man KF auch nicht mit Ressourcenbeschränkten Turingmaschinen beschreiben kann, so kann man doch eine Maschinen-Charakterisierung von KF mit Hilfe von nichtdeterministischen Kellermaschinen, d.h. 1-Stapel-Maschinen geben. Wir verzichten hier auf den nicht ganz einfachen Beweis und eine Formalisierung des Kellermaschinenkonzepts.