H¨ orer:
Automaten und Formale Sprachen 1. Vorlesung
Informatikstudierende im 3. Semester, Mathematikstudierende bei Bedarf
Martin Dietzfelbinger
¨ Material: Skript, Folienkopien, Ubungsbl¨ atter
11. Oktober 2005
Webseite: http://www.tu-ilmenau.de/fakia/AFS05.html ¨ Stoff: Skript + Ubungsaufgaben.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
FG KTuEA, TU Ilmenau
Zur Arbeitsweise: Der Stoff ist zu kompliziert und zu umfangreich, um durch reines Zuh¨ oren verstanden zu werden. • Regelm¨aßig Vorlesung nacharbeiten. Semesterbegleitend!
Automaten und Formale Sprachen – 11.10.2005
1
• Bei Verst¨andnisproblemen fr¨ uh fragen. Zeitaufwand: Mindestens 8 Zeitstunden pro Woche. ¨ D.h.: Neben Vorlesung + Ubung: 5 Stunden.
• Definitionen ( Konzepte“) und S¨atze herausschreiben und ” (auswendig) lernen.
Fr¨ uhzeitig fragen!
¨ ¨ • Ubungsbl¨ atter drucken, zur Ubung mitbringen, vorher L¨ osung ausdenken, an L¨osungen mitarbeiten. ¨ • Regelm¨aßig Ubungen nacharbeiten. Semesterbegleitend! • B¨ ucher konsultieren. (Sch¨oning, Wegener: s. Skript) FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
2
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
3
¨ Ubungsleiterin: Frau Dr. E. H¨ ubel
Tutorium f¨ ur ausl¨ andische Studierende: (kostenpflichtig)
Mittwoch 9.00 - 10.30 Uhr HU 010
Mittwochs, 17.00–18.30 Uhr im Raum Sr K 2077
Donnerstag 13.00 - 14.30 Uhr K 2003B
Tim Kubertschak
Donnerstag 15.00 - 16.30 Uhr HU 012
Beginn: letzte Oktoberwoche.
Pr¨ ufung: Februar 2006, Klausur 80 Minuten (M2004) 120 Minuten (M2003)
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
4
Gegenstand der Vorlesung: (Endliche) Automaten“: ” Endliche Menge von Zust¨anden“, endliche Menge von legalen ”¨ Eingangssignalen“, Ubergangsfunktion, Ausgabefunktion. ” Prinzip aus Rechnerorganisation“ bekannt. Hier: ” Mittel zur Beschreibung und maschinellen Bearbeitung von Formalen Sprachen“ , ” das sind Mengen von Strings (W¨ortern, Zeichenreihen).
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
5
• {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, . . . , 1001, 1002, . . .}: Menge der Dezimaldarstellungen von nat¨ urlichen Zahlen; erlaubte Zeichen: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. • {0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, . . .}: Menge der Bin¨ ardarstellungen der nat¨ urlichen Zahlen; erlaubte Zeichen: 0 und 1. • die Menge der korrekten Darstellungen f¨ ur Floating-pointZahlen in Pascal (oder C, oder C++, oder Java). • die Menge der korrekt gebildeten Namen ( identifier“) in ” Pascal-Programmen.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
6
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
7
Thema 1. Regul¨ are Sprachen“: ”
• die Menge der korrekt gebildeten arithmetischen Ausdr¨ ucke in Pascal-Progammen. • die Menge der syntaktisch korrekten Pascal-Programme, die auf allen Eingaben nach endlich vielen Schritten anhalten.
• Beschreibungs-/Spezifikationsm¨oglichkeiten: Grammatiken • Algorithmen zum Erkennen der W¨orter der Sprache: Automaten • Transformationen (effizient?) zwischen Grammatiken und Automaten • Optimale Automaten ( Minimalautomaten“) ” • Synthese von Sprachbeschreibungen: Aufbau aus Elementarbausteinen — regul¨ are Ausdr¨ ucke
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
8
• Konsistenz und Korrektheit von Beschreibungen: (Erkennt Automat A genau die W¨orter, die zu Grammatik G passen?)
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
9
Thema 2. Kontextfreie Sprachen“: ” • St¨arkere Klasse: kontextfreie Grammatiken • Syntaxb¨aume, Ableitungssequenzen
• Unm¨ oglichkeitsaussagen ( Sprache L besitzt keinen endlichen Automaten“) ”
• Erkennen der W¨orter der Sprache: Kellerautomaten • Transformationen (effizient?) zwischen Grammatiktypen und Automatentypen • Normalformen von Grammatiken • Unm¨ oglichkeitsaussagen
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
10
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
11
Methoden: Mathematisch
Mathematische Grundbegriffe: ¨ Ubung in dieser Woche
Definition Lemma (Hilfssatz) Satz Beweis (mitunter mit Hilfe eines Algorithmus) Korollar (Folgerung)
• Mengen, Funktionen, Relationen, Potenzmenge, . . . • Endliche Folgen, Tupel: (a1, . . . , an), n ≥ 0
Lernziel auch: Beweise f¨ uhren.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
12
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
13
Endliche Folgen
Kapitel 1: Grundbegriffe
Beispiele:
1.1 Alphabete und Sprachen
(2, 3, 2, 2, 1, 6) (4, 3, 0, 1) (3, 3) (a, b, a) (A, F, S, 2, 0, 0, 5)
Nat¨ urliche Zahlen:
(3, 0, 5)
()
(1)
Allgemein: N = {0, 1, 2, 3, . . .} (a0, a1, . . . , an−1) oder (a1, a2, . . . , an),
Positive ganze Zahlen:
f¨ ur ein n ∈ N. !! Wiederholungen sind erlaubt, Reihenfolge ist wichtig!
+
N = {1, 2, 3, . . .}
Seq(X) = {(a1, . . . , an) | n ≥ 0, a1, . . . , an ∈ X}. Menge aller endlichen Folgen u ¨ber X. FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
14
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
15
Spezialf¨alle: n = 0: Leere Folge ()
Alphabete und n = 1: Einerfolge (a). Beispiele:
Beispiele:
{a, . . . , z, A, . . . , Z, 0, . . . , 9} {0, 1}
Seq(N) und Seq({0, 1}) und Seq({0}) und Seq({a, . . . , z, A, . . . , Z, 0, . . . , 9})
{0} Menge der 128 ASCII-Zeichen {0, 1, . . . , 127} {0, 1}8 — Menge der 256 Bytes {0, 1}16 {0, 1}32 — Menge der Maschinenw¨orter
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
16
Definition: Ein Alphabet ist eine endliche nichtleere Menge. Symbole f¨ ur Alphabete: Σ (Sigma), ∆ (Delta), Γ (Gamma), . . .
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
17
Wenn ein Alphabet Σ gegeben ist, dann heißen die Elemente von Σ Buchstaben. Beispiele f¨ ur Buchstaben: Schreibmaschinen-Alphabet:
Keine Alphabete: ∅ oder N.
a b c A B
0
7
@
#
...
Alphabet Σ256 = {0, 1, . . . , 255}: 40
64
128
(Eine Zahl — ein Buchstabe!) S Alphabet {0, 1}[1..20] = 1≤i≤20{0, 1}i: 00100011
0010001110011101
Symbole f¨ ur Buchstaben: a, b, c, d, . . . , a0, a1, . . . FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
18
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
19
W¨ orter Klammern und Kommas weglassen, wo keine Verwechslung m¨ oglich!
Alphabet Σ sei gegeben. Beispiel: Σ = Menge der ASCII-Zeichen. Beispiele f¨ ur W¨orter u ¨ber Σ: begin +1.0E2 (2+3)-(2*15) 1001101 abracadabra end. Definition: Ein Wort u ¨ber Σ ist ein Element von Seq(Σ), d.h. eine endliche Folge von Elementen von Σ. Wort u ¨ber Σ:
w = (a1, . . . , an) = a1 . . . an
wobei a1, . . . , an ∈ Σ auch: String, Zeichenreihe, Zeichenkette Das leere Wort: () = ε FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
20
Beispiele: aba
statt
AFS2005
Automaten und Formale Sprachen – 11.10.2005
Symbole f¨ ur W¨orter: w, u, v, x, y, z, w0, w1, x0, x1
(a, b, a) statt
FG KTuEA, TU Ilmenau
21
usw.
L¨ ange eines Wortes: |a1 . . . an| = n
(A, F, S, 2, 0, 0, 5)
Klammern n¨ otig bei:
Anzahl der Buchstaben!
w = (11, 7, 9, 13, 20) bei Σ = {0, . . . , 31}
|ε| = 0
w = (010, 100, 110, 000, 111) bei Σ = {0, 1}3 (Oktalziffern, bin¨ar dargestellt)
Menge aller W¨orter u ¨ber Σ: Σ∗ := Seq(Σ) =
[
{Σn | n ∈ N} = Σ0 ∪ Σ1 ∪ Σ2 ∪ · · ·
Beispiel: Σ = {0, 1}. {0, 1}∗ = {ε, 0, 1, 00, 01, 10, 11, 000, 001, 010, . . .} FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
22
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
23
Gr¨ oßere W¨ orter:
• Der Inhalt des Hauptspeichers eines PC der Gr¨oße 128 MB, gruppiert in W¨orter `a 32 Bit: Wort u ¨ber Σ = {0, 1}32 der L¨ange 227/4 = 32 · 220 ≈ 32 Mio.
• Ein Pascal-Programm. Alphabet: Menge der druckbaren ASCII-Zeichen plus carriage return-, newline- und Tabulator-Zeichen. • Ein Textfile. Alphabet: Menge der druckbaren ASCII-Zeichen plus carriage return-, newline-, Tabulator- und eof -Zeichen. • Ein ASCII-File. Alphabet: Alle ASCII-Zeichen inklusive der Steuerzeichen.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
24
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
Konkatenation von W¨ortern:
◦ ist eine
Beispiele: 010 ◦ 1110 = 0101110. abra ◦ cadabra = abracadabra. (010, 10) ◦ (11, 01) = (010, 10, 11, 01).
• Abbildung / Funktion ◦ : Σ∗ × Σ∗ → Σ∗
25
• oder eine zweistellige Operation auf Σ∗. Neutrales Element: ε ◦ w = w ◦ ε = w
Definition (a1, . . . , an) ◦ (b1, . . . , bm) = (a1, . . . , an, b1, . . . , bm) Kurz: a1 . . . an ◦ b1 . . . bm = a1 . . . anb1 . . . bm Auch: a1 . . . an · b1 . . . bm. Manchmal: u · w statt u ◦ w Meistens: uw statt u ◦ w FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
26
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
27
Eigenschaften:
Konsequenz: Bei mehrfacher Konkatenation kann man eventuelle Klammern weglassen, z. B. 00 ◦ 01 ◦ 101 ◦ 01 ◦ 110 statt ((00 ◦ 01) ◦ 101) ◦ (01 ◦ 110).
Assoziativit¨ at: (u ◦ v) ◦ w = u ◦ (v ◦ w). Neutrales Element: ε ◦ u = u ◦ ε = u. Beispiel: (010 ◦ 1110) ◦ 01 = 010111001 = 010 ◦ (1110 ◦ 01) ε ◦ 1110 = 1110 ◦ ε = 1110. ε ◦ ε = ε. (Σ∗ mit Operation ◦ ist Monoid mit neutralem Element ε.)
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
28
Klar: |u ◦ v| = |u| + |v|.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
29
Klar: |u ◦ v|a = |u|a + |v|a. Pk Und: |u| = i=1 |u|bi , wenn u = (a1, . . . , an) Wort u ¨ber dem Alphabet Σ = {b1, . . . , bk } ist.
Notation: Wenn w ∈ Σ∗ und a ∈ Σ, schreibt man |w|a f¨ ur die Anzahl der Vorkommen von a in w.
!! Zwei Bedeutungen von Σ“. ”
Beispiel: |ababdabb|a = 3 |ababdabb|b = 4 |ababdabb|c = 0 |ababdabb|d = 1.
Beispiel: |ababdabb|a + |ababdabb|b + |ababdabb|c + |ababdabb|d = 3 + 4 + 0 + 1 = 8 = |ababdabb|.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
30
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
31
Wiederholungen
Achtung: Klammerung oft n¨otig.
Statt
Beispiele: 000120 = 000110 00(01)20 = 0001010 (0001)20 = 000100010
abacabacabacabac = abac ◦ abac ◦ abac ◦ abac schreibe kurz (abac)4. Induktive Definition“: F¨ ur Wort w definiere: ” (i)
w0 := ε.
(ii)
ur i ≥ 1. wi := w ◦ wi−1 , f¨
Wenn a = 0 und w = 101: a0 = w0 = ε a6 = 000000 w3a2 = 10110110100. Schachtelung m¨oglich: (a3w)2 = (000101)2 = 000101000101
Anschaulich: wi = |w ◦ w ◦{z· · · ◦ w} = ww · · · w}. | {z i−mal
FG KTuEA, TU Ilmenau
i−mal
Automaten und Formale Sprachen – 11.10.2005
32
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
33
Definition
Beispiel: • Im Wort abracadabra “ kommt racada“ als (zusam” ” menh¨angender) Teil vor. → Teilwort
u Pr¨ afix/Anfangsst¨ uck von w: ⇔ ∃v ∈ Σ∗ : w = uv u Suffix/Endst¨ uck von w: ⇔ ∃v ∈ Σ∗ : w = vu u Infix/Teilwort von w: ⇔ ∃v1, v2 ∈ Σ∗ : w = v1uv2
• Das Wort if 1+1 = 3 then a := false endif“ ” → Pr¨ afix beginnt mit if“. ” • Das Wort if 1+1 = 3 then a := false endif“ ” endet mit dif“. → Suffix ”
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
34
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
35
Definition
Teilw¨ orter von abracadabra: ε, abra, racada, abracadabra
Σ∗ = Seq(Σ) = {w | w Wort u ¨ber Σ} D.h.: Σ∗ = {a1 . . . an | n ∈ N, a1, . . . , an ∈ Σ}
Pr¨afixe von abracadabra: ε, abrac, abracadabra
Die Menge aller Zeichenketten u ¨ber Σ. Konvention: a ∈ Σ ⇒ a ∈ Σ∗
Suffixe von abracadabra: ε, cadabra, abracadabra
(Betrachte (a) als mit a identisch“.) ” Also: Σ ⊆ Σ∗ Unterscheide Σ (endlich) und Σ∗ (unendlich) Beispiel: Σ = {1, 2, 3} 2, 3}, 11, 12, 13, 21, 22, 23, 31, 32, 33, 111, 112, . . .} Σ∗ = {ε, 1, | {z Σ
∗
+
Σ := Σ − {ε} = {a1 . . . an | n ≥ 1, a1, . . . , an ∈ Σ}
FG KTuEA, TU Ilmenau
Definition:
Automaten und Formale Sprachen – 11.10.2005
36
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
37
Die Menge aller Dezimaldarstellungen von Primzahlen bildet eine Sprache u ¨ber
(Formale) Sprache
(a) Sei Σ ein Alphabet. Eine Sprache u ¨ber Σ ist eine Menge L ⊆ Σ∗.
Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9},
(b) Eine Menge L heißt eine Sprache, wenn es ein Alphabet Σ gibt, so dass L ⊆ Σ∗. ( Σ ist durch L nicht eindeutig festgelegt.)
n¨amlich: L = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, . . .}. Aber Achtung: Die Menge {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, . . .} ⊆ N aller Primzahlen ist keine Sprache! (Es ist kein Alphabet da! Die Elemente sind Zahlen und nicht W¨ orter.)
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
38
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
39
Weitere Beispiele f¨ ur Sprachen:
• {ε, 1, 11, 111, 1111, 11111, . . .}: Un¨ardarstellungen nat¨ urlichen Zahlen ( Strichlisten“) ”
• L∅ = ∅: die leere Sprache
der
• Lε = {ε}: enth¨alt das leere Wort und sonst nichts • Σ ⊆ Σ∗, daher ist Σ Sprache. • F¨ ur Σ = {0, 1}: Σ8 enth¨alt genau die 256 Bytes Σ32 enth¨alt genau die 232 verschiedenen Maschinenw¨ orter • Lbin = {0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, . . .}: Bin¨ardarstellungen bin(n) der nat¨ urlichen Zahlen FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
40
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
41
Satz
Annahme: Das geht doch: Alle Elemente von LΣ als Folge L1, L2, L3, L4, . . .
Wenn LΣ := {L | L Sprache u ¨ber Σ}, dann ist LΣ u ¨berabz¨ahlbar.
Dann definiere eine neue Sprache
Es gibt sehr viele Sprachen u ¨ber Σ.
Schreibe die Elemente von Σ∗ als Folge: w1, w2, w3, . . .
Das heißt: Man kann die Elemente von LΣ nicht als Folge
L× = {wi | i ≥ 1, wi ∈ / Li}.
L1, L2, L3, L4, . . .
Nun sei j beliebig. Wir haben:
anordnen.
/ L× wj ∈ Lj ⇔ wj ∈
Beweis: Indirekt. ( Diagonalisierung“) ”
Daraus folgt, dass L× 6= Lj ist. Also kommt L× nicht in der Liste L1, L2, L3, L4, . . . vor. Widerspruch.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
42
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
43
Operationen mit Sprachen:
Neutrales Element Lε:
Sind L1 und L2 Sprachen, so heißt L1L2 = {w1w2 | w1 ∈ L1, w2 ∈ L2}
LεL = LLε = L f¨ ur jede Sprache L. (auch L1◦L2 oder L1·L2) Ausl¨ oschendes Element L∅:
die Konkatenation von L1 und L2. L∅L = LL∅ = L∅ = ∅ f¨ ur jede Sprache L.
Beispiele: {0}∗{1}∗ = {0i1j | i, j ≥ 0}, {0} ∪ {1}{0, 1}∗ = Lbin. Die Konkatenation ist assoziativ, d. h. (L1L2)L3 = L1(L2L3).
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
44
L∗ :=
Formal: L0 := Lε; L
i−1
:= LL
Automaten und Formale Sprachen – 11.10.2005
45
Kleene-Abschluss von L:
Potenzen von Sprachen ur i ≥ 0. Li := {w1w2 · · · wi | w1, . . . , wi ∈ L}, f¨
i
FG KTuEA, TU Ilmenau
[
L+ :=
f¨ ur i ≥ 1.
{Li | i ≥ 0} = L0 ∪ L1 ∪ L2 ∪ L3 ∪ · · ·
[
{Li | i ≥ 1} = L1 ∪ L2 ∪ L3 ∪ · · · .
¨ Ubung: L+ = LL∗ = L∗L
Beachte: {wi | w ∈ L} ⊆ Li, meist nicht Gleichheit! Beispiel: 6 {0101, 1010} {01, 10}2 = {0101, 0110, 1001, 1010} =
Beachte Unterschied zwischen L∗ und {wi | w ∈ L, i ≥ 0}! Beispiel: F¨ ur L = {0, 11} ist 011001111011 = 0(11)00(11)(11)0(11) in L∗ enthalten, nicht aber in {wi | w ∈ L, i ≥ 0}.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
46
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
47
Mengenoperationen f¨ ur Sprachen:
Sprechweise: Klasse“ von Sprachen (nicht Menge“). ” ” Beispiele: Die Klasse aller Sprachen“, ” die Klasse der unendlichen Sprachen“, die Klasse der Spra” ” chen u ¨ber einem einelementigen Alphabet“, die Klasse der regul¨aren Sprachen“, usw. ”
Vereinigung L1 ∪ L2 und Durchschnitt L1 ∩ L2. Ist L Sprache u ¨ber Σ, ist auch das Komplement L = Σ∗ − L Sprache u ¨ber Σ.
(Sind keine Mengen im eigentlichen Sinn.)
Beispiele: F¨ ur L1 = {w ∈ {0, 1}∗ | |w|0 = |w|1} und L2 = {0}∗{1}∗ = {0i1j | i, j ≥ 0}: L1 ∩ L2 = {0i1j | i = j} = {ε, 01, 0011, 000111, . . .} und L1 = {w ∈ {0, 1}∗ | |w|0 6= |w|1}. FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
48
Bis n¨achste Woche: Skript besorgen/drucken. Skript Seiten 8–15. Skript Seiten 202–205: b-¨are Zahldarstellung. Definitionen lernen, Beispiele ansehen, Fragen vorbereiten. ¨ Ubungsaufgaben vorbereiten.
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
50
FG KTuEA, TU Ilmenau
Automaten und Formale Sprachen – 11.10.2005
49