EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
|
|
- Sylvia Junge
- vor 5 Jahren
- Abrufe
Transkript
1 EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester DIE KONTEXTFREIEN SPRACHEN Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 1 / 53
2 Einleitung Die kontextfreien Sprachen spielen eine zentrale Rolle in der (theoretischen) Informatik: Einerseits ist das Konzept mächtig genug, um im Wesentlichen die Syntax von Programmiersprachen zu beschreiben. Andererseits lassen sich die von kontextfeien Grammatiken erzeugten Sprachen hinreichend effizient analysieren. Wir werden deshalb die kontextfreien Grammatiken und Sprachen näher betrachten. Ein wichtiges Hilfsmittel zur Analyse von Herleitungen in kontextfreien Grammatiken sind Herleitungsbäume und Linksherleitungen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 2 / 53
3 15.1 Herleitungsbäume, Linksherleitungen, Mehrdeutigkeit Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 3 / 53
4 Herleitungsbäume, Linksherleitungen, Mehrdeutigkeit Wir führen zunächst einige sich auf Herleitungen in kontextfreien Grammatiken beziehende Begriffe ein: Herleitungsbäume geben die Struktur einer Herleitung wieder. Bei Linksherleitungen wird in jedem Schritt die am weitesten links stehende Variable ersetzt. Mehrdeutigkeit einer Grammatik besagt, dass es Terminalwörter gibt, die wesentlich verschiedene Herleitungen (d.h. verschiedene Herleitungsbäume) besitzen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 4 / 53
5 Herleitungsbäume Sei G = (N, T, P, S) eine kontextfreie Grammatik. Ein G-Herleitungsbaum eines Terminalwortes w ist ein geordneter, knotenmarkierter Baum mit folgenden Eigenschaften: Jeder innere Knoten ist mit einer Variablen markiert, jedes Blatt mit einem Terminalzeichen oder dem leeren Wort λ. Die Wurzel ist mit dem Axiom S markiert. Die Markierungen der Söhne eines mit der Variablen X markierten inneren Knotens ergeben (von links nach rechts gelesen) die Konklusion v einer X-Regel r = X v. Ist v = λ, so gibt es genau einen Sohn und dieser ist mit λ markiert. (Andernfalls ist keiner der Söhne mit λ markiert.) Die Verkettung der Markierungen der Blätter von links nach rechts gelesen ergibt gerade das Wort w. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 5 / 53
6 Herleitungsbäume: Anmerkungen Ein G-Herleitungsbaum von w bezeugt die Herleitbarkeit des Terminalwortes w in der Grammatik G. Den genauen Zusammenhang zwischen Herleitungsbäumen und Herleitungen werden wir gleich betrachten. Im Folgenden wird der Begriff des Herleitungsbaums auf die Situation X x für beliebiges X N und x (N T ) erweitert: Wir sprechen dann von einem G-Herleitungsbaum von x aus X. Ein solcher verallgemeinerter Herleitungsbaum unterscheidet sich von einem Herleitungsbaum im engeren Sinne dadurch, dass nun in der Wurzel statt des Axioms die Variable X steht und, dass die Blattmarkierungen von links nach rechts gelesen das Wort x ergeben, also, falls x nicht terminal ist, nun auch Variablen in den Blättern stehen können. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 6 / 53
7 Von einer Herleitung zum Herleitungsbaum (1) Jede G-Herleitung H eines Terminalwortes w (bei der in jedem Schritt die Variable, die ersetzt wird, markiert ist) definiert eindeutig einen zugehörigen Herleitungsbaum HB H von w: Ist H die Herleitung S = v 0 v 1 v 2 v n = w so definiert man hierzu induktiv Herleitungsbäume HB i von v i aus S wie folgt: HB 0 besteht nur aus der mit S markierten Wurzel. Den Baum HB i+1 erhält man aus dem Baum HB i wie folgt: Wird beim Übergang v i v i+1 die Regel X x angewendet, so werden an das mit X markierte Blatt in HB i, das dem ersetzten Vorkommen von X entspricht, Söhne mit Markierungsfolge x hinzugefügt. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 7 / 53
8 Von einer Herleitung zum Herleitungsbaum (2) Anmerkungen I.a. kann man einer Herleitung nicht entnehmen, an welcher Stelle die aktuelle Regel angewendet wurde, weshalb es notwendig ist, diese Stelle zu unterstreichen. (Man betrachte hierzu z.b. die Regeln X XX und den Herleitungsschritt XX XXX. Dann kann man nicht erkennen, ob das erste oder zweite X ersetzt wurde.) Wir nennen G-Herleitungen H 1 und H 2 eines Terminalwortes w äquivalent, falls die zugehörigen Herleitungsbäume gleich sind, d.h. HB H1 = HB H2 gilt. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 8 / 53
9 Von einem Herleitungsbaum zu einer Herleitung Einem Herleitungbaum HB eines Wortes w lassen sich i.a. verschiedene Herleitungen von w zuordnen (d.h. es gibt i.a. verschiedene Herleitungen H 1 und H 2 von w mit HB = HB H1 = HB H2 ). Die Herleitungen H 1 und H 2 unterscheiden sich jedoch nur dadurch, dass Regelanwendungen, bei denen die Reihenfolge der Ausführung keine Rolle spielt, in unterschiedlicher Reihenfolge ausgeführt werden. Im Herleitungsbaum erkennt man solche Regelanwendungen dadurch, dass die Knoten, die mit den Prämissen X 1 und X 2 der Regelanwendungen markiert sind, nicht auf demselben Pfad liegen: Betrachtet man die Herleitungteile, die zwei disjunkten Teilbäumen T 1 und T 2 von HB entsprechen, so spielt es für Ergebnis (und Struktur) der Herleitung keine Rolle, ob man zuerst die T 1 entsprechenden Herleitungsschritte ausführt und dann die T 2 entsprechenden oder umgekehrt. Man kann jedoch einem Herleitungsbaum HB eine eindeutig bestimmte Herleitung zuordnen, wenn man verlangt, dass in jedem Schritt die am weitesten links stehende Variable ersetzt wird. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 9 / 53
10 Linksherleitungen DEFINITION. Eine Linksherleitung ist eine Herleitung, bei der in jedem Schritt die am weitesten links stehende Variable ersetzt wird. SATZ. Zu jedem Herleitungsbaum HB von w gibt es genau eine Linksherleitung LH von w mit HB = HB LH. BEWEISIDEE. Man erhält die zu dem Herleitungsbaum HB gehörende Linksherleitung LH von w dadurch, dass man den Baum in Präorder durchläuft. Es gibt also eine eindeutige Korrespondenz zwischen Herleitungsbäumen und Linksherleitungen! KOROLLAR. Jedes herleitbare Wort besitzt eine Linksherleitung. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 10 / 53
11 Mehrdeutigkeit Sei G = (N,T,P,S) eine kf. Grammatik. Ein Wort w L(G) heisst eindeutig (bzgl. G), wenn w genau einen Herleitungsbaum (d.h. genau eine Linksherleitung) in G besitzt; andernfalls heisst w mehrdeutig (bzgl. G). Eine kontextfreie Grammatik G heisst eindeutig, falls jedes w L(G) bzgl. G eindeutig ist; andernfalls heisst G mehrdeutig. Eine kontextfreie Sprache L heisst eindeutig, falls sie von einer eindeutigen kf. Grammatik erzeugt wird; andernfalls heisst L inhärent mehrdeutig. NB. Ist L inhärent mehrdeutig, so bedeutet dies, dass jede kf. Grammatik, die L erzeugt, mehrdeutig ist. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 11 / 53
12 Ein Beispiel Die Sprache L = {0 m 1 m 0 n : m,n 1} {0 m 1 n 0 n : m,n 1} ist kontextfrei. 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. Z.B. besitzt das Wort w = folgende Herleitungen: (H1) S S l U 0S l 1U 0S l 1U0 0011U (H2) S S l U S l U0 S l 00 0S l (H3) S US r U0S r 00S r 001S r Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 12 / 53
13 Ein Beispiel (Forts.) Die ersten beiden Herleitungen sind äquivalent, d.h. führen zu demselben Herleitungsbaum: s. TAFEL (oder Skript). Die zugehörige Linksherleitung ist S S l U 0S l 1U 0011U 0011U Herleitung H3 führt dagegen zu einem anderen Herleitungsbaum: s. TAFEL (oder Skript). Die Herleitung H3 (die bereits eine Linksherleitung ist) ist also zu H1 und H2 nicht äquivalent. Das Wort w = ist also mehrdeutig bzgl. G. Die bzgl. G 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. D.h. jede kf. Grammatik, die L erzeugt, ist mehrdeutig. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 13 / 53
14 15.2 Die Chomsky-Normalform und das Pumping-Lemma Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 14 / 53
15 Die Chomsky-Normalform und das Pumping-Lemma Wir werden nun zeigen, dass sich jede kontextfreie Grammatik in eine äquivalente λ-treue separierte kf. Grammatik überführen lässt, bei der jede Umformungsregel die Gestalt X YZ hat (Chomsky-Normalform). Herleitungsbäume für solche Grammatiken sind binäre Bäume, haben also eine besonders einfache Gestalt. Dies nutzen wir dann aus, um zu zeigen, dass die Wörter in kontextfreien Sprachen eine interessante Zerlegungseigenschaft haben (Pumping-Lemma). Hiermit kann man häufig den Nachweis führen, dass eine gegebene Sprache nicht kontextfrei ist, da diese Wörter enthält, die diese Zerlegungseigenschaft nicht haben. Insbesondere werden wir so die Echtheit der Inklusion KF KS nachweisen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 15 / 53
16 Chomsky-Normalform Wir haben bereits in Kapitel 14 gesehen, dass jede kf. Grammatik äquivalent zu einer λ-treuen, separierten kf. Grammatik ist. Dies lässt sich noch wie folgt verschärfen: DEFINITION. Eine kf. Grammatik G = (N,T,P,S) ist in Chomsky- Normalform, falls G λ-treu ist und neben der eventuellen λ-regel S λ nur Regeln der Form besitzt. X YZ (X,Y,Z N) X a (X N,a T ) SATZ. Zu jeder kf. Grammatik G = (N,T,P,S) kann man effektiv eine äquivalente kf. Grammatik G = (N,T,P,S ) in Chomsky-Normalform angeben. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 16 / 53
17 Chomsky-Normalform: Beweisidee Wir gehen in 4 Schritten vor und konstruieren zu G äquivalente Grammatiken G i = (N 1,T,P i,s i ) (i = 1,2,3,4), die der Normalform immer näher kommen: (1) G 1 ist separiert, d.h. P 1 enthält nur Regeln der Form (T 1 n ) X Y 1...Y n (n 1;X,Y 1,...Y n N) (T 2) X λ (X N) (T 3) X a (X N,a T ) (2) G 2 ist zusätzlich λ-treu (Elimination der (T2)-Regeln) (3) G 3 enthält zusätzlich keine Regeln X Y 1...Y n mit n > 2 (Elimination der (T1 n )-Regeln für n 3) (4) G 4 enthält zusätzlich keine Variablenumbenennungen X Y (Elimination der (T1 1 )-Regeln) G 4 ist dann in Chomsky-Normalform. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 17 / 53
18 Chomsky-Normalform: Beweisidee (Forts.) Die Verfahren zur Überführung von G in eine äquivalente separierte Grammatik G 1 (1. Schritt) und die Überführung einer separierten Grammatik G 1 in eine äquivalente separierte λ-treue Grammatik G 2 (2. Schritt) haben wir bereits vorgestellt, als wir die Inklusion KF KS gezeigt haben ( Kapitel 14). Wir beschreiben nun die beiden weiteren Schritte: Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 18 / 53
19 Chomsky-Normalform: Beweisidee (Forts.) 3. SCHRITT: ELIMINATION VON UMFORMUNGSREGELN X Y 1...Y n MIT KONKLUSIONSLÄNGE n 3 (G 2 G 3 ). Man ersetzt die Regel X Y 1...Y n mit n 3 durch die Regeln X Y 1 Z 2 Z 2 Y 2 Z 3. Z n 1 Y n 1 Y n, wobei die Variablen Z 1,...,Z n 1 neu (und für jede Regel verschieden) sind. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 19 / 53
20 Chomsky-Normalform: Beweisidee (Forts.) 4. SCHRITT: ELIMINATION VON VARIABLENUMBENENNUNGEN X Y (G 3 G 4 ). Hierzu bestimmen wir zunächst für jede Variable X, die aus dieser durch eine Folge von Umbenennungen erreichbaren Variablen (vergleiche mit dem Verfahren zur Bestimmung der eliminierbaren Variablen in Kap. 14!): U(X) = {Y N 3 : X G 3 Y } Um U(X) zu bestimmen, bestimmen wir zunächst induktiv die Mengen U n (X) = {Y N 3 : X n G 3 Y }: U 0 (X) = {X} U n+1 (X) = U n (X) {Y N 3 : Z U n (X)(Z Y P 3 )} Es gilt dann: U(X) = U n (X) für das kleinste n mit U n (X) = U n+1 (X). Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 20 / 53
21 Chomsky-Normalform: Beweisidee (Forts.) 4. SCHRITT: ELIMINATION VON VARIABLENUMBENENNUNGEN X Y (Fortsetzung). Die zu G 3 äquivalente Grammatik G 4 erhält man dann wie folgt: Für jede Variable X N 3 ersetzt man alle Umbenennungsregeln X Y 1 Y 2... Y k mit Prämisse X durch die Regeln X Z 1 Z 2 falls Y U(X)(Y Z 1 Z 2 P 2 ) X a falls Y U(X)(Y a P 2 ). Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 21 / 53
22 Chomsky-Normalform: Beispiel Die Sprache L = {a m b n c n d p : m,p 1;n 0} {b n c n : n 0} wird von der kf. Grammatik G mit Axiom S und Regeln erzeugt. S AMD M A AA a D DD d M bmc λ Um G in eine äquivalente kf. Grammatik G in Chomsky-Normalform zu überführen, überführen wir G schrittweise in die äquivalenten Grammatiken G 1, G 2, G 3, G 4 = G. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 22 / 53
23 Chomsky-Normalform: Beispiel (Forts.) Schritt 1: G G 1 (Separierung) Es genügt die Regel M bmc durch die Regeln M BMC B b C c zu ersetzen. D.h. G 1 besitzt die folgenden Regeln (S Axiom): S AMD M A AA a D DD d M BMC λ B b C c Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 23 / 53
24 Chomsky-Normalform: Beispiel (Forts.) Schritt 2: G 1 G 2 (λ-treue) Man bestimmt zunächst die Menge E der eliminierbaren Variablen: E 1 = {M} E 2 = {M,S} E 3 = {M,S} D.h. E = {M,S}. (Insbesondere gilt also wegen S E λ L.) Wir erhalten hiermit G 2 aus G 1, indem wir ein neues Axiom S 1 sowie die Regeln S 1 S und S 1 λ hinzufügen, die λ-regeln von G 1 weglassen, und in Umformungsregeln X x, wobei x 2 und zumindest eine eliminierbare Variable in x vorkommt, alle Regeln X x hinzufügen, wobei x 1 und x aus x durch Weglassen von Vorkommen von eliminierbaren Variablen entsteht. D.h. zu den Regeln S AMD und M BMC werden die Regeln S AD bzw. M BC hinzugenommen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 24 / 53
25 Chomsky-Normalform: Beispiel (Forts.) Schritt 2: G 1 G 2 (λ-treue) (Forts.) G 2 besitzt also die folgenden Regeln (S 1 Axiom): S 1 S λ S AMD AD M A AA a D DD d M BMC BC B b C c Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 25 / 53
26 Chomsky-Normalform: Beispiel (Forts.) Schritt 3: G 2 G 3 (Elimination von Konklusionen der Länge 3) Die Regeln S AMD und M BMC werden ersetzt durch S AX und X MD bzw. M BY und Y MC wobei X und Y neue Variablen sind. G 3 besitzt also die folgenden Regeln (S 1 Axiom): S 1 S λ S AX AD M X MD A AA a D DD d M BY BC Y MC B b C c Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 26 / 53
27 Chomsky-Normalform: Beispiel (Forts.) Schritt 4: G 3 G 4 (Elimination von Variablenumbenennungen) Wir bestimmen zunächst für jede Variable V, die die Prämisse einer Variablenumbenennung V W ist, die Menge U(V ) der Variablen, in die V umbenannt werden kann. Dies sind hier die Variablen S 1 und S und es gilt U 0 (S 1 ) = {S 1 } U 1 (S 1 ) = {S 1,S} U 2 (S 1 ) = {S 1,S,M} = U 3 (S 1 ) = U(s 1 ) U 0 (S) = {S} U 1 (S) = {S,M} = U 2 (S) = U(s) Wir erhalten hiermit G 4 aus G 3, indem wir die Umbenennungsregeln S 1 S und S M durch alle möglichen Regeln der Form S 1 x bzw. S x ersetzen, wobei x keine Variable ist und es eine Regel Z x gibt mit Z U(S 1 ) bzw. Z U(S). Konkret: S 1 S: S M: S 1 AX AD und S 1 BY BC S BY BC Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 27 / 53
28 Chomsky-Normalform: Beispiel (Forts.) Schritt 4: G 3 G 4 (Elimination von Variablenumbenennungen) (Forts.) D.h.G 4 besitzt die folgenden Regeln (S 1 Axiom): S 1 AX AD BY BC λ S AX AD BY BC X MD A AA a D DD d M BY BC Y MC B b C c (Die Regeln S AX AD BY BC sind überflüssig, da S vom Axiom aus nicht erreichbar ist.) (Ende Beispiel) Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 28 / 53
29 Das Pumpinglemma für Kf. Sprachen Ist eine Grammatik G in Chomsky-Normalform, so sind die Herleitungsbäume Binärbäume, wobei die inneren Knoten mit Variablen und (sieht man von der trivialen Herleitung des leeren Wortes ab) die Blätter mit Terminalzeichen markiert sind. Wir benutzen dies nun, um eine Zerlegungseigenschaft E der kontextfreien Sprachen anzugeben. Für viele Sprachen L kann man leicht zeigen, dass diese die Eigenschaft E nicht haben und daher nicht kontextfrei sind. Insbesondere werden wir so zeigen, dass es kontextsensitive Sprachen gibt, die nicht kontextfrei sind. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 29 / 53
30 Das Pumpinglemma für Kf. Sprachen SATZ 1 (Pumpinglemma für KF). Zu jeder kontextfreien Sprache L Σ gibt es eine Zahl p N, 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) vwx < p (iii) 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. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 30 / 53
31 Pumpinglemma: Beweisidee Sei G = (N, T, P, S) eine kontextfreie Grammatik in Chomsky-Normalform, die L erzeugt. Wegen der Normalform sind G-Herleitungsbäume binär. Hat daher ein herleitbares Wort z die Länge z 2 t+1, so hat jeder Herleitungsbaum H S (z) von z mindestens die Tiefe t. Setze p = 2 N Für z L mit z p hat dann jeder G-Herleitungsbaum H S (z) von z die Tiefe t N + 1. Für einen Pfad α = S(= X 1 ),X 2,...X t,a von H S (z) maximaler Länge gilt also t > N, d.h. eine der Variablen muss mindestens zweimal auf dem Pfad vorkommen. Wähle die letzte Variablenwiederholung X := X k = X m (1 k < m t) in α. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 31 / 53
32 Pumpinglemma: Beweisidee (Forts.) Dann lässt sich H S (z) in folgende 3 Teilbäume zerlegen: H S (uxy) = H S (ux k v) (entspricht: (1) S ux k y) H X (vxx) = H Xk (vx m x) (entspricht: (2) X k vx m x) H X (w) = H Xm (w) (entspricht: (3) X l w) wobei z = uvwxy. Diese Zerlegung hat die gewünschten Eigenschaften. Insbesondere erhält man eine Herleitung von uv n wx n y, indem man mit (1) beginnt, dann mit n-mal (2) fortfährt, und schliesslich mit (3) endet. (D.h. der Teilbaum H X (vxx) von H S (z) wird n-fach iteriert.) q.e.d. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 32 / 53
33 Pumpinglemma: Anwendungsbeispiele LEMMA 1. Die Sprache L = {0 n 1 n 0 n : n 1} ist nicht kontextfrei. BEWEIS. Man zeigt dies indirekt. Widerspruchsannahme: L kontextfrei. Wähle p wie im Pumpinglemma passend zu L. Das Wort z = 0 p 1 p 0 p ist in L und erfüllt die Bedingung z p. Nach dem Pumpinglemma gibt es also eine Zerlegung z = uvwxy mit obigen Eigenschaften (i) - (iii). Es gilt daher: Wegen (i) ist vx nicht leer. Wegen (ii) gilt vwx p, d.h. v und x sind in demselben Block oder zwei aufeinanderfolgenden Blöcken von z enthalten. In z 0 = uv 0 wx 0 y werden daher 1 oder 2 Blöcke verkürzt, während zumindest ein Block unverändert bleibt. ALSO: z 0 L im Widerspruch zu (iii). Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 33 / 53
34 Pumpinglemma: Anwendungsbeispiele LEMMA 2. Die Sprache L = {0 2n : n 1} ist nicht kontextfrei. BEWEIS. Man zeigt dies indirekt. Widerspruchsannahme: L kontextfrei. Wähle p wie im Pumpinglemma passend zu L wobei o.b.d.a. p 3. Das Wort z = 0 2p ist in L und erfüllt die Bedingung z p. Nach dem Pumpinglemma gibt es also eine Zerlegung z = uvwxy mit obigen Eigenschaften (i) - (iii). Es gilt daher: Wegen (i) gilt vx = 0 m für m 1. Wegen (ii) gilt vwx p, also m p. Es ist also z 0 = uv 0 wx 0 y = 0 2p m wobei m p. Wegen p 3 und 1 m p gilt aber m < 2 p 1 und daher 2 p 1 < 2 p m < 2 p. ALSO: z 0 L im Widerspruch zu (iii). Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 34 / 53
35 Folgerungen aus dem Pumpinglemma KOROLLAR 1. KF KS. BEWEIS. Nach dem Inklusionslemma gilt KF KS. Es genügt also eine kontextsensitive Sprache L anzugeben, die nicht kontextfrei ist. Dies gilt aber für die Sprache L = {0 n 1 n 0 n : n 1}: Nach Lemma 1 oben ist L nicht kontextfrei. Die für L in Kapitel 13 angegebene Grammatik war vom Erweiterungstyp, weshalb L ERW gilt. Da wir in Kapitel 14 gezeigt haben, dass ERW = KS gilt, folgt hieraus, dass L kontextsensitiv ist. (Von der nach Lemma 2 nicht kontextfreien Sprache L = {0 2n : n 1} kann man ebenfalls leicht zeigen, dass sie kontextsensitiv ist, indem man eine L erzeugende Grammatik vom Erweiterungstyp angibt.) Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 35 / 53
36 Folgerungen aus dem Pumpinglemma Das Pumpinglemma lässt sich auch dazu verwenden, um zu zeigen, dass bestimmte Probleme für kf. Sprachen entscheidbar sind, die für ks. Sprachen unentscheidbar sind: KOROLLAR 2. Das Leerheitsproblem und das Unendlichkeitsproblem für kontextfreie Grammatiken sind entscheidbar. D.h. für eine gegebene kf. Grammatik G kann man effektiv feststellen, ob L(G) leer bzw. unendlich ist. BEWEISIDEE. Gegeben eine kf. Grammatik G, bestimmt man zunächst den (genauer: einen) zu L(G) gehörigen Parameter p aus dem Pumpinglemma. Es gilt dann (wie man sich leicht überlegt): L(G) /0 z Σ ( z < p & z L(G)) L(G) unendlich z Σ (p z < 2p & z L(G)) Da das Wortproblem für kontextfreie Grammatiken entscheidbar ist, folgt hieraus die Behauptung. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 36 / 53
37 15.3 Eine Maschinencharakterisierung der kontextfreien Sprachen Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 37 / 53
38 Kellerautomaten (Push-Down-Automaten) Ein Kellerautomat (oder Push-Down-Automat) M zur Erkennung einer Sprache L = L(M) über dem Eingabealphabet Σ liest - wie ein endlicher Automat - die Eingabe von links nach rechts. Der Kellerautomat besitzt aber zum Abspeichern von Information über das gelesene Anfangsstück des Eingabewortes zusätzlich einen Speicher in der Form eines Stapels (Stacks, Kellers). Der Stapel kann dabei ein Wort w über dem sog. Kelleralphabet Γ = Γ 0 {b 0 } aufnehmen, wobei dieses mit dem ausgezeichneten Bottomelement b 0 beginnt, gefolgt von einem möglicherweise leeren Wort v, das b 0 nicht enthält: w = b 0 v, v Γ 0. Der Automat M kann dabei immer nur auf das rechte Wortende des gespeicherten Wortes w zugreifen: last-in-first-out-speicher. Zu Beginn der Rechnung steht nur das Bottomelement im Speicher (= leerer Keller), das nie entfernt wird. Wie der Name Bottomelement schon zu erkennen gibt, stellen wir uns anschaulich vor, dass das Kellerwort von unten nach oben (statt von links nach rechts) geschrieben wird. Der Zugriff erfolgt also auf die jeweils obersten Elemente ( Stapel). Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 38 / 53
39 Kellerautomaten (Push-Down-Automaten) - Forts. In einem Schritt liest M den nächsten noch nicht gelesenen Buchstaben a der Eingabe x und den letzten Buchstaben c des Kellerwortes w. In Abhängigkeit von den gelesenen Buchstaben a und c und dem aktuellen (Programm-)Zustand z ersetzt M das gelesene Kellerzeichen c durch ein (möglicherweise leeres) Wort u Γ 0 (war c = b 0 so wird c durch ein Wort u = b 0 u mit u Γ 0 ersetzt) und aktualisiert seinen Zustand. Alternativ kann M auch einen spontanen oder λ-übergang durchführen, bei dem kein weiterer Buchstabe der Eingabe gelesen wird. Wie bei den endlichen Automaten betrachten wir auch hier wieder nichtdeterministische Maschinen, d.h. in einzelnen Schritten mag die Maschine aus verschiedenen möglichen Übergängen einen Übergang auswählen. Z.B. erlauben wir der Maschine wahlweise den nächsten Buchstaben einzulesen oder einen λ-übergang zu machen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 39 / 53
40 Kellerautomaten: Formale Definition Ein nichtdeterministischer Kellerautomat (nd. Push-Down-Automat; NPDA) M wird formal durch M = (Σ,Γ,b 0,Z,z 0,δ,E) definiert, wobei Σ Eingabealphabet Γ Kelleralphabet b 0 Γ Bottomelement (Γ 0 := Γ \ {b 0 }) Z endliche Menge der (Programm-)Zustände z 0 Startzustand δ endliche Übergangsrelation (Programm) δ Z Σ {λ} Γ (Γ 0 {b 0}Γ 0 ) Z, wobei für (z,a,c,w,z ) δ das Wort w genau dann mit b 0 beginnt, wenn c = b 0 gilt. E Z Menge der (akzeptierenden) Endzustände Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 40 / 53
41 Beschreibung der Arbeitsweise von M Eine M-Konfiguration ist ein Tripel (z,y,v), wobei z der aktuelle Zustand, y der noch nicht gelesene Teil der Eingabe und v das aktuelle Kellerwort ist. Nachfolgekonfigurationen: Gilt (z,y,v) = (z,ay,v c), so lässt sich jede mit (z,a,c,...) beginnende Instruktion (= Programmzeile) (z,a,c,u,z ) anwenden, wodurch (z,y,v) in (z,y,v u) überführt wird. Weiter lässt sich auf (z,y,v) = (z,y,v c) jede mit (z,λ,c,...) beginnende Instruktion (z,λ,c,u,z ) anwenden, wodurch (z,y,v) in (z,y,v u) überführt wird. M ist also deterministisch (d.h. ein DPDA), wenn Folgendes gilt: 1 Zu jedem Tripel (z,a,c) Z Σ Γ gibt es höchstens eine mit (z,a,c,...) beginnende Instruktion. 2 Zu jedem Paar (z,c) Z Γ gibt es höchstens eine mit (z,λ,c,...) beginnende Instruktion; und, falls es solch eine Instruktion (z,λ,c,...) gibt, dann gibt es keine Instruktion, die mit (z,a,c,...) für ein a Σ beginnt. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 41 / 53
42 Beschreibung der Arbeitsweise von M (Forts.) Eine mögliche Rechnung bei Eingabe x ist eine mit der Startkonfiguration (z 0,x,b 0 ) beginnende Konfigurationenfolge (wobei der Begriff der Konfigurationenfolge wie bei TMs mit Hilfe des Begriffs der Nachfolgekonfiguration definiert ist). Die Akzeptanz von x wird auf zwei unterschiedliche Arten definiert: M kann x vollständig einlesen und befindet sich nach dem Einlesen von x in einem Endzustand (= Akzeptanz via Endzustände). M kann x vollständig einlesen und nach dem Einlesen von x ist der Keller leer, d.h. enthält nur das Bottomelement (= Akzeptanz via leerem Keller; hier kann man auf die Endzustände verzichten). (Im nichtdeterministischen Fall ist dies so zu lesen, dass dies für eine mögliche Rechnung gilt.) Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 42 / 53
43 Beispiel 1: L = {0 n 1 n : n 0} Ein Kellerautomat M zur Erkennung der Sprache L = {0 n 1 n : n 0} via leerem Keller kommt mit folgenden Instruktionen aus (Γ = {b 0,0}): Z Σ {λ} Γ Γ Z z 0 0 c (c Γ bel.) c0 z 0 z λ z 1 z λ z 1 M liest im Startzustand z 0 den ersten aus Nullen bestehenden Wortteil und speichert die gelesenen Nullen im Keller. Kommt M zu der ersten 1, so geht M in den Zustand z 1 und entfernt für jede gelesene 1 eine 0 aus dem Keller. Hat die Eingabe x nicht die Gestalt x = 0 m 1 n, so kann M die Eingabe nicht komplett lesen, verwirft also. Dasselbe gilt für x = 0 m 1 n mit m < n. Im Falle von m n wird die Eingabe komplett gelesen. Der Keller ist danach genau dann leer, wenn m = n. Der Automat M ist deterministisch. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 43 / 53
44 Beispiel 1: L = {0 n 1 n : n 0} Folgende Variante M von M erkennt L = {0 n 1 n : n 0} via Endzustände, wobei E = {z 0,z 2 } (und wobei c Γ = {b 0,0} bel.): Z Σ {λ} Γ Γ Z z 0 0 c c0 z + 0 z c c0 z + 0 z λ z 1 z λ z 1 z 1 λ b 0 b 0 z 2 Der Automat M arbeitet also wie der Automat M, ändert aber den (Start- und End-)Zustand z 0 in z o + nach Lesen der ersten Null und geht bei leerem Keller vermöge eines spontanen Übergangs noch vom Zustand z 1 in den Endzustand z 2. Der Automat M ist ebenfalls deterministisch. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 44 / 53
45 Beispiel 2: L = {ww R : w {0,1} } Ein Kellerautomat M zur Erkennung der Sprache L = {ww R : w {0,1} } via leerem Keller kommt mit folgenden Instruktionen aus (wobei Γ = {b 0,0,1}): Z Σ {λ} Γ Γ Z z 0 i c ci z 0 (i Σ, c Γ) z 0 i i λ z 1 (i Σ) z 1 i i λ z 1 (i Σ) M speichert im Startzustand z 0 die gelesenen Bits i = 0,1 im Keller, rät die Wortmitte, und vergleicht dann im Zustand z 1 das Restwort mit dem (durch die last-in-first-out-speicherung gespiegelt) gespeicherten Anfangsteil. M ist nichtdeterministisch (da es zwei verschiedene mit (z 0,i,i,...) beginnende Instruktionen gibt). Man kann zeigen, dass die Sprache L von keinem deterministischen Kellerautomaten erkannt wird. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 45 / 53
46 Maschinencharakterisierung von KF: Satz SATZ. Folgende Aussagen sind äquivalent: L ist kontextfrei. L {λ} wird von einem nd. Kellerautomaten via leerem Keller erkannt. L wird von einem nd. Kellerautomaten via Endzuständen erkannt. Beweis: s. Vorlesung Formale Sprachen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 46 / 53
47 Maschinencharakterisierung von KF: Anmerkungen Im deterministischen Fall fallen Akzeptanz via leerem Keller und Akzeptanz via Endzuständen nicht zusammen, sondern ersteres Akzeptanzkriterium ist mächtiger. Eine Sprache heisst deterministisch kontextfrei, wenn sie von einem det. Kellerautomaten via leerem Keller erkannt wird. Beispiele: L = {0 n 1 n : n 0} ist deterministisch kontextfrei. L = {ww R : w {0,1} } ist kontextfrei aber nicht det. kontextfrei. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 47 / 53
48 15.4 Exkurs: Lineare Sprachen Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 48 / 53
49 Exkurs: Lineare Sprachen Zum Ende des Kapitels werfen wir noch einen kurzen Blick auf die linearen Sprachen. Für die linearen Sprachen kann man Verschärfungen der Chomsky-Normalform und des Pumpinglemmas einführen. Wir geben diese ohne Beweis an. Mit Hilfe des Pumpinglemmas für LIN geben wir dann ein Beipiel für eine kontextfreie Sprache L an, die nicht linear ist, und zeigen hiermit die Echtheit der Inklusion LIN KF im Chomsky-Hierarchiesatz. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 49 / 53
50 Lineare Sprachen: Chomsky-Normalform und Pumpinglemma Für lineare Sprachen hat Chomsky ebenfalls eine Normalform eingeführt, mit deren Hilfe man ein (verschärftes) Pumpinglemma für lineare Sprache erhält: CHOMSKY-NORMALFORM FÜR LINEARE SPRACHEN: Eine lineare Grammatik G = (N,T,P,S) ist in Chomsky-Normalform, falls G λ-treu ist und neben der eventuellen λ-regel S λ alle Regeln eine der folgenden Formen haben: X ay Ya a (X,Y N, a T ) PUMPINGLEMMA FÜR LINEARE SPRACHEN: Zu jeder linearen Sprache L Σ gibt es eine Zahl p N, 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: vx λ uvxy < p (im kontextfreien Fall hatten wir hier vwx < p) n 0 (z n = uv n wx n y L) Hierbei lässt sich solch eine Zahl p aus jeder linearen Grammatik G, die L erzeugt, effektiv berechnen. Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 50 / 53
51 Lineare Sprachen: Nachweis der Nichtlinearität von Sprachen mit Hilfe des Pumpinglemmas für LIN LEMMA 3: Die Sprache L = {0 n 1 n 0 m 1 m : n,m 1} ist nicht linear. BEWEIS. Man zeigt dies indirekt. Widerspruchsannahme: L linear. Wähle p wie im Pumpinglemma für LIN passend zu L. Das Wort z = 0 p 1 p 0 p 1 p ist in L und erfüllt die Bedingung z p. Nach dem Pumpinglemma gibt es also eine Zerlegung z = uvwxy mit obigen Eigenschaften (i) - (iii). Es gilt daher: Wegen (i) ist vx nicht leer. Wegen (ii) gilt uvxy p (also: uv p und xy p), d.h. v ist im ersten, x im vierten Block von z enthalten. In z 0 = uv 0 wx 0 y werden also Block 1 und/oder Block 4 verkürzt während Block 2 und 3 unverändert bleiben. ALSO: z 0 L im Widerspruch zu (iii). Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 51 / 53
52 Lineare Sprachen: LIN KF KOROLLAR 3: LIN KF. BEWEIS. Da nach dem Inklusionslemma LIN KF gilt, genügt es eine kontextfreie Sprache L anzugeben, die nicht linear ist. Die in Lemma 3 als nicht-linear nachgewiesene Sprache L = {0 n 1 n 0 m 1 m : n,m 1} ist aber kontextfrei. Z.B. wird L von der kf. Grammatik G = ({S,A},{0,1},P,S) mit den Regeln erzeugt. S AA A 0A1 A 01 Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 52 / 53
53 Lineare Sprachen: Abschlusseigenschaften Das obige Beispiel zeigt, dass die Klasse der linearen Sprachen nicht gegen Verkettung abgeschlossen ist. KOROLLAR 4: LIN ist nicht gegen Verkettung abgeschlossen. BEWEIS. Die nicht-lineare Sprache L = {0 n 1 n 0 m 1 m : n,m 1} lässt sich als Verkettung der Sprache L = {0 n 1 n : n 1} mit sich selbst darstellen: L = L L. Die Sprache L ist aber linear (wie wir schon in Kapitel 13 gesehen haben): L wird von der linearen Grammatik G = ({S},{0,1},P,S) mit den Regeln erzeugt. S 0S1 01 Theoretische Informatik (SoSe 2018) 15. Die kontextfreien Sprachen I 53 / 53
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 17. DIE KONTEXTFREIEN SPRACHEN II: ABSCHLUSSEIGENSCHAFTEN, MASCHINENCHARAKTERISIERUNG, KOMPLEXITÄT Theoretische
MehrEINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2011 17. DIE CHOMSKY-HIERARCHIE Theoretische Informatik (SoSe 2011) 17. Die Chomsky-Hierarchie 1 / 15 Einleitung Die
MehrÜbungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN
Universität Heidelberg / Institut für Informatik 7. Juli 24 Prof. Dr. Klaus Ambos-Spies Nadine Losert Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 2 LÖSUNGEN Aufgabe Verwenden
Mehr24. Kontextfreie Sprachen
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
Mehr16. Die Chomsky-Hierarchie
16. Die Chomsky-Hierarchie Die Chomsky-Sprachen sind gerade die rekursiv aufzählbaren Sprachen: CH = RA Da es nicht rekursive (d.h. unentscheidbare) r.a. Sprachen gibt, ist das Wortproblem für Chomsky-Grammatiken,
MehrInformatik III - WS07/08
Informatik III - WS07/08 Kapitel 5 1 Informatik III - WS07/08 Prof. Dr. Dorothea Wagner dwagner@ira.uka.de Kapitel 5 : Grammatiken und die Chomsky-Hierarchie Informatik III - WS07/08 Kapitel 5 2 Definition
MehrAutomaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012
utomaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink utomaten und Formale Sprachen 1 Der CYK-lgorithmus Beispiel
MehrEINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2011 20. DIE REGULÄREN SPRACHEN Theoretische Informatik (SoSe 2011) 20. Die regulären Sprachen 1 / 46 Überblick Als
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung 17.11.2006 schindel@informatik.uni-freiburg.de 1 Prinzip des Kellerautomats Push-Down-Automaton (PDA) Ein Kellerautomat vereinigt
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 17. Januar 2012 INSTITUT FÜR THEORETISCHE 0 KIT 18.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
MehrKlausur zur Vorlesung Einführung in die Theoretische Informatik
Universität Heidelberg 19. Juli 2012 Institut für Informatik Prof. Dr. Klaus Ambos-Spies Dipl.-Math. Thorsten Kräling Klausur zur Vorlesung Einführung in die Theoretische Informatik LÖSUNGEN Es können
MehrEINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 16. DIE REGULÄREN SPRACHEN Theoretische Informatik (SoSe 2012) 16. Die regulären Sprachen 1 / 46 Überblick Als
MehrKontextfreie Sprachen
Kontextfreie Sprachen Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung
Mehr10 Kellerautomaten. Kellerautomaten
10 Kellerautomaten Bisher hatten wir kontextfreie Sprachen nur mit Hilfe von Grammatiken charakterisiert. Wir haben gesehen, dass endliche Automaten nicht in der Lage sind, alle kontextfreien Sprachen
MehrVorlesung Theoretische Informatik (Info III)
1 Vorlesung Theoretische Informatik (Info III) Prof. Dr. Dorothea Wagner Dipl.-Math. Martin Holzer 22. Januar 2008 Einleitung Motivation 2 Thema heute Kontextfreie Grammatiken: Lemma von Ogden Eigenschaften
MehrKontextfreie Sprachen
Kontextfreie Sprachen besitzen große Bedeutung im Compilerbau Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung durch
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE 0 18.01.2018 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität
MehrNachklausur zur Vorlesung Einführung in die Theoretische Informatik
Universität Heidelberg 11. Oktober 2012 Institut für Informatik Prof. Dr. Klaus Ambos-Spies Dipl.-Math. Thorsten Kräling Nachklausur zur Vorlesung Einführung in die Theoretische Informatik Musterlösungen
MehrÜbersicht. 3 3 Kontextfreie Sprachen
Formale Systeme, Automaten, Prozesse Übersicht 3 3.1 Kontextfreie Sprachen und Grammatiken 3.2 Ableitungsbäume 3.3 Die pre -Operation 3.4 Entscheidungsprobleme für CFGs 3.5 Normalformen für CFGs 3.6 Chomsky-Normalform
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (IV) 31.05.2017 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrLösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004
Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,
MehrDie mathematische Seite
Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion
MehrÜbungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 10. Januar 2018 Abgabe 23. Januar 2018, 11:00 Uhr (im
MehrÜbung zur Vorlesung Grundlagen der theoretischen Informatik. Aufgabenblatt 7 Lösungen. Wiederholung: Pumping-Lemma für kontextfreie Sprachen
Prof. Dr. Viorica Sofronie-Stokkermans Universität Koblenz-Landau Fachbereich 4: Informatik Dennis Peuter 01. Juni 2017 Übung zur Vorlesung Grundlagen der theoretischen Informatik Aufgabenblatt 7 Lösungen
MehrÜbungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 7 Vorlesung Theoretische Grundlagen der Informatik im W 16/17 Ausgabe 17. Januar 2017 Abgabe 31. Januar 2017, 11:00 Uhr (im
MehrÜbungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 7 Vorlesung Theoretische Grundlagen der Informatik im W 16/17 Ausgabe 17. Januar 2017 Abgabe 31. Januar 2017, 11:00 Uhr (im
MehrGrundlagen der Theoretischen Informatik
1 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 2 Kontextfreie Grammatiken Definition: Eine Grammatik G
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (III) 17.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Übung am 02.02.2012 INSTITUT FÜR THEORETISCHE 0 KIT 06.02.2012 Universität des Andrea Landes Schumm Baden-Württemberg - Theoretische und Grundlagen der Informatik
MehrADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr
Bemerkung: Jede NDTM N (die die Sprache L(N) akzeptiert) kann in eine deterministische Turing-Maschine M konvertiert werden, die ebenfalls genau die Sprache L(N) akzeptiert. Beweisidee: Die Berechnungspfade
MehrPumping-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.
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. Sie erzeugt z.b. das Wort aabbcc: S asbc aabcbc aabhbc aabhcc
MehrAutomaten und formale Sprachen Notizen zu den Folien
13 Kellerautomaten Automaten und formale Sprachen Notizen zu den Folien Warum ein Automatenmodell für kontextfreien Sprachen (zu Folie 233) Manche Konstruktionen und Verfahren lassen sich besser mit Hilfe
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 18.01.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung 16.11.2006 schindel@informatik.uni-freiburg.de 1 Informatik III 7. Vorlesung - 2 Informatik III 7. Vorlesung - 3 Informatik III
MehrEinführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 7
Prof. J. Esparza Technische Universität München S. Sickert, J. Krämer KEINE ABGABE Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt 7 Übungsblatt Wir unterscheiden zwischen Übungs-
MehrUmformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.
Chomsky-0-Grammatik Rek. Aufz. Satz T5.2.2: Wenn L durch eine Chomsky-0- Grammatik G beschrieben wird, gibt es eine NTM M, die L akzeptiert. Beweis: Algo von M: Schreibe S auf freie Spur. Iteriere: Führe
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrDefinition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:
4.7 Kellerautomaten In der Literatur findet man häufig auch die Bezeichnungen Stack-Automat oder Pushdown-Automat. Kellerautomaten sind, wenn nichts anderes gesagt wird, nichtdeterministisch. Definition
MehrReguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,
Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen
MehrEinführung in die Computerlinguistik
Einführung in die Computerlinguistik Kontextfreie Sprachen und Pushdown-Automaten Dozentin: Wiebke Petersen WS 2004/2005 Wiebke Petersen Formale Komplexität natürlicher Sprachen WS 03/04 Wiederholung c
MehrNichtdeterministischer Kellerautomat
1 Nichtdeterministischer Kellerautomat endlicher Automat mit Zusatzspeicher in Form eines Kellers (Stapel, Stack) mit Speicheroperationen pro Übergang Keller über X: w X mit den Operationen push, head,
MehrDeterministischer Kellerautomat (DPDA)
Deterministische Kellerautomaten Deterministischer Kellerautomat (DPDA) Definition Ein Septupel M = (Σ,Γ, Z,δ, z 0,#, F) heißt deterministischer Kellerautomat (kurz DPDA), falls gilt: 1 M = (Σ,Γ, Z,δ,
Mehr1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!
Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 23/4 ILKD Prof. Dr. D. Wagner 2. Februar 24. Klausur zur Vorlesung Informatik III Wintersemester 23/24 Mit Lösung! Beachten Sie:
Mehr2.2 Reguläre Sprachen Endliche Automaten
2.2.1 Endliche Automaten E I N G A B E Lesekopf endliche Kontrolle Signal für Endzustand Ein endlicher Automat liest ein Wort zeichenweise und akzeptiert oder verwirft. endlicher Automat Sprache der akzeptierten
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (IV) 15.06.2016 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrFrank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat
Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat
Mehrkontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung
Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben
MehrAutomaten und formale Sprachen Klausurvorbereitung
Automaten und formale Sprachen Klausurvorbereitung Rami Swailem Mathematik Naturwissenschaften und Informatik FH-Gießen-Friedberg Inhaltsverzeichnis 1 Definitionen 2 2 Altklausur Jäger 2006 8 1 1 Definitionen
MehrBinärbäume und Pfade
Binärbäume und Pfade Bevor wir uns dem Pumping Lemma für Typ-2 Sprachen widmen, wollen wir einen einfachen Satz über Binärbäume beweisen. Als Binärbaum bezeichnen wir hier einen Baum, bei dem jeder Knoten,
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 15.01.2015 INSTITUT FÜR THEORETISCHE 0 KIT 15.01.2015 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
MehrZentralübung zur Vorlesung Theoretische Informatik
SS 2015 Zentralübung zur Vorlesung Theoretische Informatik Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2015ss/theo/uebung/ 7. Mai 2015 ZÜ THEO ZÜ IV Übersicht: 1.
MehrInformatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 9201
Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Wiederholung Kapitel 3 und 4 http://pingo.upb.de Zugangsnummer: 9201 Dozent: Jun.-Prof. Dr.
MehrDeterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen
Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 15 + 16 vom 17.12.2012 und 20.12.2012 Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen
Mehr8. Turingmaschinen und kontextsensitive Sprachen
8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten
MehrEin Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).
1 Grammatiken Autor: Tilman Blumenbach Letzte Änderung: 28. Juni 2012 18:15 Ziel von Grammatiken Wollen die Struktur von Sprachen modellieren und charakterisieren. Beispiel Ein Satz der deutschen Sprache
MehrGrundlagen der theoretischen Informatik
Grundlagen der theoretischen Informatik Kurt Sieber Fakultät IV, Department ETI Universität Siegen SS 2013 Vorlesung vom 04.06.2013 An den Transitionen sieht man zunächst, dass nur die folgenden Zustandsübergänge
Mehr{a i b i i 0} FORMALE SYSTEME. Kellerautomaten. (Nicht)Abschlusseigenschaften für Typ 2. Ein Berechnungsmodell für Typ-2-Sprachen
(Nicht)Abschlusseigenschaften für Typ 2 FORMALE SYSTEME 15. Vorlesung: Einleitung Kellerautomaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Satz: Wenn L, L 1 und L 2 kontextfreie Sprachen sind,
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrAufgabentypen: Spickerblatt: kontextfrei (Typ 2): zusätzlich: u ist eine!"# v 1
Info4 Stoff Aufgabentypen: Grammatik CH einordnen NFA DFA Grammatik Chomsky-NF CYK-Algorithmus: Tabelle / Ableitungsbäume Grammatik streng kf. Grammatik Grammatik Pumping Lemma Beweis, dass Gr. nicht reg,
MehrI.5. Kontextfreie Sprachen
I.5. Kontextfreie prachen Zieht man in Betracht, dass BNF-yteme gerade so beschaffen sind, dass auf der linken eite immer genau ein Nichtterminal steht, so sind das also gerade die Ableitungsregeln einer
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (I) 3.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Organisatorisches 1. Teilklausur: Mittwoch,
MehrTheorie der Informatik
Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man
Mehr19. Nichtdeterministische Turingmaschinen und ihre Komplexität
19. Nichtdeterministische Turingmaschinen und ihre Komplexität Bei einem Turingmaschinenprogramm P aus bedingten Anweisungen wird durch die Forderung i a b B j i a b B j i a sichergestellt, dass zu jeder
Mehr2. Übungsblatt 6.0 VU Theoretische Informatik und Logik
2. Übungsblatt 6.0 VU Theoretische Informatik und Logik 25. September 2013 Aufgabe 1 Geben Sie jeweils eine kontextfreie Grammatik an, welche die folgenden Sprachen erzeugt, sowie einen Ableitungsbaum
MehrDas Halteproblem für Turingmaschinen
Das Halteproblem für Turingmaschinen Das Halteproblem für Turingmaschinen ist definiert als die Sprache H := { T w : T ist eine TM, die bei Eingabe w {0, 1} hält }. Behauptung: H {0, 1} ist nicht entscheidbar.
Mehr(Prüfungs-)Aufgaben zu formale Sprachen
(Prüfungs-)Aufgaben zu formale Sprachen (siehe auch bei den Aufgaben zu endlichen Automaten) 1) Eine Grammatik G sei gegeben durch: N = {S, A}, T = {a, b, c, d}, P = { (S, Sa), (S, ba), (A, ba), (A, c),
MehrF2 Zusammenfassung Letzte Tips zur Klausur
F2 Zusammenfassung Letzte Tips zur Klausur Berndt Farwer FB Informatik, Uni HH F2-ommersemester 2001-(10.6.) p.1/15 Funktionen vs. Relationen Funktionen sind eindeutig, Relationen brauchen nicht eindeutig
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 7 15. Juni 2010 Einführung in die Theoretische
Mehr3 kontextfreie Sprachen
Hans U. Simon Bochum, den 7.10.2008 Annette Ilgen Beispiele zur Vorlesung Theoretische Informatik WS 08/09 Vorbemerkung: Hier findet sich eine Sammlung von Beispielen und Motivationen zur Vorlesung Theoretische
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (III) 18.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrTheoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009
Theoretische Informatik Rainer Schrader Institut für Informatik 9. Juli 2009 1 / 41 2 / 41 Gliederung die Chomsky-Hierarchie Typ 0- Typ 3- Typ 1- Die Programmierung eines Rechners in einer höheren Programmiersprache
MehrWas bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen
Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen (Kontextsensitive) Sprachen L 2 Menge aller kontextfreien
MehrHauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Hier Aufkleber mit Name und Matrikelnr. anbringen
MehrSpracherkennung (Syntaxanalyse)
Kellerautomaten Kellerautomaten 8 Spracherkennung (Syntaxanalyse) Algorithmus gesucht, der für L T (möglichst schnell) entscheidet, ob w L (Lösung des Wortproblems) Grammatik Automat Aufwand rechtslinear
MehrNormalformen für kontextfreie Grammatiken. Noam CHOMSKY, Sheila GREIBACH. Bäume. Ableitungen in kontextfreien Grammatiken. Grammatik G = (N,T,P,S)
Noam CHOMSKY, Sheila GREIBACH Normalformen für kontextfreie Grammatiken Noam CHOMSKY (*1928 ) Sheila GREIBACH (*1939) Grammatik G = (N,T,P,S) GREIBACH Normalform: A aw, w N* Erweiterte GREIBACH Normalform:
MehrTheoretische Informatik I
Theoretische Informatik I Rückblick Theoretische Informatik I 1. Mathematische Methoden 2. Reguläre Sprachen 3. Kontextfreie Sprachen Themen der Theoretischen Informatik I & II Mathematische Methodik in
MehrFormale Sprachen. Script, Kapitel 4. Grammatiken
Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprache bedeutend für die Syntaxdefinition und -analyse von Programmiersprachen Automaten
MehrBeweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann
Automaten und Formale prachen alias Theoretische Informatik ommersemester 2011 Dr. ander Bruggink Übungsleitung: Jan tückrath Wir beschäftigen uns ab jetzt einige Wochen mit kontextfreien prachen: Kontextfreie
MehrTheorie der Informatik
Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014 Kontextsensitive und allgemeine Grammatiken Wiederholung: (kontextsensitive)
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 13. Vorlesung 07.12.2006 1 Überblick: Die Church- Turing-These Turing-Maschinen 1-Band Turing-Maschine Mehrband-Turing-Maschinen Nichtdeterministische
MehrRekursiv aufzählbare Sprachen
Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben
MehrBerechenbarkeitstheorie 7. Vorlesung
1 Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster W 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz. Das Pumpinglemma
MehrKapitel 3. Kontextfreie Sprachen. Induktive Charakterisierung der Sprache L der korrekten Klammerausdrücke: (w) L, falls w L vw L, falls v, w L
Kapitel 3 Kontextfreie Sprachen Induktive Charakterisierung der Sprache L der korrekten Klammerausdrücke: s. Übung ε L (w) L, falls w L vw L, falls v, w L (R0) (R1) (R2) Für beliebige w {(, )} kann w L
MehrÜbungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 7 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 24. Januar 2018 Abgabe 6. Februar 2018, 11:00 Uhr (im
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Deterministische Kellerautomaten Von besonderem Interesse sind kontextfreie Sprachen,
MehrEinführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik. SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch
Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch 3. Teilklausur 25. 07. 2007 Persönliche Daten bitte gut leserlich
MehrA : z z A : z z : ( z, x, z ) δ
Informatik IV, SoS2003 1 Definition 1.1 Ein Quintupel A =(X,Z,z 0,δ,Z f )heißt nichtdeterministischer endlicher Automat (NEA): 1. X, Z sind endliche nichtleere Mengen. 2. z 0 Z 4. δ Z X Z Informatik IV,
MehrKapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14
Kapitel: Die Chomsky Hierarchie Die Chomsky Hierarchie 1 / 14 Allgemeine Grammatiken Definition Eine Grammatik G = (Σ, V, S, P) besteht aus: einem endlichen Alphabet Σ, einer endlichen Menge V von Variablen
MehrFormale Grundlagen der Informatik
Formale Grundlagen der Informatik / 2015 1 Reguläre Ausdrücke Kommen in der Praxis immer dann vor, wenn standardisierte Eingaben erforderlich sind: Telefonnummern: +Land (0) Ort Anschluß Dateinamen: (A-Z,
MehrKlammersprache Definiere
Klammersprache w=w 1...w n {(,)}* heißt korrekt geklammert, falls die Anzahl ( ist gleich der Anzahl ). in jedem Anfangsstück w 1,...,w i (i n) ist die Anzahl ( nicht kleiner als die Anzahl ). Definiere
MehrInformatik 3 Theoretische Informatik WS 2016/17
Zwischenklausur 2 20. Januar 2017 Informatik 3 Theoretische Informatik WS 2016/17 Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg Institut für Informatik Name: Übungsgruppe: Schreiben Sie
Mehrkontextfreie Sprachen: Normalformen
1 kontextfreie Sprachen: Normalformen Zur Erinnerung: Kontextfreie Sprachen sind diejenigen, die von Grammatiken erzeugt werden, die auf allen linken Regelseiten nur je ein Nichtterminalsymbol haben. Aufgrund
MehrAlgorithmen und Datenstrukturen (EI)
Algorithmen und Datenstrukturen (EI) ADS Zentralübung Stefan Schmid 4. Februar 2009 Einturnen... Ein heutiger Computer aus dem Saturn ist im Prinzip eine Turing Maschine? Nein. Zum Beispiel Sprache L =
MehrTheoretische Informatik und Logik Übungsblatt 2 (2017S) Lösung
Theoretische Informatik und Logik Übungsblatt 2 (2017) en Aufgabe 2.1 Geben ie jeweils eine kontextfreie Grammatik an, welche die folgenden prachen erzeugt, sowie eine Linksableitung und einen Ableitungsbaum
MehrZusammenfassung. Endliche Sprachen. Fazit zu endlichen Automaten. Teil 4: Grammatiken und Syntaxanalyse
Endliche Sprachen Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für L. Zusammenfassung Beschreibungsformen für reguläre Sprachen:
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung 09.11.2006 schindel@informatik.uni-freiburg.de 1 Äquivalenzklassen Definition und Beispiel Definition Für eine Sprache L Σ* bezeichnen
MehrDefinition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.
Reguläre Ausdrücke Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (i) ist ein regulärer Ausdruck über Σ. (ii) ε ist ein regulärer Ausdruck über Σ. (iii) Für jedes a Σ ist a ein regulärer
Mehr2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2014/2015
2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2014/2015 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie
MehrWorterkennung in Texten speziell im Compilerbau 14. April Frank Heitmann 2/65
Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges kennengelernt,
Mehr