4.2 Die Chomsky Normalform

Größe: px
Ab Seite anzeigen:

Download "4.2 Die Chomsky Normalform"

Transkript

1 4.2 Die Chomsky Normalform Für algorithmische Problemstellungen (z.b. das Wortproblem) aber auch für den Nachweis von Eigenschaften kontextfreier Sprachen ist es angenehm, von CFG in Normalformen auszugehen. Eine der wichtigsten Normalformen für CFG ist die Chomsky Normalform. Definition (Chomsky Normalform (CNF)). Sei G =(V,Σ,P,S) eine CFG. G heißt in CNF, falls alle Produktionen in G von der Form a für ein a Σ oder BC für Nichtterminale B, C sind. Wir sprechen von einer CNF-Grammatik, um eine CFG in CNF zu bezeichnen. Z.B. ist die CFG mit den Regeln S D B, D SD d, a, B b in CNF; nicht aber die CFG mit den Regeln S asb ab. Satz Zu jeder CFG G mit ε/ L(G) gibt es eine äquivalente CFG in CNF. Beweis. Sei G =(V,Σ,P,S) eine CFG mit ε/ L(G). Wir geben nun ein Verfahren an, mit dem G in eine äquivalente CFG G in CNF überführt werden kann. 1. Zunächst erstellen wir eine zu G äquivalente ε-freie CFG G 1. Wegen ε/ L(G), enthält diese keine ε-regeln. 2. Im zweiten Schritt führen wir G 1 in eine äquivalente CFG G 2 ohne Kettenregeln, d.h. ohne Regeln der Form B, über. Dazu wenden wir das in lgorithmus 15 (Seite 147) angegebene Verfahren an. Der erste Teil von lgorithmus 15 läßt sich mit einem lgorithmus durchführen, der die starken Zusammenhangskomponenten des Digraphen (V,E), wobei (,B) E genau dann, wenn B eine Kettenregel in G 1 ist, berechnet, daraus den zugehörigen azyklischen Digraphen G der starken Zusammenhangskomponenten erstellt und anschließend eine topologische Sortierung für G bestimmt. 3. G 2 wird durch eine äquivalente CFG G 3 ersetzt, in der sämtliche Regeln die Form a oder B 1 B 2...B k mit k 2 haben, wobei,b 1,...,B k Variablen sind und a ein Terminal. Hierzu gehen wir wie folgt vor. Jede Regel yaz mit yz 1 in G 2 wird durch y a z ersetzt. Dabei ist a ein neues Nichtterminal mit der Regel a a. (D.h. aus a ist nur das Wort a ableitbar.) In Schritt 3 ist es offenbar ausreichend, nur für solche Terminalzeichen a ein neues Nichtterminal a einzuführen, für die es nach usführung von Schritt 1 eine Regel x gibt, so daß x 2 und a in x vorkommt. Weiter kann man a = setzen, falls eine bereits existente Variable ist, für die es genau die Regel a gibt. 146

2 4. Im letzten Schritt ersetzen wir G 3 durch eine äquivalente CNF-Grammatik G 4. Hierzu müssen alle Regeln B 1...B k mit k 3 von G 3 in CNF-Gestalt gebracht. Die Vorgehensweise ist wie folgt. Für jede Regel B 1 B 2...B k in G 3 mit k 3 fügen wir neue, paarweise verschiedene Nichtterminale C 1,C 2,...C k 2 ein und ersetzen die Regel B 1 B 2...B k durch folgende Regeln: B 1 C 1 C 1 B 2 C 2. C k 3 B k 2 C k 2 C k 2 B k 1 B k Die neuen Variablen C 1,C 2,...C k 2 tauchen in keinen weiteren Regeln auf. Die Motivation für die Ersetzung der Regel B 1 B 2...B k durch die angegebenen CNF-Regeln besteht darin, jede nwendung der Regel B 1...B k in G 3 durch die Rechtsableitung in G 4 zu simulieren. B 1 C 1 B 1 B 2 C 2 B 1 B 2 B 3 C 3... B 1 B 2...B k 2 C k 2 B 1 B 2...B k 2 B k 1 B k Da L(G)=L(G 1 )=L(G 2 )=L(G 3 )=L(G 4 ) und da G 4 offenbar eine CNF-Grammatik ist, ist hiermit die ussage von Satz bewiesen. lgorithmus 15 G 1 G 2 (Elimination von Kettenregeln) (* Teil 1: entferne Zyklen *) WHILE 1,..., n V mit 1 2, 2 3,..., n 1 n, n 1 DO ersetze 2,..., n durch 1 entferne die Regel 1 1 bestimme eine Nummerierung 1,..., k der Nichtterminale, so dass gilt: aus i j folgt i<j (* Teil 2: entferne die verbleibenden Kettenregeln *) FOR i = k,k 1,...,1 DO FOR j = i+1,...,k DO IF i j THEN streiche die Regel i j FOR LL Regeln j x DO füge die Regel i x hinzu. FI 147

3 Bemerkung (Elimination von Kettenregeln). In lgorithmus 15 ist die Reihenfolge, in der die Regeln i j entfernt werden, wesentlich. Z.B. für die Grammatik G mit den Regeln S, B und B b wird zuerst B durch b ersetzt und dann S durch S b. Würde man zuerst S eliminieren, dann würde man die Grammatik bestehend aus der Regeln S B, b, B b erhalten, welche die Kettenregel S B enthält. Selbst wenn man eventuell neu entstehende Kettenregeln ignoriert, kann das Verfahren fehlschlagen, falls die im lgorithmus beschriebene Reihenfolge nicht eingehalten wird. In obigem Beispiel würde man die Grammatik mit den Regeln b, B b erhalten, in der es keine Regel für das Startsymbol S gibt. Die erzeugte Sprache dieser Grammatik ist leer und stimmt somit nicht mit der durch G definierten Sprache L(G)={b} überein. Beispiel (Erstellung der CNF). Für die CFG mit den Regeln S C und C acb ab arbeitet der im Beweis von Satz angegebene lgorithmus zur Erstellung einer äquivalenten CNF-Grammatik wie folgt. Da es keine Zyklen 1 2,..., n 1 n, n 1 gibt, wird im ersten Schritt nur die Regel S C entfernt und durch die beiden Regeln S acb und S ab ersetzt. Im zweiten Schritt werden neue Nichtterminale a = und b = B mit den Regeln a und B b hinzugefügt. nschließend werden sämtliche Vorkommen von a bzw. b auf der rechten Seite einer Regel durch bzw. B ersetzt. Wir erhalten das Produktionssystem S CB B C CB B a B b Im letzten Schritt werden die beiden Regeln S CB und C CB durch ersetzt. 14 S D, D CB, C E, E CB, a,b b 14 Soweit der lgorithmus. Man sieht, daß einige Optimierungen möglich sind. Beispielsweise kann man D = E setzen und C durch S ersetzen. 148

4 Beispiel (Erstellung der CNF, Elimination von Kettenregeln). Wir betrachten die CFG mit den folgenden Regeln. S ab ac B S Ba D d ddd B C cd C D c Zunächst werden mit lgorithmus 15 die Kettenregeln S, B, B S, C und C D entfernt. Wir erstellen folgenden Digraphen. S C S C D B D Die Variablen S,, B bilden eine starke Zusammenhangskomponente. Zusätzlich bilden jeweils C und D einelementige starke Zusammenhangskomponenten. Wir ersetzen und B durch S und streichen die Regel S S. Man erhält die Grammatik mit folgenden Regeln: S as ac C csd Sa C D c D d ddd Im letzten Schritt wird zuerst C D durch C d ddd, dann S C durch S d ddd c ersetzt. uf die so erhaltene Grammatik wenden wir den im Beweis von Satz angegebenen lgorithmus an. Dieser bringt z.b. die Regel C ddd in CNF-Gestalt, indem ein neues Nichtterminal d eingefügt wird und C ddd zunächst durch C d DD, d d, und dann C d DD durch C d D 2 und D 2 DD ersetzt wird. Entsprechend wird mit der Regel S ddd verfahren. Die Regeln werden nun durch S as ac Sa S a S a C Sa a a c c ersetzt. Die Eliminierung der Regel S csd wird durch Einfügen der Regeln S c E und E S d vorgenommen. Die Größe der konstruierten CNF-Grammatik Die Größe einer CFG G wird an der nzahl an Nichtterminalen und der Summe der Längen aller Produktionen gemessen und mit size(g) bezeichnet. Das Terminalalphabet Σ wird als konstant angenommen und geht daher nicht in die Größe der Grammatik ein. Mit der beschriebenen Methode zur Erstellung einer äquivalenten CNF-Grammatik G gilt size(g )=O ( size(g) 2), 149

5 sofern eine CFG ohne ε-regeln vorliegt. Man beachte, daß die Elimination der Kettenregeln die Größe der Grammatik quadratisch vergrößern kann; während der Ersetzungsprozeß B 1...B k B 1 C 1, C 1 B 2 C 2,..., C k 2 B k 1 B k 2 keinen Einfluß auf die asymptotische Größe der Grammatik hat. Der in bschnitt 2 (siehe Seite 89) beschriebene lgorithmus, der eine gegebene CFG in eine äquivalente ε-freie CFG überführt, kann zu einem exponentiellen Blow-Up führen. Es gibt jedoch ein effizientes Verfahren, welches die asymptotische Größe der CFG unverändert läßt (siehe Übungen). 4.3 Der Cocke-Younger-Kasami lgorithmus Um das Wortproblem für kontextfreie Sprachen zu lösen, gehen wir von einer Darstellung der Sprache durch eine CNF-Grammatik G =(V,Σ,P,S) aus. Sei w = a 1 a 2...a n Σ. Für den Test, ob w L(G) liegt, wenden wir die Methode des dynamischen Programmierens zur Bestimmung der Variablenmengen V[i,j] = { V : w i,j } an. Dabei ist w i,j = a i a i+1...a i+j 1 und 1 i n, 1 j n+1 i. Es gilt: w liegt genau dann in L(G), wenn S V[1,n]. Da G in CNF ist, gilt V[i,1]= { V : a i }. Für j 2 und V gilt wi,j genau dann, wenn es eine Regel BC und einen Index l {1,...,j 1} gibt, so daß B w i,l und C w i+l,j l. B C w i,l = a i...a i+l 1 w i+l,j l = a i+l...a i+j 1 w i,l w i+l,j l bbildung 46: bleitungsbaums für w i,j = a i a i+1...a i+j 1 Daher haben wir folgende rekursive Charakterisierung der Mengen V[i,j]. V[i,j] = j 1 l=1 { V : BC mit B V[i,l] C V[i+l,j l] }. 150

6 Diese Beobachtung wird im lgorithmus von Cocke-Younger-Kasami, kurz CYK-lgorithmus genannt, angewandt. Siehe lgorithmus 16 auf Seite 151. Dieser berechnet in Bottom-Up- Manier die Zeilen der folgenden Tabelle. V[1,n] V[1,n 1] V[2,n 1] V[1,n 2] V[2,n 2] V[3,n 2]. V[1, 2] V[2, 2] V[3, 2] V[4, 2]... V[n 1, 2] V[1, 1] V[2, 1] V[3, 1] V[4, 1]... V[n 1, 1] V[n, 1] a 1 a 2 a 3 a 4... a n 1 a n lgorithmus 16 Der CYK-lgorithmus (* Das Eingabewort sei w = a 1 a 2...a n. *) FOR i = 1,...,n DO V[i,1] := { V : a i }; FOR j = 2,...,n DO FOR i = 1,...,n + 1 j DO V[i,j] := ; FOR l = 1,...,j 1 DO V[i,j] := V[i,j] { V : BC mit B V[i,l] C V[i+l,j l]}; IF S V[1,n] THEN Return J. w L(G). ELSE Return NEIN. w L(G). FI Es ist offensichtlich, daß die Laufzeit des CYK-lgorithmus kubisch in der Länge des Eingabeworts ist und daß der Platzbedarf quadratisch ist, sofern die Grammatik als fest angesehen wird. Die Kosten beziehen sich auf den Fall, daß die kontextfreie Sprache durch eine feste CNF- Grammatik dargestellt ist. Die Größe der CNF-Grammatik wird daher als konstant angesehen. Wir erhalten folgenden Satz: Satz Das Wortproblem für CNF-Grammatiken läßt sich mit dem CYK-lgorithmus in Zeit O(n 3 ) und Platz O(n 2 ) lösen. Dabei ist n die Länge des Eingabeworts. Beispiel (CYK-lgorithmus). Die rbeitsweise des CYK-lgorithmus für die Sprache L = {a n b n : n 1}, dargestellt durch die CNF-Grammatik S C B C SB a B b, und das Wort w = aabb ist wie folgt. Im Initialisierungsschritt wird 151

7 V[1, 1]=V[2, 1]={} und V[3, 1]=V[4, 1]={B} gesetzt. Daraus ergibt sich V[1, 2]=V[3, 2]= und V[2, 2]={S}. Im zweiten Schleifendurchlauf erhalten wir V[1, 3]= und V[2, 3]={C}, da S V[2,2], B V[3,1] und C SB. Wegen V[1,1] und C V[2,3] ergibt sich V[1,4]= {S}. Die oben erwähnte Tabelle hat also die Gestalt: {S} {C} {S} {} {} {B} {B} a a b b Der lgorithmus terminiert also mit der ntwort J. Eigenschaften kontextfreier Sprachen Wie für reguläre Sprachen gibt es ein notwendiges Kriterium, das unter dem Stichwort Pumping Lemma bekannt ist und das für den Nachweis, daß eine Sprache nicht kontextfrei ist, hilfreich sein kann. Später diskutieren wir bschlußeigenschaften für die Klasse der kontextfreien Sprachen. 4.4 Das Pumping Lemma für kontextfreie Sprachen In nalogie zum Pumping Lemma für reguläre Sprachen gibt es ein notwendiges Kriterium für kontextfreie Sprachen. Wir werden dieses mit Hilfe der bleitungsbäume für CNF- Grammatiken beweisen. Satz (Pumping Lemma für kontextfreie Sprachen). Sei L eine kontextfreie Sprache. Dann gibt es eine natürliche Zahl n, so daß sich jedes Wort z L der Länge n wie folgt zerlegen läßt: z = uvwxy, wobei (1) vx 1 (2) vwx n (3) uv k wx k y L für alle k N. Beweis. Wir können o.e. annehmen, daß ε/ L. (Ist ε L, dann betrachten wir die Sprache L \{ε} anstelle von L.) Sei G eine CNF-Grammatik mit L = L(G) (siehe Satz 4.2.2, Seite 146). Weiter sei N = V die nzahl an Variablen in G. Die im Pumping Lemma genannte Konstante n ist wie folgt definiert: n = 2 N 152

8 Sei z L mit z n. Zu zeigen ist nun, dass sich z in fünf Teilwörter u,v,w,x,y zerlegen läßt, so dass Eigenschaften (1), (2) und (3) erfüllt sind. ls Hilfsmittel für die Definition solcher Teilwörter u, v, w, x, y verwenden wir einen bleitungsbaum T für z. Dieser ist ein Binärbaum mit z n Blättern. Innere Knoten mit genau einem Sohn repräsentieren eine Regel der Form a. Sie haben die Höhe 1. lle anderen inneren Knoten stehen für eine Regel der Form BC. Sie haben genau zwei Söhne. Die Höhe von T sei h+1. Es gilt: h log z logn = N. Sei v 0,v 1,...,v h+1 ein Pfad in T der Länge h+1 von der Wurzel v 0 zu einem Blatt v h+1. Weiter sei i die Markierung des Knotens v i, i = 0,1,...,h. Dann ist 0 = S, 1,..., h eine Folge von Variablen der Länge h+1 N+1. lso gibt es eine Variable und Indizes i,j {0,1,...,h}, so daß folgende drei Eigenschaften erfüllt sind: = i = j i < j i+1,..., h sind paarweise verschieden. Wir zerlegen z in z = uvwxy gemäß der Skizze in bbildung 47. S i j u v w x y z = uvwxy bbildung 47: Zerlegung von z in uvwxy 153

9 (1) Da G in CNF ist, ist v ε oder x ε. (Da v i ein innerer Knoten der Höhe > 1 ist, steht v i für das nwenden einer Regel der Gestalt i BC. Ist z.b. v j ein Nachfolger des mit B markierten Sohns von v i, so ist das aus C hergeleitete Wort ein Suffix von x. Somit ist x ε.) Es folgt: vx 1. (2) Wir betrachten den Teilbaum T mit Wurzel v i. T ist ein bleitungsbaum für die bleitung i vwx. Die Höhe von T ist h i+1, da v i,v i+1,...,v h+1 ein längster Pfad in T ist. Da i+1,..., h paarweise verschieden sind, gilt h i N. Die Höhe von T ist daher N+1. Da in jeder CNF-Grammatik die Höhe eines bleitungsbaum für ein Wort der Länge l mindestens logl + 1 ist, folgt hieraus: vwx 2 h i 2 N = n (3) bleitungen der Wörter uv k wx k y ergeben sich durch Kombinieren der bleitungen S u i y = uy, = j w, = i v j x = vx. Es folgt S uv k wx k y (also uv k wx k y L) für alle k N. bbildung 48 skizziert die bleitungsbäume für k = 0 und k = 2. Die Zerlegung z = uvwxy erfüllt also die drei geforderten Bedingungen. k = 0 : S uy uwy S k = 2 : S uy uvxy uvvxxy uv 2 wx 2 y S u w y u v v w x x y bbildung 48: Pumpeigenschaft für k = 0 und k = 2 154

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

Theoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK Theoretische Grundlagen der Informatik 0 08.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Letzte Vorlesung Eine

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen 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

Mehr

Theoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK Theoretische Grundlagen der Informatik 0 17.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Evaluation Ergebnisse

Mehr

Kontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen

Kontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Wortproblem: der CYK-Algorithmus Pumping Lemma für kontextfreie Sprachen

Mehr

Tutoraufgabe 1 (ɛ-produktionen):

Tutoraufgabe 1 (ɛ-produktionen): Prof aa Dr J Giesl Formale Systeme, Automaten, Prozesse SS 2010 M Brockschmidt, F Emmes, C Fuhs, C Otto, T Ströder Hinweise: Die Hausaufgaben sollen in Gruppen von je 2 Studierenden aus dem gleichen Tutorium

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 13.01.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Automaten 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

Mehr

Vorlesung Theoretische Informatik (Info III)

Vorlesung 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

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

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

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 18/19 Ausgabe 8. Januar 2019 Abgabe 22. Januar 2019, 11:00 Uhr (im

Mehr

Ein Fragment von Pascal

Ein Fragment von Pascal Ein Fragment von Pascal Wir beschreiben einen (allerdings sehr kleinen) Ausschnitt von Pascal durch eine kontextfreie Grammatik. Wir benutzen das Alphabet Σ = {a,..., z, ;, :=, begin, end, while, do} und

Mehr

Klammersprache Definiere

Klammersprache 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

Mehr

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

Einfü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-

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Übung am 4.2.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Kontextfreie (Typ-2) Sprachen

Kontextfreie (Typ-2) Sprachen Kontextfreie (Typ-2) prachen Bsp.: L 1 = { n 1 n n>} с {,1}* 1 1 L 2 = {w wє{,1}* und w=w rev } с {,1}* 11 1 ε L 3 = {w w hat genausoviele Nullen wie Einsen} с {,1}* B 1 ε 1 B 1 1 BB 1 11 11 11 11B 111

Mehr

Ogden s Lemma (T6.4.2)

Ogden s Lemma (T6.4.2) Weiteres Beispiel L={a r b s c t d u r=0 s=t=u} Nahe liegende Vermutung: L nicht kontextfrei. Kann man mit dem Pumping-Lemma nicht zeigen. r=0: Pumpen erzeugt Wort aus L. r>0: Pumpen der a s erzeugt Wort

Mehr

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

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Grammatik G mit L(G) = L(G ). Beweis im Beispiel (2.): G = (V,Σ, P, S) : P = {S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc}. (i) G

Mehr

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

Ü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

Kapitel 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: (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

Lösungen zu Übungsblatt 6

Lösungen zu Übungsblatt 6 Lösungen zu Übungsblatt 6 Aufgabe 1 Um nachzuweisen, dass eine Sprache L nicht kontextfrei ist, genügt es nach dem (starken) Pumping Lemma für kontextfreie Sprachen zu zeigen: Für jedes n 0 existiert ein

Mehr

Ogden s Lemma: Der Beweis (1/5)

Ogden s Lemma: Der Beweis (1/5) Ogden s Lemma: Der Beweis (1/5) Wir betrachten zuerst die Rahmenbedingungen : Laut dem auf der vorhergehenden Folie zitierten Satz gibt es zur kontextfreien Sprache L eine Grammatik G = (Σ, V, S, P) in

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen 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

Mehr

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

Ü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

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Grundlagen 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:

Mehr

Beweis des Pumping Lemmas

Beweis des Pumping Lemmas Beweis des Pumping Lemmas Die Sprache L sei eine Typ-2 Sprache, d.h. es gibt eine Typ-2 Grammatik G =(V,, P, S) in CNF, so dass L = L(G) gilt. Wir fixieren eine solche Grammatik G und wählen n = 2 V. Nun

Mehr

Formale Grundlagen der Informatik 1 Kapitel 7 Eigenschaften kontextfreier Sprachen

Formale Grundlagen der Informatik 1 Kapitel 7 Eigenschaften kontextfreier Sprachen Formale Grundlagen der Informatik 1 Kapitel 7 Eigenschaften kontextfreier Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 28. April 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/39

Mehr

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

Ü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

Binärbäume und Pfade

Binä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,

Mehr

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

kontextfreie 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

Mehr

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs)

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs) ank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert iese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen

Mehr

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

Informales Beispiel. Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen. Grammatiken. Anmerkungen Informales Beispiel Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 22. April 2014 I L IL ID L a b c D 0 1 2 3 4 Eine

Mehr

Informatik III - WS07/08

Informatik 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

Mehr

I.5. Kontextfreie Sprachen

I.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

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Musterlösung Informatik-III-Nachklausur

Musterlösung Informatik-III-Nachklausur Musterlösung Informatik-III-Nachklausur Aufgabe 1 (2+2+4+4 Punkte) (a) L = (0 1) 0(0 1) 11(0 1) 0(0 1) (b) Der Automat ist durch folgendes Übergangsdiagramm gegeben: 0, 1 0, 1 0, 1 0, 1 0 s q 1 1 0 0 q

Mehr

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.

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. 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

Mehr

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

Umformung 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

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

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

Grammatiken. Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen Grammatiken Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen Grammatiken eignen sich besonders zur Modellierung beliebig tief geschachtelter,

Mehr

Kontextfreie Sprachen

Kontextfreie 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

Mehr

Kontextfreie Sprachen

Kontextfreie Sprachen Kontextfreie Sprachen Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik Prof. Meer, Dr. Gengler Aufgabenblatt 7 Besprechung in KW 48 / Abgabe in KW 49 Heften Sie unbedingt alle Blätter Ihrer Lösung zusammen und geben Sie oben auf dem ersten Blatt Ihren

Mehr

Algorithmen und Datenstrukturen (EI)

Algorithmen 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 =

Mehr

a b b a a b b a Dank Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Chart-Parsing Chart-Parsing Vorlesung

a b b a a b b a Dank Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Chart-Parsing Chart-Parsing Vorlesung Dank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Diese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Grundlagen 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 ommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Grundlagen 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 ommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:

Mehr

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

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 Kap. 2: Endliche Automaten Myhill Nerode 2.4 Minimalautomat für reguläre Sprache Abschnitt 2.4.3 L Σ regulär der Äuivalenzklassen-Automat zu L ist ein DFA mit minimaler Zustandszahl (= index( L )) unter

Mehr

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik 2 Gesamtübersicht Organisatorisches; Einführung Ersetzungsverfahren:

Mehr

Definition 4 (Operationen auf Sprachen) Beispiel 5. Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A + = n 1 An

Definition 4 (Operationen auf Sprachen) Beispiel 5. Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A + = n 1 An Definition 4 (Operationen auf Sprachen) Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A 0 = {ɛ}, A n+1 = AA n A = n 0 An A + = n 1 An Beispiel 5 {ab, b}{a, bb} = {aba, abbb,

Mehr

Kapitel 2: Formale Sprachen Gliederung

Kapitel 2: Formale Sprachen Gliederung Gliederung 0. Motivation und Einordnung 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. Chomsky-Grammatiken 2.2. Reguläre Sprachen 2.3. 2/5, Folie 1 2017 Prof.

Mehr

Kontextfreie Grammatiken

Kontextfreie Grammatiken Kontextfreie Grammatiken Bisher haben wir verschiedene Automatenmodelle kennengelernt. Diesen Automaten können Wörter vorgelegt werden, die von den Automaten gelesen und dann akzeptiert oder abgelehnt

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (II) 11.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

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

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann. Der Satz von Kleene Wir haben somit Folgendes bewiesen: Der Satz von Kleene Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden

Mehr

Was 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 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

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

A : z z A : z z : ( z, x, z ) δ

A : 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,

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

Mehr

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

Ü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

2.1 Allgemeines. Was ist eine Sprache? Beispiele:

2.1 Allgemeines. Was ist eine Sprache? Beispiele: Was ist eine Sprache? Beispiele: (a) Deutsch, Japanisch, Latein, Esperanto,...: Natürliche Sprachen (b) Pascal, C, Java, Aussagenlogik,...: Formale Sprachen Wie beschreibt man eine Sprache? (i) Syntax

Mehr

3 kontextfreie Sprachen

3 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

Mehr

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen

Mehr

Formale Grundlagen der Informatik

Formale 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,

Mehr

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift Theoretische Informatik Mitschrift 2. Grammatiken und die Chomsky-Hierarchie Beispiel: Syntaxdefinition in BNF :=

Mehr

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

Ü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

Motivation natürliche Sprachen

Motivation natürliche Sprachen Motivation natürliche Sprachen (Satz) (Substantivphrase)(Verbphrase) (Satz) (Substantivphrase)(Verbphrase)(Objektphrase) (Substantivphrase) (Artikel)(Substantiv) (Verbphrase) (Verb)(Adverb) (Substantiv)

Mehr

Beschreibungskomplexität von Grammatiken Definitionen

Beschreibungskomplexität von Grammatiken Definitionen Beschreibungskomplexität von Grammatiken Definitionen Für eine Grammatik G = (N, T, P, S) führen wir die folgenden drei Komplexitätsmaße ein: Var(G) = #(N), Prod(G) = #(P ), Symb(G) = ( α + β + 1). α β

Mehr

Definition der Greibach-Normalform

Definition der Greibach-Normalform Definition der Greibach-Normalform Ähnlich wie die CNF wollen wir noch eine zweite Normalform einführen, nämlich die Greibach-Normalform (GNF), benannt nach Sheila Greibach: Definition: Eine Typ-2 Grammatik

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie prachen (VI) 25.06.2015 Viorica ofronie-tokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

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

Kapitel: 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

Mehr

Übungsblatt Nr. 3. Lösungsvorschlag

Übungsblatt Nr. 3. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 3 Aufgabe 1: Karlsruhe ist nicht genug

Mehr

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Dr.-Ing. Sven Hellbach S. Hellbach Grundlagen der Informatik II Abbildungen entnommen aus: Dirk W. Hoffmann: Theoretische Informatik; Hanser Verlag 2011, ISBN: 978-3-446-42854-6

Mehr

Automatentheorie und formale Sprachen

Automatentheorie und formale Sprachen Automatentheorie und formale Sprachen VL 8 Chomsky-Grammatiken Kathrin Hoffmann 23. Mai 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 23.5. 2012 250 Wortproblem Wortproblem ist das

Mehr

Übungen zu Grundlagen der Theoretischen Informatik

Übungen zu Grundlagen der Theoretischen Informatik Übungen zu Grundlagen der Theoretischen Informatik INSTITUT FÜR INFORMATIK UNIVERSITÄT KOBLENZ-LANDAU SS 2013 Lösungen 07 Übungen GTI SS 2013 Manfred Jackel 2 Übungen GTI SS 2013 Manfred Jackel 3 Aufgabe

Mehr

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.11.2005 5. Vorlesung 1 Überblick: Kontextfreie Sprachen Formale Grammatik Einführung, Beispiele Formale

Mehr

Chomsky-Grammatiken 16. Chomsky-Grammatiken

Chomsky-Grammatiken 16. Chomsky-Grammatiken Chomsky-Grammatiken 16 Chomsky-Grammatiken Ursprünglich von Chomsky in den 1950er Jahren eingeführt zur Beschreibung natürlicher Sprachen. Enge Verwandschaft zu Automaten Grundlage wichtiger Softwarekomponenten

Mehr

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

Regulä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

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung

Informatik 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

Mehr

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ). Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ). Beweis: Für jedes a Σ muss jede Position in der Tabelle nur konstant oft besucht werden.

Mehr

Theorie der Informatik

Theorie 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

Mehr

Aufgabentypen: Spickerblatt: kontextfrei (Typ 2): zusätzlich: u ist eine!"# v 1

Aufgabentypen: 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,

Mehr

Das Halteproblem für Turingmaschinen

Das 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

Schnitt- und Äquivalenzproblem

Schnitt- und Äquivalenzproblem Schnitt- und Äquivalenzproblem Das Schnittproblem besteht in der Frage, ob der Schnitt zweier gegebener regulärer Sprachen L 1 und L 2 leer ist. Dabei können die Sprachen durch DEAs oder Typ-3 Grammatiken,

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen 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,

Mehr

24. Kontextfreie Sprachen

24. 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

Mehr

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

1. 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:

Mehr

Stichpunktezettel fürs Tutorium

Stichpunktezettel fürs Tutorium Stichpunktezettel fürs Tutorium Moritz und Dorian 18. November 2009 1 Chomskys Erstschlag 1.1 Reguläre Sprachen und Grammatiken Aufgabe 1. Wie sieht die Sprache zu den folgenden Grammatiken aus? 1. G =

Mehr

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

2. Ü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

Mehr

10 Kellerautomaten. Kellerautomaten

10 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

Mehr

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien

Mehr

2.1 Grundlagen: Kontextfreie Grammatiken

2.1 Grundlagen: Kontextfreie Grammatiken 2.1 Grundlagen: Kontextfreie Grammatiken Programme einer Programmiersprache können unbeschränkt viele Tokens enthalten, aber nur endlich viele Token-Klassen :-) Als endliches Terminal-Alphabet T wählen

Mehr

Deterministischer Kellerautomat (DPDA)

Deterministischer 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,δ,

Mehr

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden Maike Buchin 8. Februar 26 Stef Sijben Probeklausur Theoretische Informatik Bearbeitungszeit: 3 Stunden Name: Matrikelnummer: Studiengang: Geburtsdatum: Hinweise: Schreibe die Lösung jeder Aufgabe direkt

Mehr

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

Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S, P) mit den Regeln REG versus CF Theorem REG ist echt in CF enthalten. Beweis: Wir wissen: L = {a m b m m 1} ist nicht regulär. Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 10 Suche in Graphen Version vom 13. Dezember 2016 1 / 2 Vorlesung 2016 / 2017 2 /

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Lerneinheit 3: Greedy Algorithmen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 2016 10.5.2016 Einleitung Einleitung Diese Lerneinheit

Mehr

Informatik 3 Theoretische Informatik WS 2015/16

Informatik 3 Theoretische Informatik WS 2015/16 2. Probeklausur 22. Januar 2016 Informatik 3 Theoretische Informatik WS 2015/16 Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg Institut für Informatik Name: Matrikel-Nr.: Schreiben Sie Ihren

Mehr