Theoretische Grundlagen der Informatik · Bestimmen Sie nach der Methode aus der Vorlesung (Satz...

Post on 12-Aug-2019

216 views 0 download

Transcript of Theoretische Grundlagen der Informatik · Bestimmen Sie nach der Methode aus der Vorlesung (Satz...

0 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische Grundlagen der Informatik

Übung am 3.11.2010

KIT – Universität des Landes Baden-Württemberg undnationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Übungsleiter

1 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Tanja HartmannGebäude 50.34, Raum 306Sprechstunde: Freitags 09:00 bis 10:00tanja.hartmann@kit.edu

Andrea SchummGebäude 50.34, Raum 307Sprechstunde: Dienstags 10:00 bis 11:00andrea.schumm@kit.edu

Organisatorisches

2 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Jetzt ist die letzte Möglichkeit, noch Übungsblätter abzugeben!2. Übungsblatt wird im Laufe des Tages auf die Homepage gestelltAchtung: Diesmal Abgabe schon nach einer Woche (also, amDonnerstag, den 10. November)!Die Lösungen werden am darauf folgenden Dienstag in der Übungvorgestellt

Aufgabe 1

3 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

A∗ ∪ B∗ = (A∪ B)∗

(A∗)∗ = A∗

(A∪ B)∗ = (A∗B∗)∗

(A∪ B)C = AC ∪ BC

Aufgabe 1 a)

4 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

A∗ ∪ B∗ = (A∪ B)∗

Aufgabe 1 a)

4 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

A∗ ∪ B∗ = (A∪ B)∗

Lösung:Die Gleichung ist falsch!Beweis durch GegenbeispielA = a, B = b, dann ist ab ∈ L((A∪ B)∗), aber ab /∈ L(A∗ ∪ B∗)

Aufgabe 1 b)

5 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

(A∗)∗ = A∗

Aufgabe 1 b)

5 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

(A∗)∗ = A∗

Lösung:Die Gleichung ist richtig!L(A∗) ⊆ L

((A∗)∗

): Klar, da A∗ = (A∗)1.

L((A∗)∗

)⊆ L(A∗):

Sei w in L((A∗)∗

)⇒ w = v1 · · · vr mit vi ∈ L(A)∗

Jedes vi lässt sich schreiben als vi = ui1 · · · uiti mit uij ∈ L(A)Also ist w endliche Konkatenation von Worten aus L(A)⇒ w in L(A)∗ = L(A∗)

Aufgabe 1 c)

6 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

(A∪ B)∗ = (A∗B∗)∗

Aufgabe 1 c)

6 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

(A∪ B)∗ = (A∗B∗)∗

Lösung:Die Gleichung ist richtig!L((A∪ B)∗) = (L(A) ∪ L(B))∗ = (L(A1B0) ∪ L(A0B1))∗ ⊆L(A∗B∗)∗ = L((A∗B∗)∗)L((A∗B∗)∗) ⊆ L((A∪ B)∗):

Sei w ∈ L((A∗B∗)∗)⇒ w ist endliche Konkatenation von Worten, die jeweils in L(A) oder L(B)liegen⇒ w ∈ L((A∪ B)∗)

Aufgabe 1 d)

7 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

(A∪ B)C = AC ∪ BC

Aufgabe 1 d)

7 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zwei reguläre Ausdrücke sind gleich, wenn sie die gleiche Sprachebeschreiben. Zeigen oder widerlegen Sie die folgenden Gleichungen fürdie regulären Ausdrücke A, B, C.

(A∪ B)C = AC ∪ BC

Lösung:Die Gleichung ist richtig!L((A∪ B)C

)=(L(A) ∪ L(B)

)· L(C), daraus folgt:

w ∈ L((A∪ B)C

)⇔w = ac ∨w = bc mit a ∈ L(A),b ∈ L(B), c ∈ L(C)

⇔w ∈(L(A) · L(C)

)∪(L(B) · L(C)

)⇔w ∈ L(AC ∪ BC)

Aufgabe 2

8 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen oder widerlegen Sie:Teilmengen regulärer Sprachen sind regulär.Die Schnittmenge zweier regulärer Sprachen ist regulär.

Aufgabe 2 a)

9 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen oder widerlegen Sie:Teilmengen regulärer Sprachen sind regulär.

Aufgabe 2 a)

9 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen oder widerlegen Sie:Teilmengen regulärer Sprachen sind regulär.

Lösung:Die Aussage ist falsch!Beweis durch Gegenbeispiel:Σ := {0,1}, L1 := Σ∗ undL2 := {w ∈ Σ∗ | w ist von der Form 0i1i , i ≥ 0}L1 ist offensichtlich regulär, L2 nicht (s. Vorlesung) und es gilt L2 ⊆ L1

Aufgabe 2 b)

10 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen oder widerlegen Sie:Die Schnittmenge zweier regulärer Sprachen ist regulär.

Aufgabe 2 b)

10 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen oder widerlegen Sie:Die Schnittmenge zweier regulärer Sprachen ist regulär.

Lösung:Die Aussage ist wahr!Seien L1 und L2 reguläre Sprachen über Σ undA1 = {Q1,Σ, δ1, s1,F1}, bzw. A2 = {Q2,Σ, δ2, s2,F2} DEAs, die L1bzw. L2 akzeptierenDefiniere A := {Q,Σ, δ, s,F} mit

Q := Q1 ×Q2Für a ∈ Σ , (q1,q2) ∈ Q sei δ((q1,q2),a) := (δ1(q1,a), δ2(q2,a))s := (s1, s2)F := {(q1,q2) ∈ Q | q1 ∈ F1,q2 ∈ F2}

A akzeptiert genau L1 ∩ L2

⇒ L1 ∩ L2 regulär

Aufgabe 2 b)

10 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen oder widerlegen Sie:Die Schnittmenge zweier regulärer Sprachen ist regulär.

Lösung:Alternativer Lösungsweg:Zeige zunächst, dass das Komplement regulärer Sprachen regulär istBenutze dann L1 ∩ L2 = (Lc

1 ∪ Lc2)

c

Aufgabe 3

11 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Bestimmen Sie nach der Methode aus der Vorlesung (Satz 2.14 im Skriptzur Vorlesung) einen regulären Ausdruck für die von folgendemAutomaten erkannte Sprache. Geben Sie dabei alle benötigtenZwischenergebnisse an und lesen Sie nur Sprachen der Form Lr ,0,tdirekt ab.

q2q1 q3a, b

b

a a, b

Hinweis: Wenn Sie frühzeitig Lq3,2,q2 berechnen, können Sie sich einigeRechenschritte sparen.

Wiederholung: Die Methode aus der Vorlesung

12 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Gegeben: DEA A = (Q,Σ, δ, s,F )

Gesucht Sprache L, die A akzeptiertL = {w ∈ Σ∗ |A endet nach Abarbeitung von w in einem Zustand aus F}Lf := {w ∈ Σ∗ | A endet nach Abarbeitung von w in f}L =

⋃f∈F Lf

Numeriere Zustände von 1 bis n durchLqr ,i,qt := {w ∈ Σ∗ |Abarbeitung von w aus qr nach qt hat nur Zwischenzustände {q1, . . . ,qi}}Damit gilt Lf = Ls,n,f

Es gilt allgemein:

Lqr ,i+1,qt = Lqr ,i,qt ∪(

Lqr ,i,qi+1

(Lqi+1,i,qi+1

)∗Lqi+1,i,qt

)Damit kann man induktiv Lf berechnen

Lösung Aufgabe 3

13 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

q2q1 q3a, b

b

a a, b

Die von A1 akzeptierte Sprache ist Lq1,3,q2

Lq1,3,q2 = Lq1,2,q2 ∪ Lq1,2,q3(Lq3,2,q3)∗Lq3,2,q2

Lq1,2,q2 = Lq1,1,q2 ∪ Lq1,1,q2(Lq2,1,q2)∗Lq2,1,q2

Lq1,1,q2 = Lq1,0,q2︸ ︷︷ ︸a∪b

∪ Lq1,0,q1︸ ︷︷ ︸ε

(Lq1,0,q1︸ ︷︷ ︸ε

)∗ Lq1,0,q2︸ ︷︷ ︸a∪b

= a ∪ b

Lq2,1,q2 = Lq2,0,q2︸ ︷︷ ︸ε

∪ Lq2,0,q1︸ ︷︷ ︸b

(Lq1,0,q1︸ ︷︷ ︸ε

)∗ Lq1,0,q2︸ ︷︷ ︸a∪b

= ε ∪ b(a ∪ b)

Lq1,2,q2 = (a ∪ b) ∪ (a ∪ b)(ε ∪ b(a ∪ b))∗(ε ∪ b(a ∪ b))= (a ∪ b)(b(a ∪ b))∗

⇒ Lq1,3,q2 = (a ∪ b)(b(a ∪ b))∗ ∪ Lq1,2,q3(Lq3,2,q3)∗Lq3,2,q2

Lösung Aufgabe 3

14 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

q2q1 q3a, b

b

a a, b

Lq1,3,q2 = (a ∪ b)(b(a ∪ b))∗ ∪ Lq1,2,q3(Lq3,2,q3)∗Lq3,2,q2

Lq3,2,q2 = Lq3,1,q2 ∪ Lq3,1,q2(Lq2,1,q2)∗Lq2,1,q2

Lq3,1,q2 = Lq3,0,q2︸ ︷︷ ︸∅

∪ Lq3,0,q1︸ ︷︷ ︸∅

(Lq1,0,q1︸ ︷︷ ︸ε

)∗ Lq1,0,q2︸ ︷︷ ︸a∪b

= ∅

Lq3,2,q2 = ∅ ∪∅(Lq2,1,q2)∗Lq2,1,q2 = ∅

Also ist insgesamt

Lq1,3,q2 = (a ∪ b)(b(a ∪ b))∗ ∪ Lq1,2,q3(Lq3,2,q3)∗∅ = (a ∪ b)(b(a ∪ b))∗

Aufgabe 4

15 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Sei A1 der nichtdeterministische endliche Automat, der durch folgendenZustandsgraphen gegeben ist:

q3

s q2ε, a bq1

b

Geben Sie einen regulären Ausdruck für die von A1 akzeptierteSprache an.Geben Sie für jeden Zustand den ε-Abschluss an und konstruieren Sieeinen äquivalenten NEA ohne ε-Übergänge (vgl. Skript, Beweis zuSatz 2.13).

Aufgabe 4 a)

16 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

q3

s q2ε, a bq1

b

Geben Sie einen regulären Ausdruck für die von A1 akzeptierte Sprachean.

Aufgabe 4 a)

16 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

q3

s q2ε, a bq1

b

Geben Sie einen regulären Ausdruck für die von A1 akzeptierte Sprachean.

Lösung:Worte, die ohne Benutzung von q2 nach q3 führen: a, ε

Worte, die unter Benutzung von q2 nach q3 führen: ba,abaInsgesamt: (ε ∪ a)(ε ∪ ba)b∗

Aufgabe 4 b)

17 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

q3

s q2ε, a bq1

b

Geben Sie für jeden Zustand den ε-Abschluss an und konstruieren Sieeinen äquivalenten NEA ohne ε-Übergänge.

Aufgabe 4 b)

17 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

q3

s q2ε, a bq1

b

Geben Sie für jeden Zustand den ε-Abschluss an und konstruieren Sieeinen äquivalenten NEA ohne ε-Übergänge.

Lösung:

E(s) = {s,q1,q3}E(q1) = {q1,q3}E(q2) = {q2}E(q3) = {q3}

Äquivalenter Automat ohne ε-Übergänge:

q3

s q2a bq1

a

b

b

bb

Aufgabe 5

18 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Gegeben sei der nichtdeterministische endliche Automat A mitZustandsmenge Q = {s,q1,q2, f1, f2}, Alphabet Σ = {0,1}, Startzustands und Endzuständen f1 und f2. Die Übergangsfunktion δ ist tabellarischgegeben wie folgt:

0 1

s {s,q1} {s}q1 {q2, f1} {f2}q2 {s,q2} {f2}f1 ∅ ∅f2 ∅ ∅

Zeichnen Sie den Zustandsgraphen zu A.Konstruieren Sie einen zu A äquivalenten deterministischen endlichenAutomaten A′ mittels Potenzmengenkonstruktion.

Lösung Aufgabe 5 a)

19 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeichnen Sie den Zustandsgraphen zu A.

Q = {s,q1,q2, f1, f2}Σ = {0,1}Startzustand sEndzustände f1 und f2

0 1

s {s,q1} {s}q1 {q2, f1} {f2}q2 {s,q2} {f2}f1 ∅ ∅f2 ∅ ∅

Zustandsgraph:

f1

s q2

q1

f2

0, 1 0

0

00

0 1

1

Aufgabe 5 b)

20 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Konstruieren Sie einen zu A äquivalenten deterministischen endlichenAutomaten A′ mittels Potenzmengenkonstruktion. Geben Sie dazu dieÜbergangsfunktion von A′ tabellarisch an und zeichnen Sie denZustandsgraphen. Beschriften Sie die neuen Zustände jeweils mit denzugehörigen Teilmengen von Q.

Wiederholung Potenzmengenkonstruktion

21 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Gegeben: NEA A = (Q,Σ, δ, s,F )

Gesucht: Äquivalenter DEA AA := (Q,Σ, δ, s, F ) kann wie folgt definiert werden:

Q := 2Q

δ : Q × Σ→ Q mit δ(q,a) = δ(q,a) für a ∈ Σs := E(s)F := {q ∈ Q | q ∩ F 6= ∅}

Lösung Aufgabe 5 b)

22 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

f1

s q2

q1

f2

0, 1 0

0

00

0 1

1

0 1

{s} {s,q1} {s}{s,q1} {s,q1,q2, f1} {s, f2}{s,q1,q2, f1} {s,q1,q2, f1} {s, f2}{s, f2} {s,q1} {s}

Lösung Aufgabe 5 b)

22 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

f1

s q2

q1

f2

0, 1 0

0

00

0 1

1

0 1

{s} {s,q1} {s}{s,q1} {s,q1,q2, f1} {s, f2}{s,q1,q2, f1} {s,q1,q2, f1} {s, f2}{s, f2} {s,q1} {s}

{s} {s, q1}

{s, f2} {s, q1, q2, f1}

0

00

0

1

1

1

11

Aufgabe 6

23 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Geben Sie jeweils einen nichtdeterministischen endlichen Automaten miteiner möglichst kleinen Anzahl an Zuständen an, der genau diefolgenden Sprachen akzeptiert:

L2 := {w ∈ {a,b, c,d}∗ |Der letzte Buchstabe von w kommt mehrmals in w vor. }L3 := {w ∈ {0,1}∗ |w enthält ein Teilwort der Form 0u0 und |u| ist durch 4 teilbar.}

Hinweis: Es genügen jeweils 6 Zustände. Für korrekte Lösungen mitmehr Zuständen wird jeweils 1 Punkt vergeben.

Aufgabe 6 a)

24 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L2 :={w ∈ {a,b, c,d}∗ |Der letzte Buchstabe von w kommt mehrmals in w vor. }

NEA:

s f

q1

q2

q3

q4

a,b,c,d

a,b,c,d

a,b,c,d

a,b,c,d

a,b,c,d

a a

b b

cc

d d

Aufgabe 6 b)

25 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L3 := {w ∈ {0,1}∗ | w enthält ein Teilwort der Form

0u0 und |u| ist durch 4 teilbar.}

NEA:s f

0,10,1

q1

q2

q3

q4

0 0

0,1

0,10,1

0,1

0

Aufgabe 7

26 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zeigen Sie mit Hilfe des Pumping-Lemmas die Nicht-Regularitätfolgender Sprachen:

L1 = {akclbk | k, l ≥ 0}L2 = {w ∈ {0,1}∗ | w enthält mehr 1en als 0en}L3 sei die Menge der Wörter über {0,1}, die die Form ww haben,wobei w aus w gebildet wird, indem alle Nullen durch Einsen und alleEinsen durch Nullen ersetzt werden; so ist etwa 011 = 100 und011100 ein Beispiel für ein Wort dieser Sprache

Pumping-Lemma für reguläre Sprachen

27 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Satz:Sei L eine reguläre Sprache. Dann existiert eine Zahl n ∈ N, so dassfür jedes Wort w ∈ L mit |w | > n eine Darstellung

w = uvx mit |uv | ≤ n , v 6= ε,

existiert, bei der auch uv ix ∈ L ist für alle i ∈N0.

Aufgabe 7 a)

28 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L1 = {akclbk | k, l ≥ 0}

Aufgabe 7 a)

28 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L1 = {akclbk | k, l ≥ 0}Lösung:

Annahme: L1 ist regulär.Sei dann n wie im Pumping-Lemma gefordert, d.h., so dass für jedesWort w ∈ L1 mit |w | > n eine Darstellung w = uvx mit |uv | ≤ n, v 6= εexistiert, bei der auch uv ix ∈ L1 ist für alle i ∈N0.Betrachte w = anbn ∈ L1.Für jede Zerlegung w = uvx mit |uv | ≤ n, v 6= ε istuv2x = an+lbn /∈ L1 weil l > 0.Dies widerspricht Pumping-Lemma

Aufgabe 7 b)

29 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L2 = {w ∈ {0,1}∗ | w enthält mehr 1en als 0en}

Aufgabe 7 b)

29 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L2 = {w ∈ {0,1}∗ | w enthält mehr 1en als 0en}Lösung:

Annahme: L2 ist regulär.Sei dann n wie im Pumping-Lemma gefordert, d.h., so dass für jedesWort w ∈ L2 mit |w | > n eine Darstellung w = uvx mit |uv | ≤ n, v 6= εexistiert, bei der auch uv ix ∈ L2 ist für alle i ∈N0.Betrachte w = 0n1n+1 ∈ L2.Für jede Zerlegung w = uvx mit |uv | ≤ n, v 6= ε istuv2x = 0n+l1n+1 /∈ L2 weil l > 0.Dies widerspricht Pumping-Lemma

Aufgabe 7 c)

30 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L3 sei die Menge der Wörter über {0,1}, die die Form ww haben, wobeiw aus w gebildet wird, indem alle Nullen durch Einsen und alle Einsendurch Nullen ersetzt werden; so ist etwa 011 = 100 und 011100 einBeispiel für ein Wort dieser Sprache

Aufgabe 7 c)

30 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

L3 sei die Menge der Wörter über {0,1}, die die Form ww haben, wobeiw aus w gebildet wird, indem alle Nullen durch Einsen und alle Einsendurch Nullen ersetzt werden; so ist etwa 011 = 100 und 011100 einBeispiel für ein Wort dieser Sprache

Lösung:

Annahme: L3 ist regulär.Sei dann n wie im Pumping-Lemma gefordert, d.h., so dass für jedesWort w ∈ L3 mit |w | > n eine Darstellung w = uvx mit |uv | ≤ n, v 6= εexistiert, bei der auch uv ix ∈ L3 ist für alle i ∈N0.Betrachte w = 0n1n ∈ L3

Für jede Zerlegung w = uvx mit |uv | ≤ n, v 6= ε istuv2x = 0n+l1n /∈ L3 weil l > 0Dies widerspricht Pumping-Lemma

Zusatzaufgabe

31 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Bestimmen Sie den Äquivalenzklassenautomaten zu folgendemdeterministischen endlichen Automaten:

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

Wiederholung: Methode aus der Vorlesung

32 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Zustände p und q heißen äquivalent (p ≡ q), wenn für alle Wörterw ∈ Σ∗ gilt:

δ(p,w) ∈ F ⇔ δ(q,w) ∈ F

≡ ist eine ÄquivalenzrelationWie kann man die Äquivalenzklassen berechnen?w mit δ(p,w) ∈ F und δ(q,w) /∈ F oder umgekehrt heißt Zeuge fürdie Nichtäquivalenz von p und qp ≡ q gdw es keinen Zeugen für die Nichtäquivalenz von p und q gibtVerfahren aus der Vorlesung:

Betrachte zunächst alle Zustandspaare als nicht getrenntZähle alle Worte auf Σ∗ mit wachsender Länge auf und prüfe jeweils, obdiese bisher nicht getrennte Zustände trennenSobald für eine Wortlänge keine Zustände mehr getrennt werden, gib dieKlassen von nicht getrennten Zuständen aus

Bestimmung der Äquivalenzklassen

33 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

ε trennt {C} von {A,B,D,E,F ,G,H}0 trennt {D,F} von {A,B,E,G,H}1 trennt {B,H} von {A,E,G}00 trennt nichts01 trennt {G} von {A,E}10, 11, 000, 001, 010, 011, 100, 101, 110, 111 trennen nichts⇒ Äquivalenzklassen: {A,E}, {B,H}, {D,F}, {C}, {G}

Alternatives Vorgehen

34 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

Table-Filling Algorithmus

Zu Anfang sind alle Zustände nicht getrenntTrenne Endzustände und Nicht-Endzustände (Runde 0)Wiederhole, bis in einer Runde keine Zustände mehr getrenntwurden (Runde 1 - Runde k):

Für alle a ∈ Σ und alle nicht getrennten Zustandspaare (p,q): Trenne(p,q), falls (δ(p,a), δ(q,a)) getrennt sind

Gib die Klassen von nicht-getrennten Zuständen aus

BehauptungZwei Zustände p und q sind nach Runde i des Table-Filling Algorith-mus getrennt gdw es ein Wort der Länge i gibt, das p und q trennt.

Daraus folgt direkt, dass der Table-Filling Algorithmus korrekt ist

Beispiel Table-Filling Algorithmus

35 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

Beispiel Table-Filling Algorithmus

35 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

{A,B,D,E, F,G,H} {C}Runde 0:

Beispiel Table-Filling Algorithmus

35 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

{A,B,D,E, F,G,H} {C}

{A,B,D,E, F,G,H} {C}0:

{A,B,E,G,H} {C}1: {D,F}

Runde 0:

Runde 1:

Beispiel Table-Filling Algorithmus

35 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

{A,B,D,E, F,G,H} {C}

{A,B,D,E, F,G,H} {C}0:

{A,B,E,G,H} {C}1: {D,F}

{A,E, } {C}0: {D,F}{B,H}{B,H} {G}nichts getrennt

{A,E, } {C}1: {D,F}{B,H}{B,H} {G}

Runde 0:

Runde 1:

Runde 2:

Äquivalenzklassenautomat

36 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

A B C D

E F G H

01

010

1

0

0

1

1

1 1 0

0

0

1

Äquivalenzklassen: {A,E}, {B,H}, {D,F}, {C}, {G}

[A] [B]

[D] [G]

[C]

[G]

0

0

0

0

00

1

1

1

1

1

37 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

BehauptungZwei Zustände p und q sind nach Runde i des Table-Filling Algorith-mus getrennt gdw es ein Wort der Länge höchstens i gibt, das p undq trennt.

Beweis:

Induktion über Anzahl k der RundenInduktionsanfang: k = 0: p und q sind nach Runde 0 getrennt, wenneiner davon ein Endzustand ist und der andere nicht, dies istäquivalent zu ε trennt p und qInduktionsannahme: p und q sind nach Runde k getrennt gdw ∃w mit|w | ≤ k, das p und q trennt

37 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

BehauptungZwei Zustände p und q sind nach Runde i des Table-Filling Algorith-mus getrennt gdw es ein Wort der Länge höchstens i gibt, das p undq trennt.

Beweis:

⇒Seien p und q nach Runde k + 1 getrenntFall 1: p und q sind schon nach Runde k getrennt, dann gibt es aber w mit|w | ≤ k und w trennt p und qFall 2: p und q werden in Runde k + 1 getrennt⇒ ∃a ∈ Σ, so dass δ(p,a) und δ(q,a) nach Runde k getrennt sind⇒ ∃w mit |w | ≤ k, das δ(p,a) und δ(q,a) trennt⇒ aw trennt p und q und |aw | ≤ k + 1

37 07.11.2011 Andrea Schumm - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHEINFORMATIK

KIT

BehauptungZwei Zustände p und q sind nach Runde i des Table-Filling Algorith-mus getrennt gdw es ein Wort der Länge höchstens i gibt, das p undq trennt.

Beweis:

⇐∃w = av mit |w | ≤ k + 1 und w trennt p und q⇒ v trennt δ(p,a) und δ(q,a) und |v | ≤ k⇒ p und q sind nach Runde k + 1 getrennt