Endliche Automaten. Endliche Automaten 1 / 102
|
|
- Frieder Hofmeister
- vor 6 Jahren
- Abrufe
Transkript
1 Endliche Automaten Endliche Automaten 1 / 102
2 Endliche Automaten Endliche Automaten erlauben eine Beschreibung von Handlungsabläufen: Wie ändert sich ein Systemzustand in Abhängigkeit von veränderten Umgebungsbedingungen? Endliche Automaten 2 / 102
3 Endliche Automaten Endliche Automaten erlauben eine Beschreibung von Handlungsabläufen: Wie ändert sich ein Systemzustand in Abhängigkeit von veränderten Umgebungsbedingungen? Vielfältiges Einsatzgebiet, nämlich: - in der Definition der regulären Sprachen also der Menge aller Folgen von Ereignissen, die von einem Startzustand in einen gewünschten Zustand führen, - in der Entwicklung digitaler Schaltungen - in der Softwaretechnik (z. B. in der Modellierung des Applikationsverhaltens) - in der Compilierung: Lexikalische Analyse - im Algorithmenentwurf für String Probleme - in der Abstraktion tatsächlicher Automaten (wie Bank- und Getränkeautomaten, Fahrstühle etc.). Endliche Automaten 2 / 102
4 Freischaltung eines Fernsehers (1/2) Um die Kindersicherung des Fernsehers über die Fernbedienung freizuschalten, muss ein dreistelliger Code korrekt eingegeben werden. Dabei sind die folgenden Tasten relevant: - Die Tasten 0,..., 9, - die Taste CODE sowie - die Taste BACK. Endliche Automaten Beispiele 3 / 102
5 Freischaltung eines Fernsehers (1/2) Um die Kindersicherung des Fernsehers über die Fernbedienung freizuschalten, muss ein dreistelliger Code korrekt eingegeben werden. Dabei sind die folgenden Tasten relevant: - Die Tasten 0,..., 9, - die Taste CODE sowie - die Taste BACK. Wird BACK gedrückt, so wird die zuletzt eingegebene Zahl zurückgenommen. Die Taste CODE muss vor Eingabe des Codes gedrückt werden. Wird CODE während der Codeeingabe nochmals gedrückt, so wird die Eingabe neu begonnen. Der Code zum Entsperren ist 999. Endliche Automaten Beispiele 3 / 102
6 Freischaltung eines Fernsehers (2/2) CODE BACK CODE ready 9 BACK CODE 9 9 BACK 9 99 ON CODE 0,...,8 x BACK CODE CODE CODE 0,...,8 9x BACK 0,...,8 0,...,9 BACK xx 0,...,9 0,...,9 OFF 0,...,9 BACK Der Automat akzeptiert alle Folgen von Bedienoperationen, die vom Zustand ready in den Zustand ON führen. Endliche Automaten Beispiele 4 / 102
7 Was ist ein endlicher Automat? Ein deterministischer endlicher Automat (engl. deterministic finite automaton, kurz DFA) A = (Σ, Q, δ, q 0, F ) besteht aus: einer endlichen Menge Σ, dem Eingabealphabet, einer endlichen Menge Q, der Zustandsmenge (die Elemente aus Q werden Zustände genannt), einer Funktion δ von Q Σ nach Q, der Übergangsfunktion (oder Überführungsfunktion), einem Zustand q 0 Q, dem Startzustand, sowie einer Menge F Q von Endzuständen bzw. akzeptierenden Zuständen. (Der Buchstabe F steht für final states, also Endzustände ). Endliche Automaten DFAs: Die formale Definition 5 / 102
8 Der Automatengraph, die grafische Darstellung eines DFA Endliche Automaten Der Automatengraph 6 / 102
9 Grafische Darstellung: Der Automatengraph A = (Σ, Q, δ, q 0, F ) sei ein DFA. Für jeden Zustand q Q gibt es einen durch q dargestellten Knoten. Endliche Automaten Der Automatengraph 7 / 102
10 Grafische Darstellung: Der Automatengraph A = (Σ, Q, δ, q 0, F ) sei ein DFA. Für jeden Zustand q Q gibt es einen durch q dargestellten Knoten. Der Startzustand q 0 wird durch einen in ihn hinein führenden Pfeil markiert, d.h.: q 0 Endliche Automaten Der Automatengraph 7 / 102
11 Grafische Darstellung: Der Automatengraph A = (Σ, Q, δ, q 0, F ) sei ein DFA. Für jeden Zustand q Q gibt es einen durch q dargestellten Knoten. Der Startzustand q 0 wird durch einen in ihn hinein führenden Pfeil markiert, d.h.: q 0 Jeder akzeptierende Zustand q F wird durch eine doppelte Umrandung markiert, d.h.: q Endliche Automaten Der Automatengraph 7 / 102
12 Grafische Darstellung: Der Automatengraph A = (Σ, Q, δ, q 0, F ) sei ein DFA. Für jeden Zustand q Q gibt es einen durch q dargestellten Knoten. Der Startzustand q 0 wird durch einen in ihn hinein führenden Pfeil markiert, d.h.: q 0 Jeder akzeptierende Zustand q F wird durch eine doppelte Umrandung markiert, d.h.: Seien p, q Q Zustände und a Σ ein Symbol des Alphabets mit δ(q, a) = p. Dann füge einen mit dem Symbol a beschrifteten Pfeil von Knoten q zu Knoten p ein, d.h.: q q a p Endliche Automaten Der Automatengraph 7 / 102
13 Vom Automatengraph zur formalen Beschreibung Der DFA A 1 hat den Automatengraphen a q 0 q 1 a b b Wir möchten A 1 formal beschreiben. 1 Das Eingabealphabet Σ = Endliche Automaten Der Automatengraph 8 / 102
14 Vom Automatengraph zur formalen Beschreibung Der DFA A 1 hat den Automatengraphen a q 0 q 1 a b b Wir möchten A 1 formal beschreiben. 1 Das Eingabealphabet Σ = {a, b}, 2 die Zustandsmenge Q = Endliche Automaten Der Automatengraph 8 / 102
15 Vom Automatengraph zur formalen Beschreibung Der DFA A 1 hat den Automatengraphen a q 0 q 1 a b b Wir möchten A 1 formal beschreiben. 1 Das Eingabealphabet Σ = {a, b}, 2 die Zustandsmenge Q = {q 0, q 1 } 3 die Übergangsfunktion δ : Q Σ Q: siehe Tafel. Endliche Automaten Der Automatengraph 8 / 102
16 Vom Automatengraph zur formalen Beschreibung Der DFA A 1 hat den Automatengraphen a q 0 q 1 a b b Wir möchten A 1 formal beschreiben. 1 Das Eingabealphabet Σ = {a, b}, 2 die Zustandsmenge Q = {q 0, q 1 } 3 die Übergangsfunktion δ : Q Σ Q: siehe Tafel. 4 der Startzustand q 0 und 5 die Menge F = Endliche Automaten Der Automatengraph 8 / 102
17 Vom Automatengraph zur formalen Beschreibung Der DFA A 1 hat den Automatengraphen a q 0 q 1 a b b Wir möchten A 1 formal beschreiben. 1 Das Eingabealphabet Σ = {a, b}, 2 die Zustandsmenge Q = {q 0, q 1 } 3 die Übergangsfunktion δ : Q Σ Q: siehe Tafel. 4 der Startzustand q 0 und 5 die Menge F = {q 1 } der akzeptierenden Zustände. Endliche Automaten Der Automatengraph 8 / 102
18 Wie arbeitet ein DFA? Die erweiterte Übergangsfunktion Endliche Automaten Die erweiterte Übergangsfunktion 9 / 102
19 Wie arbeitet ein DFA A = (Σ, Q, δ, q 0, F )? (1/2) Ein DFA A = (Σ, Q, δ, q 0, F ) erhält als Eingabe ein Wort w Σ. (Das Wort repräsentiert eine Folge von Aktionen oder Bedienoperationen.) A wird im Startzustand q 0 gestartet. 0. Falls w das leere Wort ist, d.h. w = ε, dann verbleibt A im Zustand q 0. Endliche Automaten Die erweiterte Übergangsfunktion 10 / 102
20 Wie arbeitet ein DFA A = (Σ, Q, δ, q 0, F )? (1/2) Ein DFA A = (Σ, Q, δ, q 0, F ) erhält als Eingabe ein Wort w Σ. (Das Wort repräsentiert eine Folge von Aktionen oder Bedienoperationen.) A wird im Startzustand q 0 gestartet. 0. Falls w das leere Wort ist, d.h. w = ε, dann verbleibt A im Zustand q Also gelte w = a 1 a n mit n N >0 und a 1,..., a n Σ. Der Automat liest den ersten Buchstaben a 1 von w und wechselt in den Zustand q 1 := Endliche Automaten Die erweiterte Übergangsfunktion 10 / 102
21 Wie arbeitet ein DFA A = (Σ, Q, δ, q 0, F )? (1/2) Ein DFA A = (Σ, Q, δ, q 0, F ) erhält als Eingabe ein Wort w Σ. (Das Wort repräsentiert eine Folge von Aktionen oder Bedienoperationen.) A wird im Startzustand q 0 gestartet. 0. Falls w das leere Wort ist, d.h. w = ε, dann verbleibt A im Zustand q Also gelte w = a 1 a n mit n N >0 und a 1,..., a n Σ. Der Automat liest den ersten Buchstaben a 1 von w und wechselt in den Zustand q 1 := δ(q 0, a 1 ). In der grafischen Darstellung von A wird der Zustand durch die mit a 1 beschriftete Kante verlassen, und q 1 ist der Endknoten dieser Kante, d.h. a q 1 0 q 1 q 0 Endliche Automaten Die erweiterte Übergangsfunktion 10 / 102
22 Wie arbeitet ein DFA A = (Σ, Q, δ, q 0, F )? (2/2) 2. Durch Lesen von a 2, dem zweiten Symbol von w, wechselt A in den Zustand q 2 := Endliche Automaten Die erweiterte Übergangsfunktion 11 / 102
23 Wie arbeitet ein DFA A = (Σ, Q, δ, q 0, F )? (2/2) 2. Durch Lesen von a 2, dem zweiten Symbol von w, wechselt A in den Zustand q 2 := δ(q 1, a 2 ). In der grafischen Darstellung von A wird q 1 durch die mit a 2 beschriftete a Kante q 2 1 q 2 q 2 = δ(q 1, a 2 ). verlassen und der Automat landet in Zustand Endliche Automaten Die erweiterte Übergangsfunktion 11 / 102
24 Wie arbeitet ein DFA A = (Σ, Q, δ, q 0, F )? (2/2) 2. Durch Lesen von a 2, dem zweiten Symbol von w, wechselt A in den Zustand q 2 := δ(q 1, a 2 ). In der grafischen Darstellung von A wird q 1 durch die mit a 2 beschriftete a Kante q 2 1 q 2 verlassen und der Automat landet in Zustand q 2 = δ(q 1, a 2 ). n. Auf diese Weise wird das gesamte Eingabewort w = a 1 a n abgearbeitet. Ausgehend vom Startzustand q0 erreicht A nacheinander Zustände q 1,..., q n. In der grafischen Darstellung von A entspricht diese Zustandsfolge einem Weg der Länge n, der im Knoten q 0 startet und dessen Kanten mit den Buchstaben a 1,..., a n beschriftet sind. Schreibe δ(q0, w) := q n. Endliche Automaten Die erweiterte Übergangsfunktion 11 / 102
25 Die erweiterte Übergangsfunktion für den DFA A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b 1 δ(q0, ab) = Endliche Automaten Die erweiterte Übergangsfunktion 12 / 102
26 Die erweiterte Übergangsfunktion für den DFA A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b 1 δ(q0, ab) = q 0 2 δ(q0, ababab) = Endliche Automaten Die erweiterte Übergangsfunktion 12 / 102
27 Die erweiterte Übergangsfunktion für den DFA A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b 1 δ(q0, ab) = q 0 2 δ(q0, ababab) = q 0 3 δ(q1, ababab) = Endliche Automaten Die erweiterte Übergangsfunktion 12 / 102
28 Die erweiterte Übergangsfunktion für den DFA A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b 1 δ(q0, ab) = q 0 2 δ(q0, ababab) = q 0 3 δ(q1, ababab) = q 0 4 δ(q1, abbaba) = Endliche Automaten Die erweiterte Übergangsfunktion 12 / 102
29 Die erweiterte Übergangsfunktion für den DFA A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b 1 δ(q0, ab) = q 0 2 δ(q0, ababab) = q 0 3 δ(q1, ababab) = q 0 4 δ(q1, abbaba) = q 1 5 δ(q0, (ba) 100 ) = Endliche Automaten Die erweiterte Übergangsfunktion 12 / 102
30 Die erweiterte Übergangsfunktion für den DFA A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b 1 δ(q0, ab) = q 0 2 δ(q0, ababab) = q 0 3 δ(q1, ababab) = q 0 4 δ(q1, abbaba) = q 1 5 δ(q0, (ba) 100 ) = q 1 Endliche Automaten Die erweiterte Übergangsfunktion 12 / 102
31 Was genau ist δ(q, w)? Sei A := (Σ, Q, δ, q 0, F ) ein DFA. Eine rekursive Definition der Funktion δ : Q Σ Q Der Rekursionsanfang: f.a. q Q ist δ(q, ε) := Endliche Automaten Die erweiterte Übergangsfunktion 13 / 102
32 Was genau ist δ(q, w)? Sei A := (Σ, Q, δ, q 0, F ) ein DFA. Eine rekursive Definition der Funktion δ : Q Σ Q Der Rekursionsanfang: f.a. q Q ist δ(q, ε) := q. Der Rekursionsschritt: F.a. q Q, w Σ und a Σ gilt für q := δ(q, w): δ(q, wa) := Endliche Automaten Die erweiterte Übergangsfunktion 13 / 102
33 Was genau ist δ(q, w)? Sei A := (Σ, Q, δ, q 0, F ) ein DFA. Eine rekursive Definition der Funktion δ : Q Σ Q Der Rekursionsanfang: f.a. q Q ist δ(q, ε) := q. Der Rekursionsschritt: F.a. q Q, w Σ und a Σ gilt für q := δ(q, w): δ(q, wa) := δ(q, a). Grafische Darstellung: q w a ˆδ(q, w) δ(ˆδ(q, w), a) wa δ(q 0, w) ist der Zustand, der nach Verarbeitung des Worts w erreicht wird. Endliche Automaten Die erweiterte Übergangsfunktion 13 / 102
34 DFAs: Die Maschinensichtweise Verarbeitung eines Eingabeworts durch einen DFA A: w = Lesekopf a 1 a 2 a 3 q 0 aktueller Zustand Wir können uns einen DFA als eine Maschine vorstellen, die ihre Eingabe w = a 1 a 2 a 3 a n von links-nach-rechts mit Hilfe eines Lesekopfes durchläuft und dabei Zustandsübergänge durchführt. Endliche Automaten DFAs: Die Maschinensichtweise 14 / 102
35 Die akzeptierte Sprache eines DFA DFAs und ihre Sprachen 15 / 102
36 Wann akzeptiert A = (Σ, Q, δ, q 0, F ) ein Wort w? Das Eingabewort w wird vom DFA A akzeptiert, falls δ(q 0, w) F, d.h., falls der nach Verarbeitung von w erreichte Zustand zur Menge F der akzeptierenden Zustände gehört. Wie übersetzt sich in der grafischen Darstellung von A? Akzeptanz von w = a 1 a n DFAs und ihre Sprachen 16 / 102
37 Wann akzeptiert A = (Σ, Q, δ, q 0, F ) ein Wort w? Das Eingabewort w wird vom DFA A akzeptiert, falls δ(q 0, w) F, d.h., falls der nach Verarbeitung von w erreichte Zustand zur Menge F der akzeptierenden Zustände gehört. Wie übersetzt sich Akzeptanz von w = a 1 a n in der grafischen Darstellung von A? Es gibt einen in q 0 startenden Weg der Länge n, - dessen Kanten mit den Symbolen a 1,..., a n beschriftet sind, - und der in einem akzeptierenden Zustand endet. DFAs und ihre Sprachen 16 / 102
38 Die akzeptierte Sprache L(A) Die von einem DFA A = (Σ, Q, δ, q 0, F ) akzeptierte Sprache L(A) ist L(A) := { w Σ : DFAs und ihre Sprachen 17 / 102
39 Die akzeptierte Sprache L(A) Die von einem DFA A = (Σ, Q, δ, q 0, F ) akzeptierte Sprache L(A) ist L(A) := { w Σ : δ(q0, w) F }. Ein Wort w Σ gehört also genau dann zur Sprache L(A), wenn w vom DFA A akzeptiert wird. DFAs und ihre Sprachen 17 / 102
40 Der Automat A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b A 1 akzeptiert die Sprache L(A 1 ) = {w {a, b} : DFAs und ihre Sprachen Beispiele 18 / 102
41 Der Automat A 1 Wir betrachten wieder den DFA A 1 mit dem Automatengraphen a q 0 q 1 a b b A 1 akzeptiert die Sprache L(A 1 ) = {w {a, b} : der letzte Buchstabe von w ist ein a } DFAs und ihre Sprachen Beispiele 18 / 102
42 Der Automat A 2 Der DFA A 2 mit dem Automatengraphen b q bb a q ba a b q aa b a b a q ab akzeptiert die Sprache L(A 2 ) = {w {a, b} : DFAs und ihre Sprachen Beispiele 19 / 102
43 Der Automat A 2 Der DFA A 2 mit dem Automatengraphen b q bb a q ba a b q aa b a b a q ab akzeptiert die Sprache L(A 2 ) = {w {a, b} : der vorletzte Buchstabe von w ist ein a } DFAs und ihre Sprachen Beispiele 19 / 102
44 Ein Paritätscheck Bei der Speicherung von Daten auf einem Speichermedium eines Computers werden Informationen durch binäre Worte über dem Alphabet {0, 1} kodiert. Um Fehler bei der Datenübertragung zu erkennen, wird oft ein Paritätsbit angehängt, so dass die Summe der Einsen im resultierenden Wort w gerade ist. Für ein beliebiges Wort w {0, 1} sagen wir w besteht den Paritätscheck, falls die Anzahl der Einsen in w gerade ist. Der folgende DFA A führt einen Paritätscheck durch: DFAs und ihre Sprachen Beispiele 20 / 102
45 Ein Paritätscheck Bei der Speicherung von Daten auf einem Speichermedium eines Computers werden Informationen durch binäre Worte über dem Alphabet {0, 1} kodiert. Um Fehler bei der Datenübertragung zu erkennen, wird oft ein Paritätsbit angehängt, so dass die Summe der Einsen im resultierenden Wort w gerade ist. Für ein beliebiges Wort w {0, 1} sagen wir w besteht den Paritätscheck, falls die Anzahl der Einsen in w gerade ist. Der folgende DFA A führt einen Paritätscheck durch: q 0 q 1 1 Für A gilt: L(A) = {w {0, 1} : w besteht den Paritätscheck }. DFAs und ihre Sprachen Beispiele 20 / 102
46 Minimierung von DFAs Minimierung 21 / 102
47 Minimiere die Zustandszahl A = (Σ, Q A, δ A, q A 0, F A ) und B = (Σ, Q B, δ B, q B 0, F B ) seien DFAs. (a) Wir nennen A und B äquivalent, wenn gilt (b) A heißt L(A) = L(B). minimal, wenn kein mit A äquivalenter vollständiger DFA eine kleinere Zustandszahl besitzt. Minimierung 22 / 102
48 Minimiere die Zustandszahl A = (Σ, Q A, δ A, q A 0, F A ) und B = (Σ, Q B, δ B, q B 0, F B ) seien DFAs. (a) Wir nennen A und B äquivalent, wenn gilt (b) A heißt L(A) = L(B). minimal, wenn kein mit A äquivalenter vollständiger DFA eine kleinere Zustandszahl besitzt. DAS ZIEL: Gegeben ist ein DFA A. Bestimme einen minimalen, mit A äquivalenten DFA. Minimierung 22 / 102
49 Zustandsminimierung: Die Idee Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Die Idee: Wir sollten doch zwei Zustände p, q Q zu einem einzigen Zustand verschmelzen dürfen, wenn p und q aquivalent sind, Aber was bedeutet das? also dasselbe Ausgabeverhalten besitzen. Minimierung 23 / 102
50 Zustandsminimierung: Die Idee Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Die Idee: Wir sollten doch zwei Zustände p, q Q zu einem einzigen Zustand verschmelzen dürfen, wenn p und q aquivalent sind, Aber was bedeutet das? also dasselbe Ausgabeverhalten besitzen. Die Verschmelzungsrelation A ist eine 2-stellige Relation über der Zustandsmenge Q. Wir sagen, dass Zustände p, q Q äquivalent bzgl. A sind, (kurz p A q), wenn f.a. Worte w Σ : Minimierung 23 / 102
51 Zustandsminimierung: Die Idee Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Die Idee: Wir sollten doch zwei Zustände p, q Q zu einem einzigen Zustand verschmelzen dürfen, wenn p und q aquivalent sind, Aber was bedeutet das? also dasselbe Ausgabeverhalten besitzen. Die Verschmelzungsrelation A ist eine 2-stellige Relation über der Zustandsmenge Q. Wir sagen, dass Zustände p, q Q äquivalent bzgl. A sind, (kurz p A q), wenn f.a. Worte w Σ : δ(p, w) F δ(q, w) F. Wir nennen A Verschmelzungsrelation, da wir bzgl. A äquivalente Zustände in einen Zustand verschmelzen möchten. Minimierung 23 / 102
52 Einschub: Äquivalenzrelationen Minimierung 24 / 102
53 2-stellige Relationen und gerichtete Graphen Zur Erinnerung: Für eine 2-stellige Relation R über der Knotenmenge V gilt R V V. Wir können somit die Relation R als Kantenmenge und umgekehrt eine Kantenmenge als eine 2-stellige Relation auffassen. Minimierung 25 / 102
54 2-stellige Relationen und gerichtete Graphen Zur Erinnerung: Für eine 2-stellige Relation R über der Knotenmenge V gilt R V V. Wir können somit die Relation R als Kantenmenge und umgekehrt eine Kantenmenge als eine 2-stellige Relation auffassen. Gerichtete Graphen mit Knotenmenge V und 2-stellige Relationen über V sind äquivalente Konzepte! Minimierung 25 / 102
55 Wichtige Eigenschaften 2-stelliger Relationen Sei E eine 2-stellige Relation über einer Menge V, d.h. G = (V, E) ist ein gerichteter Graph. (a) E heißt reflexiv, falls für alle v V gilt: (v, v) E. (Skizze: v ) Minimierung 26 / 102
56 Wichtige Eigenschaften 2-stelliger Relationen Sei E eine 2-stellige Relation über einer Menge V, d.h. G = (V, E) ist ein gerichteter Graph. (a) E heißt reflexiv, falls für alle v V gilt: (v, v) E. (Skizze: v ) (b) E heißt symmetrisch, falls f.a. v, w V gilt: Wenn (v, w) E, dann auch (w, v) E. Zur Kante v w gibt es auch die Rückwärtskante v w Minimierung 26 / 102
57 Wichtige Eigenschaften 2-stelliger Relationen Sei E eine 2-stellige Relation über einer Menge V, d.h. G = (V, E) ist ein gerichteter Graph. (a) E heißt reflexiv, falls für alle v V gilt: (v, v) E. (Skizze: v ) (b) E heißt symmetrisch, falls f.a. v, w V gilt: Wenn (v, w) E, dann auch (w, v) E. Zur Kante v w gibt es auch die Rückwärtskante v w (c) E heißt transitiv, falls f.a. v, w, u V gilt: Ist (v, w) E und (w, u) E, so auch (v, u) E. Minimierung 26 / 102
58 Wichtige Eigenschaften 2-stelliger Relationen Sei E eine 2-stellige Relation über einer Menge V, d.h. G = (V, E) ist ein gerichteter Graph. (a) E heißt reflexiv, falls für alle v V gilt: (v, v) E. (Skizze: v ) (b) E heißt symmetrisch, falls f.a. v, w V gilt: Wenn (v, w) E, dann auch (w, v) E. Zur Kante v w gibt es auch die Rückwärtskante v w (c) E heißt transitiv, falls f.a. v, w, u V gilt: Ist (v, w) E und (w, u) E, so auch (v, u) E. E (Skizze: v w u E E v w u ) E E Minimierung 26 / 102
59 Äquivalenzrelationen (a) Eine Äquivalenzrelation ist eine 2-stellige Relation, die reflexiv, transitiv und symmetrisch ist. Minimierung Äquivalenzrelationen 27 / 102
60 Äquivalenzrelationen (a) Eine Äquivalenzrelation ist eine 2-stellige Relation, die reflexiv, transitiv und symmetrisch ist. (b) Sei E eine Äquivalenzrelation über einer Menge V. Für jedes v V bezeichnet [v] E := { v V (v, v ) E } die Äquivalenzklasse von v bezüglich E. [v] E besteht aus allen Elementen von V, die gemäß E äquivalent zu v sind. Eine Menge W V heißt Äquivalenzklasse (bzgl. E), falls W = [v] E für ein Element v V gilt. Das Element v heißt Vertreter seiner Äquivalenzklasse W. Minimierung Äquivalenzrelationen 27 / 102
61 Die wichtigste Eigenschaft von Äquivalenzrelationen Sei E eine Äquivalenzrelation über der Menge V. (a) Dann gilt für alle Elemente v, w V [v] E = [w] E oder [v] E [w] E =. (b) V ist eine disjunkte Vereinigung von Äquivalenzklassen. Beweis: Siehe Tafel. Minimierung Äquivalenzrelationen 28 / 102
62 Äquivalenzrelationen: Beispiele (1/2) (a) Gleichheit: Für jede Menge M ist E := { (m, m) : m M } eine Äquivalenzrelation: (x, y) E gilt genau dann, wenn x = y. Minimierung Äquivalenzrelationen 29 / 102
63 Äquivalenzrelationen: Beispiele (1/2) (a) Gleichheit: Für jede Menge M ist E := { (m, m) : m M } eine Äquivalenzrelation: (x, y) E gilt genau dann, wenn x = y. (b) Gleichmächtigkeit: Für jede endliche Menge M ist E := { (A, B) : A M, B M, A = B } eine Äquivalenzrelation über der Potenzmenge M. Skizze für M = {1, 2}: Minimierung Äquivalenzrelationen 29 / 102
64 Äquivalenzrelationen: Beispiele (1/2) (a) Gleichheit: Für jede Menge M ist E := { (m, m) : m M } eine Äquivalenzrelation: (x, y) E gilt genau dann, wenn x = y. (b) Gleichmächtigkeit: Für jede endliche Menge M ist E := { (A, B) : A M, B M, A = B } eine Äquivalenzrelation über der Potenzmenge M. Skizze für M = {1, 2}: {1, 2} {1} {2} Minimierung Äquivalenzrelationen 29 / 102
65 Äquivalenzrelationen: Beispiele (2/2) (c) Logische Äquivalenz: Die Relation E := { (φ, ψ) : φ, ψ AL, φ ψ } ist eine Äquivalenzrelation über der Menge AL aller aussagenlogischen Formeln. Minimierung Äquivalenzrelationen 30 / 102
66 Äquivalenzrelationen: Beispiele (2/2) (c) Logische Äquivalenz: Die Relation E := { (φ, ψ) : φ, ψ AL, φ ψ } ist eine Äquivalenzrelation über der Menge AL aller aussagenlogischen Formeln. (d) Graph-Isomorphie: Für jede Menge V ist E := {(G 1, G 2 ) G 1 = (V, E 1 ), G 2 = (V, E 2 ) sind isomorphe ungerichtete Graphen } eine Äquivalenzrelation über der Menge aller ungerichteten Graphen mit Knotenmenge V. Minimierung Äquivalenzrelationen 30 / 102
67 Der Index Sei E eine Äquivalenzrelation. Dann ist der Index von E die Anzahl der verschiedenen Äquivalenzklassen. Der Index einer Äquivalenzrelation gibt an, wie viele verschiedene Äquivalenzklassen es gibt. Betrachte wieder die Äquivalenzrelation der Gleichmächtigkeit für Teilmengen A, B M, also Dann stimmt der Index überein mit A = B A = B. Minimierung Äquivalenzrelationen 31 / 102
68 Der Index Sei E eine Äquivalenzrelation. Dann ist der Index von E die Anzahl der verschiedenen Äquivalenzklassen. Der Index einer Äquivalenzrelation gibt an, wie viele verschiedene Äquivalenzklassen es gibt. Betrachte wieder die Äquivalenzrelation der Gleichmächtigkeit für Teilmengen A, B M, also Dann stimmt der Index überein mit M A = B A = B. Minimierung Äquivalenzrelationen 31 / 102
69 Der Index Sei E eine Äquivalenzrelation. Dann ist der Index von E die Anzahl der verschiedenen Äquivalenzklassen. Der Index einer Äquivalenzrelation gibt an, wie viele verschiedene Äquivalenzklassen es gibt. Betrachte wieder die Äquivalenzrelation der Gleichmächtigkeit für Teilmengen A, B M, also A = B A = B. Dann stimmt der Index überein mit M + 1. Minimierung Äquivalenzrelationen 31 / 102
70 Zurück zur Verschmelzungsrelation A Minimierung Die Verschmelzungsrelation 32 / 102
71 Die wichtigen Fragen 1 Ist die Verschmelzungsrelation A eine Äquivalenzrelation? 2 Wir möchten alle äquivalenten Zustände zu einem einzigen Zustand verschmelzen. Dürfen wir das? Gilt: Index der Verschmelzungsrelation A = Zustandszahl eines minimalen Automaten? (Wenn ja, haben wir einen minimalen Automaten gefunden!) Minimierung Die Verschmelzungsrelation 33 / 102
72 Die Verschmelzungsrelation ist eine Äquivalenzrelation Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Zur Erinnerung: p A q : f.a. Worte w Σ gilt: ( δ(p, w) F Minimierung Die Verschmelzungsrelation 34 / 102
73 Die Verschmelzungsrelation ist eine Äquivalenzrelation Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Zur Erinnerung: p A q : f.a. Worte w Σ gilt: ( δ(p, w) F δ(q, w) F ). Minimierung Die Verschmelzungsrelation 34 / 102
74 Die Verschmelzungsrelation ist eine Äquivalenzrelation Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Zur Erinnerung: p A q : f.a. Worte w Σ gilt: ( δ(p, w) F δ(q, w) F ). (a) Die Verschmelzungsrelation ist reflexiv, f.a. p Q: p A p, Minimierung Die Verschmelzungsrelation 34 / 102
75 Die Verschmelzungsrelation ist eine Äquivalenzrelation Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Zur Erinnerung: p A q : f.a. Worte w Σ gilt: ( δ(p, w) F δ(q, w) F ). (a) Die Verschmelzungsrelation ist reflexiv, f.a. p Q: p A p, symmetrisch, f.a. p, q Q: wenn p A q, dann q A p Minimierung Die Verschmelzungsrelation 34 / 102
76 Die Verschmelzungsrelation ist eine Äquivalenzrelation Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Zur Erinnerung: p A q : f.a. Worte w Σ gilt: ( δ(p, w) F δ(q, w) F ). (a) Die Verschmelzungsrelation ist reflexiv, f.a. p Q: p A p, symmetrisch, f.a. p, q Q: wenn p A q, dann q A p und transitiv, f.a. p, q, r Q: wenn p A q und q A r, dann p A r. Warum? Siehe Tafel. Minimierung Die Verschmelzungsrelation 34 / 102
77 Die Verschmelzungsrelation ist eine Äquivalenzrelation Der DFA A = (Σ, Q, δ, q 0, F ) sei gegeben. Zur Erinnerung: p A q : f.a. Worte w Σ gilt: ( δ(p, w) F δ(q, w) F ). (a) Die Verschmelzungsrelation ist reflexiv, f.a. p Q: p A p, symmetrisch, f.a. p, q Q: wenn p A q, dann q A p und transitiv, f.a. p, q, r Q: wenn p A q und q A r, dann p A r. Warum? Siehe Tafel. (b) Die Verschmelzungsrelation ist eine Äquivalenzrelation! Die Zustandsmenge Q die disjunkte Vereinigung der Äquivalenzklassen von A. Minimierung Die Verschmelzungsrelation 34 / 102
78 Die nächsten Schritte Sei der DFA A = (Σ, Q, δ, q 0, F ) gegeben. Wir führen die folgenden Schritte durch: 1. Wir bestimmen die Äquivalenzklassen der Verschmelzungsrelation A. 2. Für jede Äquivalenzklasse von A verschmelzen wir alle Zustände der Klasse zu einem einzigen Zustand und fügen entsprechende Übergänge ein. Und wie genau soll das aussehen? 3. Den neuen Automaten nennen wir A und bezeichnen ihn als den Äquivalenzklassenautomaten von A. Die Anzahl der Zustände von A stimmt mit dem Index von A überein. Wenn der Index mit der minimalen Zustandszahl übereinstimmt, dann ist A minimal! Minimierung Die Verschmelzungsrelation 35 / 102
79 Schritt 1: Wir bestimmen die Verschmelzungsrelation A Minimierung Die Verschmelzungsrelation 36 / 102
80 Zeugen (1/2) Sei (Σ, Q, δ, q 0, F ) ein DFA. (a) Das Wort w Σ ist Zeuge für die Inäquivalenz von p und q, wenn ) ) ( δ(p, w) F δ(q, w) F ( δ(p, w) F δ(q, w) F. Wir sagen auch, dass w die Zustände p und q trennt. Minimierung Die Verschmelzungsrelation 37 / 102
81 Zeugen (1/2) Sei (Σ, Q, δ, q 0, F ) ein DFA. (a) Das Wort w Σ ist Zeuge für die Inäquivalenz von p und q, wenn ) ) ( δ(p, w) F δ(q, w) F ( δ(p, w) F δ(q, w) F. Wir sagen auch, dass w die Zustände p und q trennt. (b) Es ist p A q genau dann, wenn es einen Zeugen für die Inäquivalenz von p und q gibt, bzw wenn es ein Wort gibt, das p und q trennt. Minimierung Die Verschmelzungsrelation 37 / 102
82 Zeugen (2/2) a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a Finde einen Zeugen für die Inäquivalenz von b 1 und bb. Minimierung Die Verschmelzungsrelation 38 / 102
83 Zeugen (2/2) a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a Finde einen Zeugen für die Inäquivalenz von b 1 und bb. Welcher Zeuge trennt ε und a 1? Minimierung Die Verschmelzungsrelation 38 / 102
84 Zeugen (2/2) a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a Finde einen Zeugen für die Inäquivalenz von b 1 und bb. Welcher Zeuge trennt ε und a 1? Gibt es Zeugen, die die Zustände a 1 und a 2 trennen? Minimierung Die Verschmelzungsrelation 38 / 102
85 Wir bestimmen alle Paare nicht-äquivalenter Zustände 1. Füge alle Paarmengen {p, q} mit p F und q F in die Menge M 0 ein. Es ist δ(p, ε) F und δ(q, ε) F. w = ε ist Zeuge für die Nicht-Äquivalenz von p und q. Minimierung Die Verschmelzungsrelation 39 / 102
86 Wir bestimmen alle Paare nicht-äquivalenter Zustände 1. Füge alle Paarmengen {p, q} mit p F und q F in die Menge M 0 ein. Es ist δ(p, ε) F und δ(q, ε) F. w = ε ist Zeuge für die Nicht-Äquivalenz von p und q. 2. Wenn die Paarmenge {p, q} Element der Menge M i ist und für ein a Σ, dann wenn δ(r, a) = p sowie δ(s, a) = q Minimierung Die Verschmelzungsrelation 39 / 102
87 Wir bestimmen alle Paare nicht-äquivalenter Zustände 1. Füge alle Paarmengen {p, q} mit p F und q F in die Menge M 0 ein. Es ist δ(p, ε) F und δ(q, ε) F. w = ε ist Zeuge für die Nicht-Äquivalenz von p und q. 2. Wenn die Paarmenge {p, q} Element der Menge M i ist und wenn δ(r, a) = p sowie δ(s, a) = q für ein a Σ, dann füge {r, s} in die Menge M i+1 ein. Da p A q, gibt es einen Zeugen w mit ) ) ( δ(p, w) F und δ(q, w) F oder ( δ(p, w) F und δ(q, w) F. Das Wort aw trennt r und s = aw ist Zeuge für die Nicht-Äquivalenz von r und s. Minimierung Die Verschmelzungsrelation 39 / 102
88 Wir bestimmen alle Paare nicht-äquivalenter Zustände 1. Füge alle Paarmengen {p, q} mit p F und q F in die Menge M 0 ein. Es ist δ(p, ε) F und δ(q, ε) F. w = ε ist Zeuge für die Nicht-Äquivalenz von p und q. 2. Wenn die Paarmenge {p, q} Element der Menge M i ist und wenn δ(r, a) = p sowie δ(s, a) = q für ein a Σ, dann füge {r, s} in die Menge M i+1 ein. Da p A q, gibt es einen Zeugen w mit ) ) ( δ(p, w) F und δ(q, w) F oder ( δ(p, w) F und δ(q, w) F. Das Wort aw trennt r und s = aw ist Zeuge für die Nicht-Äquivalenz von r und s. 3. Halte, wenn Minimierung Die Verschmelzungsrelation 39 / 102
89 Wir bestimmen alle Paare nicht-äquivalenter Zustände 1. Füge alle Paarmengen {p, q} mit p F und q F in die Menge M 0 ein. Es ist δ(p, ε) F und δ(q, ε) F. w = ε ist Zeuge für die Nicht-Äquivalenz von p und q. 2. Wenn die Paarmenge {p, q} Element der Menge M i ist und wenn δ(r, a) = p sowie δ(s, a) = q für ein a Σ, dann füge {r, s} in die Menge M i+1 ein. Da p A q, gibt es einen Zeugen w mit ) ) ( δ(p, w) F und δ(q, w) F oder ( δ(p, w) F und δ(q, w) F. Das Wort aw trennt r und s = aw ist Zeuge für die Nicht-Äquivalenz von r und s. 3. Halte, wenn keine neuen Paarmengen {r, s} als nicht-äquivalent nachgewiesen werden können. Wir behaupten, dass p A q genau dann gilt, wenn die Paarmenge {p, q} zu einer Menge M i gehört. Stimmt die Behauptung: Finden wir alle Paare nicht-äquivalenter Zustände? Minimierung Die Verschmelzungsrelation 39 / 102
90 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Minimierung Die Verschmelzungsrelation 40 / 102
91 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Angenommen, P ist nicht-leer. Die Paarmenge {p, q} P habe unter allen Paarmengen in P einen kürzesten Zeugen w. 1. Wenn w = ε, dann Minimierung Die Verschmelzungsrelation 40 / 102
92 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Angenommen, P ist nicht-leer. Die Paarmenge {p, q} P habe unter allen Paarmengen in P einen kürzesten Zeugen w. 1. Wenn w = ε, dann ist ( ) ( ) δ(p, ε) F und δ(q, ε) F oder δ(p, ε) F und δ(q, ε) F, bzw. ( p F und q F ) oder ( p F und q F ). Aber dann haben wir {p, q} in die Menge M 0 eingefügt. Minimierung Die Verschmelzungsrelation 40 / 102
93 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Angenommen, P ist nicht-leer. Die Paarmenge {p, q} P habe unter allen Paarmengen in P einen kürzesten Zeugen w. 1. Wenn w = ε, dann ist ( ) ( ) δ(p, ε) F und δ(q, ε) F oder δ(p, ε) F und δ(q, ε) F, bzw. ( p F und q F ) oder ( p F und q F ). Aber dann haben wir {p, q} in die Menge M 0 eingefügt. 2. Wenn w = au für den Buchstaben a Σ, dann ist Minimierung Die Verschmelzungsrelation 40 / 102
94 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Angenommen, P ist nicht-leer. Die Paarmenge {p, q} P habe unter allen Paarmengen in P einen kürzesten Zeugen w. 1. Wenn w = ε, dann ist ( ) ( ) δ(p, ε) F und δ(q, ε) F oder δ(p, ε) F und δ(q, ε) F, ( ) ( ) bzw. p F und q F oder p F und q F. Aber dann haben wir {p, q} in die Menge M 0 eingefügt. 2. Wenn w = au für den Buchstaben a Σ, dann ist ) ) ( δ(p, au) F und δ(q, au) F oder ( δ(p, au) F und δ(q, au) F, Minimierung Die Verschmelzungsrelation 40 / 102
95 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Angenommen, P ist nicht-leer. Die Paarmenge {p, q} P habe unter allen Paarmengen in P einen kürzesten Zeugen w. 1. Wenn w = ε, dann ist ( ) ( ) δ(p, ε) F und δ(q, ε) F oder δ(p, ε) F und δ(q, ε) F, ( ) ( ) bzw. p F und q F oder p F und q F. Aber dann haben wir {p, q} in die Menge M 0 eingefügt. 2. Wenn w = au für den Buchstaben a Σ, dann ist ) ) ( δ(p, au) F und δ(q, au) F oder ( δ(p, au) F und δ(q, au) F, bzw. ( δ(δ(p, a), u) F und δ(δ(q, a), u) F ) oder ( δ(δ(p, a), u) F und δ(δ(q, a), u) F ). Minimierung Die Verschmelzungsrelation 40 / 102
96 Unser Verfahren funktioniert! Sei P die Menge aller Paare {p, q} nicht-äquivalenter Zustände, die aber von unserem Verfahren nicht gefunden werden. Zeige, dass P leer ist! Angenommen, P ist nicht-leer. Die Paarmenge {p, q} P habe unter allen Paarmengen in P einen kürzesten Zeugen w. 1. Wenn w = ε, dann ist ( ) ( ) δ(p, ε) F und δ(q, ε) F oder δ(p, ε) F und δ(q, ε) F, ( ) ( ) bzw. p F und q F oder p F und q F. Aber dann haben wir {p, q} in die Menge M 0 eingefügt. 2. Wenn w = au für den Buchstaben a Σ, dann ist ) ) ( δ(p, au) F und δ(q, au) F oder ( δ(p, au) F und δ(q, au) F, ) bzw. ( δ(δ(p, a), u) F und δ(δ(q, a), u) F oder ) ( δ(δ(p, a), u) F und δ(δ(q, a), u) F. Aber dann ist δ(p, a) A δ(q, a) mit dem kürzeren Zeugen u: Nach Annahme haben wir {δ(p, a), δ(q, a)} in eine Menge Mi eingefügt und werden darauffolgend {p, q} in die Menge Mi+1 einfügen. Minimierung Die Verschmelzungsrelation 40 / 102
97 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := Minimierung Die Verschmelzungsrelation 41 / 102
98 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := { [p] A : p Q }, Minimierung Die Verschmelzungsrelation 41 / 102
99 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := { [p] A : p Q }, den Anfangszustand q 0 := Minimierung Die Verschmelzungsrelation 41 / 102
100 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := { [p] A : p Q }, den Anfangszustand q 0 :=[q 0] A, die Menge F := Minimierung Die Verschmelzungsrelation 41 / 102
101 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := { [p] A : p Q }, den Anfangszustand q 0 :=[q 0] A, die Menge F := { [p] A : p F } der akzeptierenden Zustände Minimierung Die Verschmelzungsrelation 41 / 102
102 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := { [p] A : p Q }, den Anfangszustand q 0 :=[q 0] A, die Menge F := { [p] A : p F } der akzeptierenden Zustände und das Programm δ mit δ ([p] A, a) := Minimierung Die Verschmelzungsrelation 41 / 102
103 Der Automat nach allen Verschmelzungen Wie sieht der Automat nach dem Verschmelzen aller äquivalenten Zustände aus? - Für Zustand p Q bezeichnet [p] A := { q Q : p A q } die Äquivalenzklasse von p. - Der Äquivalenzklassenautomat A für A besitzt die Zustandsmenge Q := { [p] A : p Q }, den Anfangszustand q 0 :=[q 0] A, die Menge F := { [p] A : p F } der akzeptierenden Zustände und das Programm δ mit δ ([p] A, a) := [ δ(p, a) ] A für alle Zustände q Q und Buchstaben a Σ. Minimierung Die Verschmelzungsrelation 41 / 102
104 Der Minimierungsalgorithmus Minimierung Die Verschmelzungsrelation 42 / 102
105 Berechnung von A und A Eingabe: Ein DFA A = (Q, Σ, δ, q 0, F ). Schritt 1: Entferne aus A alle überflüssigen Zustände, d.h. alle Zustände, die nicht von q 0 aus erreichbar sind. Minimierung Die Verschmelzungsrelation 43 / 102
106 Berechnung von A und A Eingabe: Ein DFA A = (Q, Σ, δ, q 0, F ). Schritt 1: Entferne aus A alle überflüssigen Zustände, d.h. alle Zustände, die nicht von q 0 aus erreichbar sind. Schritt 2: Bestimme alle Paarmengen {p, q} mit p, q Q und p A q: 1. Zuerst bestimme M 0 := { {p, q} : p F, q Q \ F } ; Setze i := 0 2. Wiederhole 3. Für alle Paarmengen {p, q} mit p q, {p, q} (M 0 M i) und für alle a Σ tue folgendes: 4. Falls {δ(p, a), δ(q, a)} M i, Minimierung Die Verschmelzungsrelation 43 / 102
107 Berechnung von A und A Eingabe: Ein DFA A = (Q, Σ, δ, q 0, F ). Schritt 1: Entferne aus A alle überflüssigen Zustände, d.h. alle Zustände, die nicht von q 0 aus erreichbar sind. Schritt 2: Bestimme alle Paarmengen {p, q} mit p, q Q und p A q: 1. Zuerst bestimme M 0 := { {p, q} : p F, q Q \ F } ; Setze i := 0 2. Wiederhole 3. Für alle Paarmengen {p, q} mit p q, {p, q} (M 0 M i) und für alle a Σ tue folgendes: 4. Falls {δ(p, a), δ(q, a)} M i, füge {p, q} zur Menge M i+1 hinzu. 5. i := i bis M i = 7. Ausgabe: M := M 0 M i 1. Minimierung Die Verschmelzungsrelation 43 / 102
108 Berechnung von A und A Eingabe: Ein DFA A = (Q, Σ, δ, q 0, F ). Schritt 1: Entferne aus A alle überflüssigen Zustände, d.h. alle Zustände, die nicht von q 0 aus erreichbar sind. Schritt 2: Bestimme alle Paarmengen {p, q} mit p, q Q und p A q: 1. Zuerst bestimme M 0 := { {p, q} : p F, q Q \ F } ; Setze i := 0 2. Wiederhole 3. Für alle Paarmengen {p, q} mit p q, {p, q} (M 0 M i) und für alle a Σ tue folgendes: 4. Falls {δ(p, a), δ(q, a)} M i, füge {p, q} zur Menge M i+1 hinzu. 5. i := i bis M i = 7. Ausgabe: M := M 0 M i 1. Schritt 3: Konstruiere A := (Q, Σ, δ, q 0, F ): Q := { [q] A : q Q }, wobei [q] A = { p Q : Minimierung Die Verschmelzungsrelation 43 / 102
109 Berechnung von A und A Eingabe: Ein DFA A = (Q, Σ, δ, q 0, F ). Schritt 1: Entferne aus A alle überflüssigen Zustände, d.h. alle Zustände, die nicht von q 0 aus erreichbar sind. Schritt 2: Bestimme alle Paarmengen {p, q} mit p, q Q und p A q: 1. Zuerst bestimme M 0 := { {p, q} : p F, q Q \ F } ; Setze i := 0 2. Wiederhole 3. Für alle Paarmengen {p, q} mit p q, {p, q} (M 0 M i) und für alle a Σ tue folgendes: 4. Falls {δ(p, a), δ(q, a)} M i, füge {p, q} zur Menge M i+1 hinzu. 5. i := i bis M i = 7. Ausgabe: M := M 0 M i 1. Schritt 3: Konstruiere A := (Q, Σ, δ, q 0, F ): Q := { [q] A : q Q }, wobei [q] A = { p Q : {p, q} M } Minimierung Die Verschmelzungsrelation 43 / 102
110 Berechnung von A und A Eingabe: Ein DFA A = (Q, Σ, δ, q 0, F ). Schritt 1: Entferne aus A alle überflüssigen Zustände, d.h. alle Zustände, die nicht von q 0 aus erreichbar sind. Schritt 2: Bestimme alle Paarmengen {p, q} mit p, q Q und p A q: 1. Zuerst bestimme M 0 := { {p, q} : p F, q Q \ F } ; Setze i := 0 2. Wiederhole 3. Für alle Paarmengen {p, q} mit p q, {p, q} (M 0 M i) und für alle a Σ tue folgendes: 4. Falls {δ(p, a), δ(q, a)} M i, füge {p, q} zur Menge M i+1 hinzu. 5. i := i bis M i = 7. Ausgabe: M := M 0 M i 1. Schritt 3: Konstruiere A := (Q, Σ, δ, q 0, F ): Q := { [q] A : q Q }, wobei [q] A = { p Q : {p, q} M } q 0 := [q 0] A, F := { [q] A : q F } δ : Q Σ Q mit δ ( [q] A, a ) := [δ(q, a)] A für alle q Q und a Σ. Minimierung Die Verschmelzungsrelation 43 / 102
111 Ist der Algorithmus korrekt und effizient? In jeder Iteration in Schritt 2 wird mindestens eine neue Paarmenge markiert: Es gibt also höchstens Q 2 Iterationen und der Algorithmus ist effizient. Minimierung Die Verschmelzungsrelation 44 / 102
112 Ist der Algorithmus korrekt und effizient? In jeder Iteration in Schritt 2 wird mindestens eine neue Paarmenge markiert: Es gibt also höchstens Q 2 Iterationen und der Algorithmus ist effizient. Die wichtigen Fragen: 1. Sind A und der Äquivalenzklassenautomat A äquivalent, d.h. berechnet A dieselbe Sprache wie A? 2. Ist A minimal? Aber zuerst rechnen wir ein zweites Beispiel durch. Minimierung Die Verschmelzungsrelation 44 / 102
113 Zustandsminimierung: Die Mengen M 0, M 1, M 2 a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a a 1 a 2 b 1 b 2 bb ε a 1 a 2 b 1 b 2 Minimierung Beispiele 45 / 102
114 Zustandsminimierung: Die Mengen M 0, M 1, M 2 a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a a 1 a 2 b 1 b 2 bb M 0 M 0 M 0 M 0 M 0 ε a 1 a 2 b 1 b 2 Minimierung Beispiele 45 / 102
115 Zustandsminimierung: Die Mengen M 0, M 1, M 2 a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a a 1 a 2 b 1 M 1 M 1 M 1 b 2 M 1 M 1 M 1 bb M 0 M 0 M 0 M 0 M 0 ε a 1 a 2 b 1 b 2 Minimierung Beispiele 45 / 102
116 Zustandsminimierung: Die Mengen M 0, M 1, M 2 a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a a 1 M 2 a 2 M 2 b 1 M 1 M 1 M 1 b 2 M 1 M 1 M 1 bb M 0 M 0 M 0 M 0 M 0 ε a 1 a 2 b 1 b 2 ε und bb sind jeweils nur mit sich selbst äquivalent, die restlichen Äquivalenzklassen von A sind Teilmengen von {b 1, b 2 } oder Teilmengen von {a 1, a 2 }. Minimierung Beispiele 45 / 102
117 Zustandsminimierung: Die Mengen M 0, M 1, M 2 a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a a 1 M 2 a 2 M 2 b 1 M 1 M 1 M 1 b 2 M 1 M 1 M 1 bb M 0 M 0 M 0 M 0 M 0 ε a 1 a 2 b 1 b 2 M 3 =. Minimierung Beispiele 45 / 102
118 Zustandsminimierung: Der Äquivalenzklassenautomat A a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a M 3 = {bb} ist die Klasse des einzigen akzeptierenden Zustands, {ε} ist die Klasse des Startzustands, {a 1, a 2 } und {b 1, b 2, } sind die restlichen Klassen. Der Äquivalenzklassenautomat: Minimierung Beispiele 46 / 102
119 Zustandsminimierung: Der Äquivalenzklassenautomat A a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a M 3 = {bb} ist die Klasse des einzigen akzeptierenden Zustands, {ε} ist die Klasse des Startzustands, {a 1, a 2 } und {b 1, b 2, } sind die restlichen Klassen. Der Äquivalenzklassenautomat: a b a, b b ε a b bb Genügt es,nur Zustände mit identischen Nachfolgezuständen zu verschmelzen? a a, b Minimierung Beispiele 46 / 102
120 Zustandsminimierung: Der Äquivalenzklassenautomat A a b ε a b a 1 b 1 a b a 2 b 2 b b bb a, b a a M 3 = {bb} ist die Klasse des einzigen akzeptierenden Zustands, {ε} ist die Klasse des Startzustands, {a 1, a 2 } und {b 1, b 2, } sind die restlichen Klassen. Der Äquivalenzklassenautomat: a b a, b b ε a b bb Genügt es,nur Zustände mit identischen Nachfolgezuständen zu verschmelzen? NEIN! a Minimierung Beispiele 46 / 102 a, b
121 Zustandsminimierung: Die Tabelle Wie haben wir die Tabelle gefüllt? Angenommen, wir haben die Mengen M 0,..., M i bestimmt und die entsprechenden Positionen in der Tabelle markiert. 1. Dann haben wir nacheinander alle frisch markierten Einträge {r, s} M i inspiziert. 2. Wir haben die Position in Zeile p und Spalte q mit M i+1 markiert, wenn es einen Buchstaben a Σ gibt, so dass (δ(p, a) = r und δ(q, a) = s) oder (δ(p, a) = s und δ(q, a) = r). Minimierung Beispiele 47 / 102
122 Wie stellt man fest, ob ein Wort das Suffix ab besitzt? Wir arbeiten mit dem Alphabet Σ = {a, b}. Speichere die beiden zuletzt gelesenen Buchstaben im aktuellen Zustand. Minimierung Beispiele 48 / 102
123 Wie stellt man fest, ob ein Wort das Suffix ab besitzt? Wir arbeiten mit dem Alphabet Σ = {a, b}. Speichere die beiden zuletzt gelesenen Buchstaben im aktuellen Zustand. Wir benutzen deshalb die Zustände Q = {ε, a, b, aa, ab, ba, bb} mit Startzustand q0 = ε ( wir haben noch nichts gelesen ) und dem akzeptierenden Zustand ab: Die beiden letzten Buchstaben sind ab. Welche Zustandsübergänge? Minimierung Beispiele 48 / 102
124 Zustandsminimierung: Die Menge M 0 a ε b a aa a b a b a a b b ab ba b a bb b a b (a) Der Automat A merkt sich tatsächlich die beiden letzten Buchstaben. (b) ab ist der einzige akzeptierende Zustand. Minimierung Beispiele 49 / 102
125 Zustandsminimierung: Die Menge M 0 ab ist der einzige akzeptierende Zustand = Die Menge M 0 hat die Form M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}} Minimierung Beispiele 50 / 102
126 Zustandsminimierung: Die Menge M 0 ab ist der einzige akzeptierende Zustand = Die Menge M 0 hat die Form M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}} a b aa ab M 0 M 0 M 0 M 0 ba M 0 bb M 0 ε a b aa ab ba Was haben wir gelernt? Minimierung Beispiele 50 / 102
127 Zustandsminimierung: Die Menge M 0 ab ist der einzige akzeptierende Zustand = Die Menge M 0 hat die Form M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}} a b aa ab M 0 M 0 M 0 M 0 ba M 0 bb M 0 ε a b aa ab ba Was haben wir gelernt? (a) {ab} ist eine Klasse der Verschmelzungsrelation, (b) die restlichen Klassen sind disjunkte Teilmengen von {ε, a, b, aa, ba, bb}. Wie sieht M 1 aus? Minimierung Beispiele 50 / 102
128 Zustandsminimierung: Die Menge M 1 Es ist M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}}. a b aa ab M 0 M 0 M 0 M 0 ba M 0 bb M 0 ε a b aa ab ba Es sei {p, q } M 0 und es gelte x = a oder x = b. Wenn δ(p, x) = p, δ(q, x) = q, dann ist {p, q} M 1. Der Zustand ab wird erreicht Minimierung Beispiele 51 / 102
129 Zustandsminimierung: Die Menge M 1 Es ist M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}}. a b aa ab M 0 M 0 M 0 M 0 ba M 0 bb M 0 ε a b aa ab ba Es sei {p, q } M 0 und es gelte x = a oder x = b. Wenn δ(p, x) = p, δ(q, x) = q, dann ist {p, q} M 1. Der Zustand ab wird erreicht b wird in den Zuständen a, aa, ba gelesen. Minimierung Beispiele 51 / 102
130 Zustandsminimierung: Die Menge M 1 Es ist M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}}. a M 1 b M 1 aa ab M 0 M 0 M 0 M 0 ba M 0 bb M 1 M 0 ε a b aa ab ba Es sei {p, q } M 0 und es gelte x = a oder x = b. Wenn δ(p, x) = p, δ(q, x) = q, dann ist {p, q} M 1. Der Zustand ab wird erreicht b wird in den Zuständen a, aa, ba gelesen. Minimierung Beispiele 51 / 102
131 Zustandsminimierung: Die Menge M 1 Es ist M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}}. a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 0 bb M 1 M 1 M 0 ε a b aa ab ba Es sei {p, q } M 0 und es gelte x = a oder x = b. Wenn δ(p, x) = p, δ(q, x) = q, dann ist {p, q} M 1. Der Zustand ab wird erreicht b wird in den Zuständen a, aa, ba gelesen. Minimierung Beispiele 51 / 102
132 Zustandsminimierung: Die Menge M 1 Es ist M 0 = {{ε, ab}, {a, ab}, {b, ab}, {aa, ab}, {ba, ab}, {bb, ab}}. a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba Es sei {p, q } M 0 und es gelte x = a oder x = b. Wenn δ(p, x) = p, δ(q, x) = q, dann ist {p, q} M 1. Der Zustand ab wird erreicht b wird in den Zuständen a, aa, ba gelesen. Minimierung Beispiele 51 / 102
133 Was haben wir gelernt? a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba Minimierung Beispiele 52 / 102
134 Was haben wir gelernt? a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Wir haben jeden der Zustände a, aa, ba von jedem der Zustände ε, b, bb getrennt. Minimierung Beispiele 52 / 102
135 Was haben wir gelernt? a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Wir haben jeden der Zustände a, aa, ba von jedem der Zustände ε, b, bb getrennt. 2. Die weiteren Äquivalenzklassen der Verschmelungsrelation sind disjunkte Teilmengen entweder von {a, aa, ba} oder von {ε, b, bb}. Minimierung Beispiele 52 / 102
136 Was haben wir gelernt? a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Wir haben jeden der Zustände a, aa, ba von jedem der Zustände ε, b, bb getrennt. 2. Die weiteren Äquivalenzklassen der Verschmelungsrelation sind disjunkte Teilmengen entweder von {a, aa, ba} oder von {ε, b, bb}. Lassen sich die Zustände in {a, aa, ba} (bzw. in {ε, b, bb}) voneinander trennen? Minimierung Beispiele 52 / 102
137 Zustandsminimierung: Die Menge M 2 a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba Minimierung Beispiele 53 / 102
138 Zustandsminimierung: Die Menge M 2 a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Die Zustände a, aa, ba können nicht voneinander getrennt werden, da sie alle unter a auf den Zustand aa und unter b auf den Zustand ab führen. Minimierung Beispiele 53 / 102
139 Zustandsminimierung: Die Menge M 2 a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Die Zustände a, aa, ba können nicht voneinander getrennt werden, da sie alle unter a auf den Zustand aa und unter b auf den Zustand ab führen. 2. b und bb lassen sich ebenfalls nicht mehr trennen. Beide führen unter a auf ba und unter b auf bb. Minimierung Beispiele 53 / 102
140 Zustandsminimierung: Die Menge M 2 a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Die Zustände a, aa, ba können nicht voneinander getrennt werden, da sie alle unter a auf den Zustand aa und unter b auf den Zustand ab führen. 2. b und bb lassen sich ebenfalls nicht mehr trennen. Beide führen unter a auf ba und unter b auf bb. 3. Aber auch ε führt unter a auf die Klasse {a, aa, ba} und unter b auf b. Minimierung Beispiele 53 / 102
141 Zustandsminimierung: Die Menge M 2 a M 1 b M 1 aa M 1 M 1 ab M 0 M 0 M 0 M 0 ba M 1 M 1 M 0 bb M 1 M 1 M 0 M 1 ε a b aa ab ba 1. Die Zustände a, aa, ba können nicht voneinander getrennt werden, da sie alle unter a auf den Zustand aa und unter b auf den Zustand ab führen. 2. b und bb lassen sich ebenfalls nicht mehr trennen. Beide führen unter a auf ba und unter b auf bb. 3. Aber auch ε führt unter a auf die Klasse {a, aa, ba} und unter b auf b. Es ist M 2 =, denn ε lässt sich nicht von b, bb trennen. Minimierung Beispiele 53 / 102
Die Nerode-Relation und der Index einer Sprache L
Die Nerode-Relation und der Index einer Sprache L Eine zweite zentrale Idee: Sei A ein vollständiger DFA für die Sprache L. Repäsentiere einen beliebigen Zustand p von A durch die Worte in Σ, die zu p
MehrEndliche Automaten. Endliche Automaten 1 / 108
Endliche Automaten Endliche Automaten 1 / 108 Endliche Automaten Endliche Automaten erlauben eine Beschreibung von Handlungsabläufen: Wie ändert sich ein Systemzustand in Abhängigkeit von veränderten Umgebungsbedingungen?
MehrFORMALE SYSTEME. 8. Vorlesung: Minimale Automaten. TU Dresden, 6. November Markus Krötzsch Lehrstuhl Wissensbasierte Systeme
FORMALE SYSTEME 8. Vorlesung: Minimale Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme TU Dresden, 6. November 2017 Rückblick Markus Krötzsch, 6. November 2017 Formale Systeme Folie 2 von 26
Mehr5.2 Endliche Automaten
114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch
MehrEndliche Automaten. Endliche Automaten J. Blömer 1/23
Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben) ändern ihren inneren Zustand produzieren gegebenenfalls
MehrTheoretische Grundlagen der Informatik. Vorlesung am 02. November INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik Vorlesung am 2. November 27 2..27 Dorothea Wagner - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Vorlesung am 2. November 27 Helmholtz-Gemeinschaft
MehrAutomaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier
Automaten und Formale Sprachen SoSe 2007 in Trier Henning Fernau Universität Trier fernau@informatik.uni-trier.de 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche
MehrAutomaten und Formale Sprachen ε-automaten und Minimierung
Automaten und Formale Sprachen ε-automaten und Minimierung Ralf Möller Hamburg Univ. of Technology Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik, Vieweg Verlag 2 Danksagung
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Rolf Socher ISBN 3-446-22987-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22987-6 sowie im Buchhandel Einführung.. 13 2 Endliche
Mehrc) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}
2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?
Mehr2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht
Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Übung am 3..2 INSTITUT FÜR THEORETISCHE KIT 7..2 Universität des Andrea Landes Schumm Baden-Württemberg - Theoretische und Grundlagen der Informatik INSTITUT FÜR
Mehr7 Endliche Automaten. 7.1 Deterministische endliche Automaten
7 Endliche Automaten 7.1 Deterministische endliche Automaten 7.2 Nichtdeterministische endliche Automaten 7.3 Endliche Automaten mit g-übergängen Endliche Automaten 1 7.1 Deterministische endliche Automaten
MehrAlgorithmen mit konstantem Platzbedarf: Die Klasse REG
Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August
MehrTheoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrTheoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit. Sommersemester Herzlich willkommen!
Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit Sommersemester 2012 Prof. Dr. Nicole Schweikardt AG Theorie komplexer Systeme Goethe-Universität Frankfurt am Main Herzlich willkommen!
MehrÜbung zur Vorlesung Theoretische Information. Minimierungsalgorithmus
Übung zur Vorlesung Theoretische Information Minimierungsalgorithmus Folie Warum Automaten minimieren? Zwei endliche Automaten Automat q q Automat 2 q q Beide akzeptieren die selbe Sprache Welche? q 2
MehrFrank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat
Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat
MehrFormale Sprachen und endliche Automaten
Formale Sprachen und endliche Automaten Formale Sprachen Definition: 1 (Alphabet) Ein Alphabet Σ ist eine endliche, nichtleere Menge von Zeichen oder Symbolen. Ein Wort über dem Alphabet Σ ist eine endliche
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs
MehrTheoretische Informatik für Wirtschaftsinformatik und Lehramt
Theoretische Informatik für Wirtschaftsinformatik und Lehramt Eigenschaften regulärer Sprachen Priv.-Doz. Dr. Stefan Milius stefan.milius@fau.de Theoretische Informatik Friedrich-Alexander Universität
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 9. März 24 7. Reguläre Sprachen I Theorie der Informatik 7. Reguläre Sprachen I Malte Helmert Gabriele Röger Universität Basel 9. März 24 7. Reguläre Grammatiken 7.2 DFAs 7.3 NFAs
MehrFORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch
FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch TU Dresden, 17. Oktober 2016 Rückblick Markus Krötzsch, 17. Oktober 2016 Formale Systeme Folie 2 von 31 Wiederholung Mit Grammatiken können
Mehr1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!
Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 23/4 ILKD Prof. Dr. D. Wagner 2. Februar 24. Klausur zur Vorlesung Informatik III Wintersemester 23/24 Mit Lösung! Beachten Sie:
MehrReguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,
Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen
MehrReguläre Sprachen und endliche Automaten
Reguläre Sprachen und endliche Automaten 1 Motivation: Syntaxüberprüfung Definition: Fließkommazahlen in Java A floating-point literal has the following parts: a whole-number part, a decimal point (represented
MehrFür jede Sprache L X sind die folgenden Aussagen äquivalent:
Was bisher geschah Für jede Sprache L X sind die folgenden Aussagen äquivalent: Es existiert ein NFA A mit L = L(A) (L REC(NFA)). Es existiert ein vollständiger NFA B mit L = L(B). Es existiert ein ε-nfa
MehrTuring Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.
Thorsten Timmer SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke Turing Maschine SS 2005 p. 1/35 Inhalt Einführung Formale Definition Berechenbare Sprachen und Funktionen Berechnung ganzzahliger
Mehr2.2 Reguläre Sprachen Endliche Automaten
2.2.1 Endliche Automaten E I N G A B E Lesekopf endliche Kontrolle Signal für Endzustand Ein endlicher Automat liest ein Wort zeichenweise und akzeptiert oder verwirft. endlicher Automat Sprache der akzeptierten
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik 0 KIT 10.11.2011 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik nationales Forschungszentrum Vorlesung in am
MehrH MPKP. Beispiel für eine Rechnung. Reduktion H MPKP. Überführungsregeln
H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel für eine Rechnung ##q ab##xq b##xyq 2 ##xyzq 3 ##xyq 4
Mehr2.6 Verdeutlichung verwendeter Begriffe
2.6 Verdeutlichung verwendeter Begriffe endlich/finit: die Mengen der Zustände und der Ein- bzw. Ausgabezeichen sind endlich synchron: die Ausgabezeichen erscheinen synchron mit dem Einlauf der Eingabezeichen
MehrKlausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014
Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014 Klausurnummer Nachname: Vorname: Matr.-Nr.: Aufgabe 1 2 3 4 5 6 7 max. Punkte 6 8 4 7 5 6 8 tats. Punkte Gesamtpunktzahl: Note: Punkte Aufgabe
Mehr2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:
Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 1. Automaten und Sprachen 1.1 Endlicher Automat Einen endlichen Automaten stellen wir uns als Black Box vor, die sich aufgrund einer Folge von
MehrSoftware Engineering Ergänzung zur Vorlesung
Ergänzung zur Vorlesung Prof. Dr. Markus Müller-Olm WS 2008 2009 2.6.1 Endliche und reguläre Sprachen Endliche und reguläre Sprache: fundamental in vielen Bereichen der Informatik: theorie Formale Sprachen
MehrFormale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK
Formale Systeme Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz
MehrFormale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23
1/23 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich
MehrAutomaten und Coinduktion
Philipps-Univestität Marburg Fachbereich Mathematik und Informatik Seminar: Konzepte von Programmiersprachen Abgabedatum 02.12.03 Betreuer: Prof. Dr. H. P. Gumm Referentin: Olga Andriyenko Automaten und
MehrDie mathematische Seite
Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion
MehrKurz-Skript zur Theoretischen Informatik I
Kurz-Skript zur Theoretischen Informatik I Inhaltsverzeichnis 1 Grundlagen 2 2 Reguläre Ausdrücke 4 3 Endliche Automaten 5 3.1 Vollständige endliche Automaten................................... 6 3.2 ε
MehrEs gibt drei unterschiedliche Automaten:
Automatentheorie Es gibt drei unterschiedliche Automaten: 1. Deterministische Endliche Automaten (DEA) 2. Nichtdeterministische Endliche Automaten (NEA) 3. Endliche Automaten mit Epsilon-Übergängen (ε-
MehrVorlesung Theoretische Informatik
Vorlesung Theoretische Informatik Automaten und Formale Sprachen Hochschule Reutlingen Fakultät für Informatik Masterstudiengang Wirtschaftsinformatik überarbeitet von F. Laux (Stand: 09.06.2010) Sommersemester
MehrÜbungsaufgaben zu Formalen Sprachen und Automaten
Universität Freiburg PD Dr. A. Jakoby Sommer 27 Übungen zum Repetitorium Informatik III Übungsaufgaben zu Formalen Sprachen und Automaten. Untersuchen Sie das folgende Spiel: A B x x 2 x 3 C D Eine Murmel
MehrÜbung Theoretische Grundlagen
Übung Theoretische Grundlagen Nico Döttling October 25, 22 Automatenminimierung Konstruktion des Äquivalenzklassenautomaten Aus der Vorlesung bekannt Überflüssige Zustände lassen sich effizient erkennen
Mehr2.3 Abschlusseigenschaften
2.3 Abschlusseigenschaften 2.3 Abschlusseigenschaften In diesem Abschnitt wollen wir uns mit Abschlusseigenschaften der regulären Sprachen, d.h. mit der Frage, ob, gegeben eine Operation und zwei reguläre
MehrEndliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken
1 / 15 Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken Prof. Dr. Hans Kleine Büning FG Wissensbasierte Systeme WS 08/09 2 / 15 Deterministischer endlicher Automat (DEA) Definition 1:
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 3 14. Mai 2010 Einführung in die Theoretische
Mehr2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:
Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter
MehrTheorie der Informatik
Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man
MehrRelationen. Bernhard Ganter. Institut für Algebra TU Dresden D Dresden
Relationen Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de Relationen Es seien A und B Mengen. Eine (binäre) Relation zwischen A und B ist eine Teilmenge von
MehrWorterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64
Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Pumping Lemma Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik von Rolf Socher 3., aktualisierte und erweiterte Auflage Theoretische Grundlagen der Informatik Socher schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2 Lösungsblatt 2. Mai 2 Einführung in die Theoretische Informatik
MehrEndliche Automaten. δ : Z Σ Z die Überführungsfunktion, z 0 Z der Startzustand und F Z die Menge der Endzustände (Finalzustände).
Endliche Automaten Endliche Automaten Definition Ein deterministischer endlicher Automat (kurz DFA für deterministic finite automaton ) ist ein Quintupel M = (Σ, Z, δ, z 0, F), wobei Σ ein Alphabet ist,
MehrTheoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009
Theoretische Informatik Rainer Schrader Institut für Informatik 9. Juli 2009 1 / 41 2 / 41 Gliederung die Chomsky-Hierarchie Typ 0- Typ 3- Typ 1- Die Programmierung eines Rechners in einer höheren Programmiersprache
MehrTheoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
MehrTeil 3: Endliche Automaten. (Kapitel T4 u. T5.3)
Teil 3: Endliche Automaten (Kapitel T4 u. T5.3) Begriffe Rechnerstrukturen Schaltnetz (ohne Rückkopplungen/ Speicher) andere gängige Begriffe Schaltkreis [T] circuit combinational circuit Schaltwerk (mit
MehrGrundbegriffe der Informatik Tutorium 10
Grundbegriffe der Informatik Tutorium 10 Tutorium Nr. 32 Philipp Oppermann 17. Januar 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrI.2. Endliche Automaten (ohne Ausgabe)
I2 Endliche Automaten (ohne Ausgabe) I2 Deterministische endliche Automaten Beispiel: Pascal-Syntax für Zahlen hat folgende Form: ::=
MehrLexikalische Analyse, Tokenizer, Scanner
Lexikalische Analyse, Tokenizer, Scanner Frühe Phase des Übersetzers Aufgabenteilung: Scanner (lokale) Zeichen (Symbol-)Analyse Parser Syntax-Analyse Aufgabe des Scanners: Erkennung von: Zahlen, Bezeichner,
MehrHilfestellungen zu Relationen, Automatenübergänge und Hüllen
Hilfestellungen zu Relationen, Automatenübergänge und Hüllen Erik Fäßler December 18, 2009 1 Relationen Die gültigen Übergänge eines endlichen Automaten - oder Finite State Automaton, FSA - werden formal
MehrRekursiv aufzählbare Sprachen
Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben
MehrFormale Sprachen und Automaten
Avant Propos Formale Sprachen und Automaten Sie [die Theorie der formalen Sprachen] ist ein Musterbeispiel einer informatischen Theorie, weil es ihr gelingt, einen großen Bestand an Einsichten und Zusammenhängen
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Turingmaschinen und rekursiv aufzählbare Sprachen (II) 2.07.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrDeterministische Turing-Maschinen
Deterministische Turing-Maschinen Um 900 präsentierte David Hilbert auf einem internationalen Mathematikerkongress eine Sammlung offener Fragen, deren Beantwortung er von zentraler Bedeutung für die weitere
MehrDie durch einen regulären Ausdruck beschriebene Sprache ist definiert durch:
Kapitel 2 Reguläre Sprachen 2.1 Reguläre Ausdrücke Für die symbolische Verarbeitung von Informationen mit Hilfe von Rechnern ist es zweckmäßig, wenn formale Sprachen selbst durch Zeichenketten repräsentiert
MehrSuche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften
Endlichkeitstest Eingabe: DFA/NFA M. Frage: Ist die von M akzeptierte Sprache endlich? Nahe liegende Beobachtung: In einem DFA/NFA, der eine unendliche Sprache akzeptiert, muss es einen Kreis geben, der
MehrTHIA - Übungsblatt 2.
THIA - Übungsblatt 2. Aufgabe 12 (Eine einfache Sprache). Endliche Ziffernfolgen, die mit einer 0 beginnen, auf die mindestens eine weitere Ziffer folgt, wobei nur die Ziffern 0,..., 7 vorkommen, sollen
Mehr5.4 Endliche Automaten
5.4 Endliche Automaten Ein endlicher Automat ist ein mathematisches Modell eines Systems mit Ein- und Ausgaben. Ein solches System befindet sich immer in einem internen Zustand. Beispiele Ein Register
MehrHauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Hier Aufkleber mit Name und Matrikelnr. anbringen
MehrUniversität des Saarlandes
Universität des Saarlandes FR 6.2 Informatik Prof. Dr. Kurt Mehlhorn, Dr. Konstantinos Panagiotou WiSe 2011/2012 Übungen zu Computational Thinking http://www.mpi-inf.mpg.de/departments/d1/teaching/ws11/ct/
MehrRelationen. Es seien A und B Mengen. Eine (binäre) Relation zwischen A und B ist eine Teilmenge von A B.
Mathematik I für Informatiker Relationen auf einer Menge p. 1 Relationen Es seien A und B Mengen. Eine (binäre) Relation zwischen A und B ist eine Teilmenge von A B. Ein wichtiger Spezialfall ist der,
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Deterministische Kellerautomaten Von besonderem Interesse sind kontextfreie Sprachen,
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 20. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 20.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
MehrTheoretische Informatik für Medieninformatiker
Theoretische Informatik für Medieninformatiker Jan Johannsen Lehrveranstaltung im Sommersemester 27 / 6 Organisatorisches: Jede Lehrveranstaltungsstunde gliedert sich in einen Vorlesungsteil, dessen Länge
MehrEinführung in die Informatik
Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle 24. November 28 Einführung in die Informatik Übung 7 Allgemeines Für die Abgabe der
MehrTuring-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.
Turing-Maschinen Nachdem wir endliche Automaten und (die mächtigeren) Kellerautomaten kennengelernt haben, werden wir nun ein letztes, noch mächtigeres Automatenmodell kennenlernen: Die Turing-Maschine
MehrTHEORETISCHE INFORMATIK
THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek @ Institut für Theoretische Informatik Technische Universität Braunschweig Dezember 28 Inhaltsverzeichnis Endliche Automaten. Mathematische Grundbegriffe......................
MehrALP I Turing-Maschine
ALP I Turing-Maschine Teil I WS 2012/2013 Äquivalenz vieler Berechnungsmodelle Alonzo Church λ-kalkül Kombinatorische Logik Alan Turing Turing-Maschine Mathematische Präzisierung Effektiv Berechenbare
MehrLexikalische Programmanalyse der Scanner
Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung
MehrEin deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:
Sprachen und Automaten 1 Deterministische endliche Automaten (DFA) Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: M = (Z,3,*,qo,E) Z = Die Menge der Zustände 3 = Eingabealphabet
MehrGrundbegriffe der Informatik Tutorium 33
Tutorium 33 02.02.2017 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Gliederung 1 2 3 Ein ist ein Tupel A = (Z, z 0, X, f, Y, h)
Mehr1.5 Turing-Berechenbarkeit
A.M. Turing (1937): Maschinenmodell zur exakten Beschreibung des Begriffs effektiv berechenbar Stift Mensch a c b b Rechenblatt a b b c Lese-/Schreibkopf endliche Kontrolle Turingmaschine Eine Turingmaschine
MehrKapitel 3: Reguläre Grammatiken und Endliche. Automaten
Kapitel 3: Reguläre Grammatiken und Endliche Automaten Prof.-Dr. Peter Brezany Institut für Softwarewissenschaft Universität Wien, Liechtensteinstraße 22 090 Wien Tel. : 0/4277 38825 E-mail : brezany@par.univie.ac.at
MehrFORMALE SYSTEME. 10. Vorlesung: Grenzen regulärer Sprachen / Probleme für Automaten. TU Dresden, 14. November 2016.
FORMALE SYSTEME 10. Vorlesung: Grenzen regulärer Sprachen / Probleme für Automaten Markus Krötzsch TU Dresden, 14. November 2016 Rückblick Markus Krötzsch, 14. November 2016 Formale Systeme Folie 2 von
MehrAutomaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier
Automaten und Formale Sprachen SoSe 2007 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche Automaten und
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Sascha Böhme, Lars Noschinski Sommersemester 2 Lösungsblatt 2 3. Mai 2 Einführung in die Theoretische Informatik Hinweis:
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2 Lösungsblatt 3. April 2 Einführung in die Theoretische Informatik
MehrProseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP
Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07 Vortrag am 17.11.2006 Nichtdeterministische Turingmaschinen und NP Yves Radunz Inhaltsverzeichnis 1 Wiederholung 3 1.1 Allgemeines........................................
Mehrliefern eine nicht maschinenbasierte Charakterisierung der regulären
Reguläre Ausdrücke 1 Ziel: L=L M für NFA M L=L(r) für einen regulären Ausdruck r Reguläre Ausdrücke über einem Alphabet Σ Slide 1 liefern eine nicht maschinenbasierte Charakterisierung der regulären Sprachen
MehrLösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004
Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,
MehrSatz (Abschluß unter der Stern-Operation)
Satz (Abschluß unter der Stern-Operation) Wenn L eine reguläre Sprache ist, dann ist auch L regulär. Beweis: Es gibt einen NFA M = (Z, Σ, S, δ, S, E) mit L(M) = L. Wir bauen aus diesem NFA nun wie folgt
MehrTheoretische Informatik Kap 1: Formale Sprachen/Automatentheorie
Gliederung der Vorlesung. Grundbegriffe. Formale Sprachen/Automatentheorie.. Grammatiken.2..3. Kontext-freie Sprachen 2. Berechnungstheorie 2.. Berechenbarkeitsmodelle 2.2. Die Churchsche These 2.3. Unentscheidbarkeit
MehrTheoretische Informatik 1
heoretische Informatik 1 eil 2 Bernhard Nessler Institut für Grundlagen der Informationsverabeitung U Graz SS 2009 Übersicht 1 uring Maschinen uring-berechenbarkeit 2 Kostenmaße Komplexität 3 Mehrband-M
Mehr4.2.4 Reguläre Grammatiken
4.2.4 Reguläre Grammatiken Eine reguläre Grammatik ist eine kontextfreie Grammatik, deren Produktionsregeln weiter eingeschränkt sind Linksreguläre Grammatik: A w P gilt: w = ε oder w = Ba mit a T und
MehrAufgabe 24 Die Wahrheitswerte von A A B und B sind immer gleich:
Lösungen zu den Aufgaben von Anfang August Aufgabe 24 Die Wahrheitswerte von A A B und B sind immer gleich: Der Wahrheitswert von A A ist immer wahr, da immer entweder A oder A den Wahrheitswert wahr hat.
MehrMathematische Strukturen
Mathematische Strukturen Lineare Algebra I Kapitel 3 16. April 2013 Kartesisches Produkt Das kartesische Produkt (benannt nach René Descartes) von n Mengen M 1,..., M n ist M 1 M n := {(x 1,..., x n )
MehrFormale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5.
Formale Sprachen Spezialgebiet für Komplexe Systeme Yimin Ge 5ahdvn Inhaltsverzeichnis 1 Grundlagen 1 2 Formale Grammatien 4 Endliche Automaten 5 4 Reguläre Sprachen 9 5 Anwendungen bei Abzählproblemen
Mehr