117
Theoretische Grundlagen der Informatik 7. ¨ Ubungstermin · 7. Januar 2020 Guido Br ¨ uckner KIT – Die Forschungsuniversit¨ at in der Helmholtz-Gemeinschaft I NSTITUT F ¨ UR T HEORETISCHE I NFORMATIK · L EHRSTUHL ALGORITHMIK www.kit.edu ¨ Ubung

7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Theoretische Grundlagen der Informatik

7. Ubungstermin · 7. Januar 2020Guido Bruckner

KIT – Die Forschungsuniversitat in der Helmholtz-Gemeinschaft

INSTITUT FUR THEORETISCHE INFORMATIK · LEHRSTUHL ALGORITHMIK

www.kit.edu

Ubung

Page 2: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Ubersicht

Inhalt

Konstruktion von GrammatikenChomsky-0-Grammatiken und DTMs

Sprache der korrekten Klammerausdrucke

Der Cocke-Younger-Kasami-AlgorithmusNEA aus Chomsky-3-GrammatikEindeutige und mehrdeutige Grammatiken

Chomsky-Normalform

Grammatiken und Chomsky-Hierarchie

Chomsky-2-Grammatiken

Organisatorisches

Evaluation

1

Page 3: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

2

Page 4: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

alleSprachen

semi-entscheidbareSprachen

entscheidbareSprachen

aus Ubung 3:

(entscheidbar)

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

2

Page 5: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

2

Page 6: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

2

Page 7: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

2

Page 8: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-0-Grammatiken und DTMs

Satz aus der Vorlesung (Vorlesung 13, 17.12.2019):Die von Typ-0-Grammatiken erzeugten Sprachen sind genau die vonnichtdeterministischen Turingmaschinen akzeptierten Sprachen.

L ist Typ 0, d.h.,es gibt Grammatik G

mit L(G) = L.

Es gibt nichtdeterm.TMM, die L

akzeptiert.⇔

A B

A B⇔

3

Page 9: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-0-Grammatiken und DTMs

Satz aus der Vorlesung (Vorlesung 13, 17.12.2019):Die von Typ-0-Grammatiken erzeugten Sprachen sind genau die vonnichtdeterministischen Turingmaschinen akzeptierten Sprachen.

L ist Typ 0, d.h.,es gibt Grammatik G

mit L(G) = L.

Es gibt nichtdeterm.TMM, die L

akzeptiert.⇔

Beweis aus der Vorlesung von :

A B

A B⇒

Schreibe S auf das Band.

Repeat

Wahle nichtdeterministisch eine anwendbare Ableitungsregel.Vergleiche das erzeugte Wort mit der Eingabe w .Bei Gleichheit wird w akzeptiert.

Wir konstruieren eineNTM, die L akzeptiert.

A B⇔

3

Page 10: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-0-Grammatiken und DTMs

Satz aus der Vorlesung (Vorlesung 13, 17.12.2019):Die von Typ-0-Grammatiken erzeugten Sprachen sind genau die vonnichtdeterministischen Turingmaschinen akzeptierten Sprachen.

L ist Typ 0, d.h.,es gibt Grammatik G

mit L(G) = L.

Es gibt nichtdeterm.TMM, die L

akzeptiert.

Es gibtdeterministische TMM, die L akzeptiert.

⇔ ⇔A B

C

A B⇔

In der Vorlesung wurde dann bewiesen.⇒ AC

Und es gilt auch allgemein, dass .⇒

Beweis aus der Vorlesung von .A B⇒

B C

3

Page 11: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-0-Grammatiken und DTMs

Satz aus der Vorlesung (Vorlesung 13, 17.12.2019):Die von Typ-0-Grammatiken erzeugten Sprachen sind genau die vonnichtdeterministischen Turingmaschinen akzeptierten Sprachen.

L ist Typ 0, d.h.,es gibt Grammatik G

mit L(G) = L.

Es gibt nichtdeterm.TMM, die L

akzeptiert.

Es gibtdeterministische TMM, die L akzeptiert.

⇔ ⇔A B

C

A B⇔

In der Vorlesung wurde dann bewiesen.⇒ AC

Und es gilt auch allgemein, dass .⇒

Beweis aus der Vorlesung von .A B⇒

B C

DTMs und NTMs sind gleich machtig. (Wenn Laufzeit egal ist.)

3

Page 12: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-0-Grammatiken und DTMs

Satz aus der Vorlesung (Vorlesung 13, 17.12.2019):Die von Typ-0-Grammatiken erzeugten Sprachen sind genau die vonnichtdeterministischen Turingmaschinen akzeptierten Sprachen.

L ist Typ 0, d.h.,es gibt Grammatik G

mit L(G) = L.

Es gibt nichtdeterm.TMM, die L

akzeptiert.

Es gibtdeterministische TMM, die L akzeptiert.

⇔ ⇔

Beweis aus der Vorlesung von :

A B

C

A B⇒

Schreibe S auf das Band.

Repeat

Wahle nichtdeterministisch eine anwendbare Ableitungsregel.Vergleiche das erzeugte Wort mit der Eingabe w .Bei Gleichheit wird w akzeptiert.

Wir konstruieren eineNTM, die L akzeptiert.

A B⇔

3

Page 13: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-0-Grammatiken und DTMs

Satz aus der Vorlesung (Vorlesung 13, 17.12.2019):Die von Typ-0-Grammatiken erzeugten Sprachen sind genau die vonnichtdeterministischen Turingmaschinen akzeptierten Sprachen.

L ist Typ 0, d.h.,es gibt Grammatik G

mit L(G) = L.

Es gibt nichtdeterm.TMM, die L

akzeptiert.

Es gibtdeterministische TMM, die L akzeptiert.

⇔ ⇔A B

C

Hier beweisen wir :A ⇒

Fur i = 1, 2, 3, . . .

Wir konstruieren eineDTM, die L akzeptiert.

C

A B⇔

Fur jede Folge F von genau i Ableitungsregeln

Schreibe S auf das Band.Wenn F anwendbar, vergleiche erzeugtes Wort mit der Eingabe w .Bei Gleichheit wird w akzeptiert, ansonsten das Band geloscht.

3

Page 14: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

4

Page 15: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

4

Page 16: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

4

Page 17: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {aibjck ∈ {a, b, c}? | i = j ∨ j = k}

5

Page 18: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {aibjck ∈ {a, b, c}? | i = j ∨ j = k}

1. Schritt: Von welchem Typ ist die Sprache?

5

Page 19: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {aibjck ∈ {a, b, c}? | i = j ∨ j = k}

1. Schritt: Von welchem Typ ist die Sprache? Typ 2

5

Page 20: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {aibjck ∈ {a, b, c}? | i = j ∨ j = k}

1. Schritt: Von welchem Typ ist die Sprache?

2. Schritt: Grammatik vom Typ 2 formal definieren und formulieren.

Typ 2

5

Page 21: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {aibjck ∈ {a, b, c}? | i = j ∨ j = k}

G = (Σ, V , S, R) Σ = {a, b, c} V = {S, T , U, V , W}

1. Schritt: Von welchem Typ ist die Sprache?

2. Schritt: Grammatik vom Typ 2 formal definieren und formulieren.

Typ 2

5

Page 22: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {aibjck ∈ {a, b, c}? | i = j ∨ j = k}

G = (Σ, V , S, R) Σ = {a, b, c} V = {S, T , U, V , W}S → TU | VW ,T → aTb | ε,U → Uc | ε,W → bWc | ε,V → Va | ε.

R = {

}

1. Schritt: Von welchem Typ ist die Sprache?

2. Schritt: Grammatik vom Typ 2 formal definieren und formulieren.

Typ 2

5

Page 23: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}

6

Page 24: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}

1. Schritt: Von welchem Typ ist die Sprache?

6

Page 25: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}

1. Schritt: Von welchem Typ ist die Sprache? Typ 1

6

Page 26: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}

1. Schritt: Von welchem Typ ist die Sprache?

2. Schritt: Grammatik vom Typ 1 formal definieren und formulieren.

Typ 1

6

Page 27: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}

G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}

1. Schritt: Von welchem Typ ist die Sprache?

2. Schritt: Grammatik vom Typ 1 formal definieren und formulieren.

Typ 1

fur i ∈ {0, 1}

6

Page 28: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}

G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}S → T | εT → 0TX0 | 1TX1 | L0R0 | L1R1

R = {

}

1. Schritt: Von welchem Typ ist die Sprache?

2. Schritt: Grammatik vom Typ 1 formal definieren und formulieren.

Typ 1

fur i ∈ {0, 1}

R0X0 → X0R0R0X1 → X1R0R1X0 → X0R1R1X1 → X1R1

L0X0 → L0R0L0X1 → L0R1L1X0 → L1R0L1X1 → L1R1

R0 → 0R1 → 1L0 → 0L1 → 1

6

Page 29: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}

S → T | εT → 0TX0 | 1TX1 | L0R0 | L1R1

R = {

}

fur i ∈ {0, 1}

R0X0 → X0R0R0X1 → X1R0R1X0 → X0R1R1X1 → X1R1

L0X0 → L0R0L0X1 → L0R1L1X0 → L1R0L1X1 → L1R1

R0 → 0R1 → 1L0 → 0L1 → 1

w = 1101 :

7

Page 30: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}

S → T | εT → 0TX0 | 1TX1 | L0R0 | L1R1

R = {

}

fur i ∈ {0, 1}

R0X0 → X0R0R0X1 → X1R0R1X0 → X0R1R1X1 → X1R1

L0X0 → L0R0L0X1 → L0R1L1X0 → L1R0L1X1 → L1R1

R0 → 0R1 → 1L0 → 0L1 → 1

S → 1 T X1 → 11 T X1X1 → 110 T X0X1X1 → 110L1 R1X0X1X1

w = 1101 :

7

Page 31: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}

S → T | εT → 0TX0 | 1TX1 | L0R0 | L1R1

R = {

}

fur i ∈ {0, 1}

R0X0 → X0R0R0X1 → X1R0R1X0 → X0R1R1X1 → X1R1

L0X0 → L0R0L0X1 → L0R1L1X0 → L1R0L1X1 → L1R1

R0 → 0R1 → 1L0 → 0L1 → 1

S → 1 T X1 → 11 T X1X1 → 110 T X0X1X1 → 110L1 R1X0X1X1

→ 110L1 X0R1X1X1 → 110L1 R0R1X1X1

w = 1101 :

7

Page 32: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}

S → T | εT → 0TX0 | 1TX1 | L0R0 | L1R1

R = {

}

fur i ∈ {0, 1}

R0X0 → X0R0R0X1 → X1R0R1X0 → X0R1R1X1 → X1R1

L0X0 → L0R0L0X1 → L0R1L1X0 → L1R0L1X1 → L1R1

R0 → 0R1 → 1L0 → 0L1 → 1

S → 1 T X1 → 11 T X1X1 → 110 T X0X1X1 → 110L1 R1X0X1X1

→ 110L1 X0R1X1X1 → 110L1 R0R1X1X1

→ 110L1 R0X1R1X1 → 110L1 X1R0R1X1 → 110L1 R1R0R1X1

w = 1101 :

7

Page 33: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Konstruktion von Grammatiken

Geben Sie fur die folgende Sprache eine Grammatik an.L = {ww | w ∈ {0, 1}?}G = (Σ, V , S, R) Σ = {0, 1} V = {S, Xi , Ri , Li , T}

S → T | εT → 0TX0 | 1TX1 | L0R0 | L1R1

R = {

}

fur i ∈ {0, 1}

R0X0 → X0R0R0X1 → X1R0R1X0 → X0R1R1X1 → X1R1

L0X0 → L0R0L0X1 → L0R1L1X0 → L1R0L1X1 → L1R1

R0 → 0R1 → 1L0 → 0L1 → 1

S → 1 T X1 → 11 T X1X1 → 110 T X0X1X1 → 110L1 R1X0X1X1

→ 110L1 X0R1X1X1 → 110L1 R0R1X1X1

→ 110L1 R0X1R1X1 → 110L1 X1R0R1X1 → 110L1 R1R0R1X1

→ · · · → 110L1 R1R1R0R1 → · · · → 1101 1101

w = 1101 :

7

Page 34: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

(c) Beweisen Sie die Maximalitat von k .

8

Page 35: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

8

Page 36: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

1. Schritt: Von welchem Typ ist die Grammatik?

8

Page 37: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

1. Schritt: Von welchem Typ ist die Grammatik? Typ 2

8

Page 38: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

1. Schritt: Von welchem Typ ist die Grammatik?

2. Schritt: Grammatik vom Typ 2 formal definieren und formulieren.

Typ 2

8

Page 39: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

G = (Σ, V , S, R) Σ = {(, )} V = {S}

1. Schritt: Von welchem Typ ist die Grammatik?

2. Schritt: Grammatik vom Typ 2 formal definieren und formulieren.

Typ 2

8

Page 40: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(a) Konstruieren Sie eine Typ-k -Grammatik mit maximalem k , die L()

erzeugt.

G = (Σ, V , S, R) Σ = {(, )} V = {S}

S → (S)S | εR = {

}

1. Schritt: Von welchem Typ ist die Grammatik?

2. Schritt: Grammatik vom Typ 2 formal definieren und formulieren.

Typ 2

8

Page 41: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

9

Page 42: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊆ L():

9

Page 43: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊆ L(): Klammern werden nie geloscht oder verschoben (Typ 2)

9

Page 44: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊆ L(): Klammern werden nie geloscht oder verschoben (Typ 2)

Jede Produktion, die eine Klammer erzeugt, erzeugtgenau ein Paar ( und ). Also hat jedes Wort in L(G)genauso viele offnende wie schließende Klammern.

9

Page 45: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊆ L(): Klammern werden nie geloscht oder verschoben (Typ 2)

Jede Produktion, die eine Klammer erzeugt, erzeugtgenau ein Paar ( und ). Also hat jedes Wort in L(G)genauso viele offnende wie schließende Klammern.

Jede Produktion, die mindestens eine Klammererzeugt, erzeugt ( vor ). Also beinhaltet fur jedes Wortw in L(G) jedes Prafix von w mindestens so vieleoffnende wie schließende Klammern.

9

Page 46: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊇ L():

9

Page 47: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊇ L(): Sei w in L() beliebig.

9

Page 48: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊇ L(): Sei w in L() beliebig.

Algorithmus, der w erzeugt:

9

Page 49: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊇ L(): Sei w in L() beliebig.

Algorithmus, der w erzeugt:w = (w1)w2, (w1) ist erstes Klammerpaar im Ausdruck

Fuhre S → (S)S aus

9

Page 50: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(b) Zeigen Sie, dass Ihre Grammatik genau L() erzeugt.

Zu zeigen ist: L(G) = L()

L(G) ⊇ L(): Sei w in L() beliebig.

Algorithmus, der w erzeugt:w = (w1)w2, (w1) ist erstes Klammerpaar im Ausdruck

Fuhre S → (S)S aus

w = ε

Fuhre S → ε aus

9

Page 51: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(c) Beweisen Sie die Maximalitat von k .

10

Page 52: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(c) Beweisen Sie die Maximalitat von k .

L() ist nicht regular (Pumping-Lemma)

10

Page 53: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(c) Beweisen Sie die Maximalitat von k .

L() ist nicht regular (Pumping-Lemma)

Regulare Sprachen entsprechen Chomsky-Typ 3

10

Page 54: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Sprache der korrekten Klammerausdrucke

Uber dem Alphabet Σ = {(,)} ist die Sprache L() der korrekten Klammer-ausdrucke gegeben.(c) Beweisen Sie die Maximalitat von k .

L() ist nicht regular (Pumping-Lemma)

Regulare Sprachen entsprechen Chomsky-Typ 3

⇒ Chomsky-Typ 2 ist maximal.

10

Page 55: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Evaluation

Ausfullen und zum Gang reichen

Freitextfelder besonders hilfreich!

5 min Zeit

11

Page 56: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

12

Page 57: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

12

Page 58: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

Gegeben sei die kontextfreie Grammatik G = (Σ, V , S, R) mit Σ ={a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

(a) Lasst sich der CYK-Algorithmus auf G (ohne Abanderungen) anwen-den? Begrunden Sie Ihre Antwort. Andern Sie gegebenfalls G ab.

(b) Prufen Sie, ob das Wort addd in L(G) liegt. Verwenden Sie dafur denCYK-Algorithmus.

13

Page 59: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

Gegeben sei die kontextfreie Grammatik G = (Σ, V , S, R) mit Σ ={a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

(a) Lasst sich der CYK-Algorithmus auf G (ohne Abanderungen) anwen-den? Begrunden Sie Ihre Antwort. Andern Sie gegebenfalls G ab.

(b) Prufen Sie, ob das Wort addd in L(G) liegt. Verwenden Sie dafur denCYK-Algorithmus.

(a) Nein. Begrundung:G ist nicht in Chomsky-Normalform

Chomsky-Normalform:A→ BC oder A→ a mit A, B, C ∈ V und a ∈ Σ

13

Page 60: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

13

Page 61: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

1. Schritt: Alle Regeln sind der FormX → Y , Y ∈ V? oder X → a, a ∈ Σ

13

Page 62: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

1. Schritt:

S → A | aB | aC

B → S | Ba

D → d | dDD

A→ B | C | cAd

C → D | c

Alle Regeln sind der FormX → Y , Y ∈ V? oder X → a, a ∈ Σ

13

Page 63: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

1. Schritt:

S → A | aB | aC

B → S | Ba

D → d | dDD

A→ B | C | cAd

C → D | c

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

Alle Regeln sind der FormX → Y , Y ∈ V? oder X → a, a ∈ Σ

13

Page 64: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

1. Schritt:

S → A | aB | aC

B → S | Ba

D → d | dDD

A→ B | C | cAd

C → D | c

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

Alle Regeln sind der FormX → Y , Y ∈ V? oder X → a, a ∈ Σ

13

Page 65: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

1. Schritt:

S → A | aB | aC

B → S | Ba

D → d | dDD

A→ B | C | cAd

C → D | c

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

Alle Regeln sind der FormX → Y , Y ∈ V? oder X → a, a ∈ Σ

13

Page 66: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

1. Schritt:

S → A | aB | aC

B → S | Ba

D → d | dDD

A→ B | C | cAd

C → D | c

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

Alle Regeln sind der FormX → Y , Y ∈ V? oder X → a, a ∈ Σ

13

Page 67: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

2. Schritt: Rechte Seiten haben Lange ≤ 2.

13

Page 68: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

2. Schritt: Rechte Seiten haben Lange ≤ 2.S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

13

Page 69: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

2. Schritt: Rechte Seiten haben Lange ≤ 2.S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

13

Page 70: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

2. Schritt: Rechte Seiten haben Lange ≤ 2.S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

13

Page 71: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

2. Schritt: Rechte Seiten haben Lange ≤ 2.S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd DD

A→ B | C | ZcAZd

C → D | Zc

Za → a Zc → c Zd → d

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

13

Page 72: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

3. Schritt: Es kommen keine Regeln A→ ε vor.

13

Page 73: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

3. Schritt: Es kommen keine Regeln A→ ε vor.S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

13

Page 74: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

3. Schritt: Es kommen keine Regeln A→ ε vor.S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd X13

Page 75: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere Kreis B → S → A→ B.4. Schritt:

13

Page 76: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere Kreis B → S → A→ B.4. Schritt:

B S

A

C

D Zc

Zd

13

Page 77: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere Kreis B → S → A→ B.4. Schritt:

B S

A

C

D Zc

Zd

B S

A

C

D Zc

Zd

13

Page 78: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere Kreis B → S → A→ B.4. Schritt:

B S

A

C

D Zc

Zd

B S

A

C

D Zc

Zd

S

C

D Zc

Zd

13

Page 79: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere Kreis B → S → A→ B.4. Schritt:

B S

A

C

D Zc

Zd

B S

A

C

D Zc

Zd

S

C

D Zc

Zd

S

C

D Zc

Zd

13

Page 80: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

Eliminiere Kreis B → S → A→ B.4. Schritt:

13

Page 81: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

Eliminiere Kreis B → S → A→ B.4. Schritt:

13

Page 82: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

Eliminiere Kreis B → S → A→ B.4. Schritt:S → ZaS | ZaC | SZa | C | ZcF

D → Zd | Zd E

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → SZd

13

Page 83: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

Eliminiere Kreis B → S → A→ B.4. Schritt:S → ZaS | ZaC | SZa | C | ZcF

D → Zd | Zd E

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → SZd

13

Page 84: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

S → A | ZaB | ZaC

B → S | BZa

D → Zd | Zd E

A→ B | C | ZcF

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → AZd

Eliminiere Kreis B → S → A→ B.4. Schritt:S → ZaS | ZaC | SZa | C | ZcF

D → Zd | Zd E

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → SZd

13

Page 85: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere verbleibende Kettenregeln: A→ B.4. Schritt:

13

Page 86: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere verbleibende Kettenregeln: A→ B.4. Schritt:

(a) Topologische Sortierung: S, C, D, Zc , Zd ,

(b) Keine Kettenregeln mit linker Seite Zd und Zc ,

(c) Ersetze Kettenregeln mit linker Seite D,

(d) Ersetze Kettenregeln mit linker Seite C,

(e) Ersetze Kettenregeln mit linker Seite S.

S → ZaS | ZaC

D → Zd | Zd EC → D | Zc

Za → aZc → cZd → d

E → DDF → SZd

SZa | C | ZcF

13

Page 87: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere verbleibende Kettenregeln: A→ B.4. Schritt:

S → ZaS | ZaC | SZa | C | ZcF

D → Zd | Zd E

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → SZd

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

13

Page 88: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere verbleibende Kettenregeln: A→ B.4. Schritt:

S → ZaS | ZaC | SZa | C | ZcF

D → Zd | Zd E

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → SZd

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

13

Page 89: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Normalform

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

Eliminiere verbleibende Kettenregeln: A→ B.4. Schritt:

S → ZaS | ZaC | SZa | C | ZcF

D → Zd | Zd E

C → D | Zc

Za → a Zc → c Zd → d

E → DD F → SZd

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

13

Page 90: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

G = (Σ, V , S, R) mit Σ = {a, b, c, d}, V = {S, A, B, C, D} und R:

S → A | aB | aC, B → S | Ba, D → d | dDD,A→ B | C | cAd, C → D | c.

(b) Prufen Sie, ob das Wort addd in L(G) liegt. Verwenden Sie dafur denCYK-Algorithmus.

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

F E

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input a d d d

ZaZd

DCS Zd

DCS Zd

DCS

S F E

F S CD

S

14

Page 91: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

15

Page 92: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

15

Page 93: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

15

Page 94: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

ZaZd

DCS Zd

DCS Zd

DCS

15

Page 95: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

F E

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

ZaZd

DCS Zd

DCS Zd

DCS

S EF

15

Page 96: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

F E

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

ZaZd

DCS Zd

DCS Zd

DCS

S EF

F

15

Page 97: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

F E

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

ZaZd

DCS Zd

DCS Zd

DCS

S EF

F

Der allgemeine Fall

Vi j

Vik Vk+1j

15

Page 98: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

F E

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

ZaZd

DCS Zd

DCS Zd

DCS

S CD

S EF

F

15

Page 99: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Der Cocke-Younger-Kasami-Algorithmus

Chomsky-Normalform

F E

S → ZaS | ZaC | SZa | d | Zd E | c | ZcF

D → d | Zd E

C → d | Zd E | cZa → a Zc → c Zd → d

E → DD F → SZd

1 2 3 4i

Vi i

Vi i+1

Vi i+2

Vi i+3

Input

Variable A ∈ V ist in Vi i+j

gdw. A ?→ wi . . .wi+j .

w ist in L(G)⇔ S ∈ V1n.

Input w = w1 . . .wn aus Σ?.1

2

3

a d d d

ZaZd

DCS Zd

DCS Zd

DCS

S CD

S EF

F

S

15

Page 100: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

16

Page 101: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Chomsky-Hierarchie

(semi-entscheidbar)Typ 0

Menge aller Sprachen

Chomsky-0-Gram.

Chomsky-1-Gram.

G = (Σ, V , S, R)R beliebig

u → v , |u| ≤ |v |u ∈ V +, S /∈ vS → ε

Chomsky-2-Gram.A→ v , A ∈ Vv beliebig

Chomsky-3-Gram.A→ v , A ∈ Vv ∈ {ε} ∪ Σ · V

(kontextsensitiv)Typ 1

(kontextfrei)Typ 2

(regular)Typ 3

(entscheidbar)

NTM akzeptiert LDTM akzeptiert L

NEA erkennt LDEA erkennt L

NTM mit Platz-bedarf n erkenntWorter d. Lange nin L⇒ NT APE(n)

CYK-Alg. erkenntL in polynom. Zeit

⇒ Chomsky-Normalform

16

Page 102: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben sei die Grammatik G = (Σ, V , S, R) mit Σ = {a, b} und V ={X , Y , Z , S}, welche die Sprache L erzeugt. R sei durch die folgendenAbleitungsregeln gegeben.

S → ε | aS | aX

X → aS | bY

Y → aY | aX | bZ

Z → bZ | aS

Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

17

Page 103: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

17

Page 104: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

V = {X , Y , Z , S}

17

Page 105: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Z

V = {X , Y , Z , S}

17

Page 106: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Z

V = {X , Y , Z , S} R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

17

Page 107: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Za

a

V = {X , Y , Z , S} R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

17

Page 108: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Za b

a

a

V = {X , Y , Z , S} R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

17

Page 109: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Za b b

a a

a a

V = {X , Y , Z , S} R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

17

Page 110: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Za b b

a a

a

a a

b

V = {X , Y , Z , S} R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

17

Page 111: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

NEA aus Chomsky-3-Grammatik

a, b

Gegeben: G = (Σ, V , S, R) mit Σ = {a, b}, V = {X , Y , Z , S} und R ={S → ε | aS | aX , X → aS | bY , Y → aY | aX | bZ , Z → bZ | aS}.Geben Sie einen nichtdeterministischen endlichen Automaten A an, der Lerkennt.

S X Y Za b b

a a

a

a a

b

f

b

V = {X , Y , Z , S} R = {S → ε | aS | aX ,X → aS | bY ,Y → aY | aX | bZ ,Z → bZ | aS}.

17

Page 112: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Eindeutige und mehrdeutige Grammatiken

Gegeben sei die Grammatik G = (Σ, V , S, R) mit Σ ={0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, -, *} und V = {S, Z}. R :S → S+S | S-S | S*S | Z ,

Z → 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0Z | 1Z | 2Z | 3Z | 4Z | 5Z |6Z | 7Z | 8Z | 9Z .

(a) Bestimmen Sie einen Syntaxbaum des Wortes 211-42+10*4.

(b) Ist die Grammatik eindeutig oder mehrdeutig? Begrunden Sie IhreAntwort.

18

Page 113: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Eindeutige und mehrdeutige Grammatiken

G = (Σ, V , S, R) mit Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, -, *}, V = {S, Z}, R :S → S+S | S-S | S*S | Z ,

Z → 0 | 1 | . . . | 9 | 0Z | 1Z | . . . | 9Z .

(a) Bestimmen Sie einen Syntaxbaum des Wortes 211-42+10*4.

18

Page 114: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Eindeutige und mehrdeutige Grammatiken

G = (Σ, V , S, R) mit Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, -, *}, V = {S, Z}, R :S → S+S | S-S | S*S | Z ,

Z → 0 | 1 | . . . | 9 | 0Z | 1Z | . . . | 9Z .

(a) Bestimmen Sie einen Syntaxbaum des Wortes 211-42+10*4.

2

1

1

42

+

10

4

Z

Z

Z

Z

Z

Z

Z Z

S

S

S

S S

S

S

18

Page 115: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Eindeutige und mehrdeutige Grammatiken

2

1

1

42

+

10

4

Z

Z

Z

Z

Z

Z

Z Z

S

S

S

S S

S

S

G = (Σ, V , S, R) mit Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, -, *}, V = {S, Z}, R :S → S+S | S-S | S*S | Z ,

Z → 0 | 1 | . . . | 9 | 0Z | 1Z | . . . | 9Z .

(b) Ist die Grammatik eindeutig oder mehrdeutig?

18

Page 116: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Eindeutige und mehrdeutige Grammatiken

2

1

1

42

+

10

4

Z

Z

Z

Z

Z

Z

Z Z

S

S

S

S S

S

S

2

1

1

42

+

10

4Z

Z

Z

Z

Z

Z

Z Z

S

S

S

S SS S

G = (Σ, V , S, R) mit Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, -, *}, V = {S, Z}, R :S → S+S | S-S | S*S | Z ,

Z → 0 | 1 | . . . | 9 | 0Z | 1Z | . . . | 9Z .

(b) Ist die Grammatik eindeutig oder mehrdeutig?

18

Page 117: 7. Übung, Theoretische Grundlagen der Informatik · Konstruktion von Grammatiken Chomsky-0-Grammatiken und DTMs Sprache der korrekten Klammerausdr ucke¨ Der Cocke-Younger-Kasami-Algorithmus

Guido Bruckner – 7. Ubung, Theoretische Grundlagen der Informatik Institut fur Theoretische InformatikLehrstuhl Algorithmik

Eindeutige und mehrdeutige Grammatiken

2

1

1

42

+

10

4

Z

Z

Z

Z

Z

Z

Z Z

S

S

S

S S

S

S

2

1

1

42

+

10

4Z

Z

Z

Z

Z

Z

Z Z

S

S

S

S SS SG ist mehrdeutig, da es mehrere Syntaxbaume fur das

gegebene Wort gibt.

G = (Σ, V , S, R) mit Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, -, *}, V = {S, Z}, R :S → S+S | S-S | S*S | Z ,

Z → 0 | 1 | . . . | 9 | 0Z | 1Z | . . . | 9Z .

(b) Ist die Grammatik eindeutig oder mehrdeutig?

18