Endliche Automaten. Endliche Automaten J. Blömer 1/24

Größe: px
Ab Seite anzeigen:

Download "Endliche Automaten. Endliche Automaten J. Blömer 1/24"

Transkript

1 Endliche Automaten Endliche Automaten J. Blömer /24

2 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 eine Ausgabe werden in der Regel durch gerichtete, markierte Graphen dargestellt. Endliche Automaten J. Blömer /24

3 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 eine Ausgabe werden in der Regel durch gerichtete, markierte Graphen dargestellt. Endliche Automaten werden eingesetzt, um das Verhalten realer Maschinen (z.b. Ampelanlagen, Getränkeautomaten) zu spezifizieren das Verhalten von Softwarekomponenten (z.b. Benutzeroberflächen) zu spezifizieren einfache Sprachen (z.b. Bezeichner und Zahlen in Programmiersprache) zu spezifizieren. Endliche Automaten J. Blömer /24

4 Einführende Beispiele - Bezeichner in Programmiersprachen Endliche Automaten und Sprachen Endlicher Automat definiert eine Sprache, d.h. Menge von Worten über einem Alphabet. Endliche Automaten J. Blömer 2/24

5 Einführende Beispiele - Bezeichner in Programmiersprachen Endliche Automaten und Sprachen Endlicher Automat definiert eine Sprache, d.h. Menge von Worten über einem Alphabet. Buchstabe Buchstabe start Ziffer Beispiel: Automat akzeptiert jede Folge von Buchstaben und Ziffern, die mit einem Buchstaben beginnt. Endliche Automaten J. Blömer 2/24

6 Einführende Beispiele - Getränkeautomat Endliche Automaten und Maschinen Endlicher Automat spezifiziert das Verhalten einer Maschine. Endliche Automaten J. Blömer 3/24

7 Einführende Beispiele - Getränkeautomat Endliche Automaten und Maschinen Endlicher Automat spezifiziert das Verhalten einer Maschine. GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Beispiel: Automat akzeptiert Folgen von Ereignissen zur Bedienung eines Getränkeautomaten. Endliche Automaten J. Blömer 3/24

8 Deterministische endliche Automaten Definition Ein deterministischer endlicher Automat (DFA) (engl. deterministic finite automaton) A ist ein 5-Tupel (Σ, Q, δ, q, F ), wobei Q eine endliche Menge von Zuständen ist, Σ ein endliches Alphabet ist, δ : Q Σ Q die (partielle) Übergangsfunktion ist, q der Startzustand ist, F Q die Menge von Endzuständen (auch: akzeptierenden Zuständen) ist. Endliche Automaten J. Blömer 4/24

9 Deterministische endliche Automaten Definition Ein deterministischer endlicher Automat (DFA) (engl. deterministic finite automaton) A ist ein 5-Tupel (Σ, Q, δ, q, F ), wobei Q eine endliche Menge von Zuständen ist, Σ ein endliches Alphabet ist, δ : Q Σ Q die (partielle) Übergangsfunktion ist, q der Startzustand ist, F Q die Menge von Endzuständen (auch: akzeptierenden Zuständen) ist. Erinnerung: Eine Funktion mit Definitionsbereich D und Bildbereich ist eine Relation f D B mit ((x, y) f (x, z) f ) y = z. f heißt total, falls zu jedem x D ein y B existiert mit (x, y) f. Andernfalls heißt f partiell. Endliche Automaten J. Blömer 4/24

10 Deterministische endliche Automaten Definition Ein deterministischer endlicher Automat (DFA) (engl. deterministic finite automaton) A ist ein 5-Tupel (Σ, Q, δ, q, F ), wobei Q eine endliche Menge von Zuständen ist, Σ ein endliches Alphabet ist, δ : Q Σ Q die (partielle) Übergangsfunktion ist, q der Startzustand ist, F Q die Menge von Endzuständen (auch: akzeptierenden Zuständen) ist. Ist die Übergangsfunktion δ eines DFA total, so heißt A vollständig. r = δ(q, a) heißt Nachfolgezustand von q unter a. A heißt deterministisch, da es zu jedem Paar (q, a), q Q, a Σ, höchstens einen Nachfolgezustand δ(q, a) gibt. Endliche Automaten J. Blömer 4/24

11 Beispiele Endliche Automaten J. Blömer 5/24

12 Beispiele DFA A definiert durch Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} und Übergangsfunktion δ definiert durch δ Buchstabe Ziffer Endliche Automaten J. Blömer 5/24

13 Beispiele DFA A definiert durch Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} und Übergangsfunktion δ definiert durch δ Buchstabe Ziffer DFA A 2 definiert durch Q = {,, 2}, q = Σ = { Eur, 2 Eur, GeldRück, F = {} GetränkNehmen} und Übergangsfunktion δ definiert durch δ Eur 2 Eur GR GTN Endliche Automaten J. Blömer 5/24

14 Graphische Darstellung von DFAs DFAs und Graphen pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können Endliche Automaten J. Blömer 6/24

15 Graphische Darstellung von DFAs DFAs und Graphen DFA A : pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} δ Buchstabe Ziffer Endliche Automaten J. Blömer 6/24

16 Graphische Darstellung von DFAs DFAs und Graphen DFA A : pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} Buchstabe Buchstabe start δ Buchstabe Ziffer Ziffer Endliche Automaten J. Blömer 6/24

17 Graphische Darstellung von DFAs DFAs und Graphen pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können DFA A 2 : Q = {,, 2}, q = Σ = { Eur, 2 Eur, GeldRück, F = {} GetränkNehmen} δ Eur 2 Eur GR GTN Endliche Automaten J. Blömer 6/24

18 Graphische Darstellung von DFAs DFAs und Graphen pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können DFA A 2 : Q = {,, 2}, q = Σ = { Eur, 2 Eur, GeldRück, F = {} GetränkNehmen} δ Eur 2 Eur GR GTN GeldRück GetränkNehmen start 2 Eur 2 Eur Eur GeldRück Endliche Automaten J. Blömer 6/24

19 Vervollständigung endlicher Automaten Erinnerung: Ein DFA A = (Σ, Q, δ, q, F ) heißt vollständig, wenn die Übergangsfunktion δ total ist. Endliche Automaten J. Blömer 7/24

20 Vervollständigung endlicher Automaten Erinnerung: Ein DFA A = (Σ, Q, δ, q, F ) heißt vollständig, wenn die Übergangsfunktion δ total ist. Zum besseren Verständnis, zur Realisierung und zur formalen Argumentation kann es sinnvoll oder notwendig sein, einen DFA A so zu ergänzen, dass er vollständig ist. Endliche Automaten J. Blömer 7/24

21 Vervollständigung endlicher Automaten Erinnerung: Ein DFA A = (Σ, Q, δ, q, F ) heißt vollständig, wenn die Übergangsfunktion δ total ist. Zum besseren Verständnis, zur Realisierung und zur formalen Argumentation kann es sinnvoll oder notwendig sein, einen DFA A so zu ergänzen, dass er vollständig ist. Ergänzung endlicher Automaten zu vollständigen Automaten Sei A = (Σ, Q, δ, q, F ) ein DFA. Zur Ergänzung wird ein neuer Zustand f mit f F eingeführt, 2 für alle Paare (q, a) Q Σ, für die die Übergangsfunktion δ nicht definiert ist, δ(q, a) = f gesetzt, 3 für alle Paare (f, a), a Σ, δ(f, a) = f gesetzt. Endliche Automaten J. Blömer 7/24

22 Vervollständigung endlicher Automaten DFA A : Buchstabe Buchstabe start Ziffer Endliche Automaten J. Blömer 8/24

23 Vervollständigung endlicher Automaten DFA A : Vervollständigung von A : Buchstabe Buchstabe start Buchstabe Buchstabe start Ziffer f Ziffer Ziffer Ziffer Buchstabe Endliche Automaten J. Blömer 8/24

24 Vervollständigung endlicher Automaten DFA A 3 : start q q q 2 q 3 q 4 Endliche Automaten J. Blömer 9/24

25 Vervollständigung endlicher Automaten DFA A 3 : Vervollständigung von A 3 : start q start q f, q q q 2 q 2 q 3 q 3 q 4 q 4 Endliche Automaten J. Blömer 9/24

26 Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Endliche Automaten J. Blömer /24

27 Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q für alle q Q und das leere Wort ɛ ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. Endliche Automaten J. Blömer /24

28 Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q für alle q Q und das leere Wort ɛ Bemerkungen: ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. ˆδ(q, a) = δ(q, a) für alle q Q und a Σ Endliche Automaten J. Blömer /24

29 Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q für alle q Q und das leere Wort ɛ Bemerkungen: ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. Wir unterscheiden häufig nicht zwischen δ und ˆδ und schreiben auch δ für die erweiterte Übergangsfunktion ˆδ. 2 Ist δ nicht vollständig, so ist auch ˆδ nicht vollständig. 3 Um ˆδ zu vervollständigen, genügt es δ zu vervollständigen. Endliche Automaten J. Blömer /24

30 Erweiterung von Übergangsfunktionen Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q) für alle q Q und das leere Wort ɛ ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. Alternative Formulierungen Für q, q Q und w = a a n, a i Σ, i =,..., n, gilt ˆδ(q, w) = δ(... δ(δ(q, a ), a 2 )..., a n ) 2 ˆδ(q, w) = q genau dann, wenn es r,..., r n Q gibt mit r = q, r n = q und δ(r i, a i+ ) = r i+ für i =,..., n. Endliche Automaten J. Blömer /24

31 Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q q q 2 q 3 q 4 Endliche Automaten J. Blömer 2/24

32 Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(q 2, ), ) q = δ(q 2, ) = q 3 F q 2 Folge von Zuständen: r = q, r = q 2, r 2 = q 2, r 3 = q 3 q 3 q 4 Endliche Automaten J. Blömer 2/24

33 Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(δ(δ(q, ), ), ), ) q = δ(δ(δ(δ(δ(q, ), ), ), ), ) q 2 = δ(δ(δ(δ(q, ), ), ), ) = δ(δ(δ(q 2, ), ), ) = δ(δ(q 2, ), ) = δ(q 3, ) q 3 = q 4 F q 4 Folge von Zuständen: r = q, r = q, r 2 = q 2, r 3 = q 2, r 4 = q 3 r 5 = q 4 Endliche Automaten J. Blömer 2/24

34 Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(q, ), ) q = ; q 2 nicht definiert, da δ(q, ) nicht definiert q 3 Folge von Zuständen: r = q, r = q, r 2 nicht definiert q 4 Endliche Automaten J. Blömer 2/24

35 Erweiterung von Übergangsfunktionen - Beispiele Vervollständigter A 3 : start q q q 2 f, q 3 q 4 Endliche Automaten J. Blömer 2/24

36 Erweiterung von Übergangsfunktionen - Beispiele Vervollständigter A 3 : start q f, δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(q, ), ) q = δ(f, ) = f q 2 Folge von Zuständen: r = q, r = q, r 2 = f, r 3 = f q 3 q 4 Endliche Automaten J. Blömer 2/24

37 Erweiterung von Übergangsfunktionen - Berechnung als Weg DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(δ(δ(q, ), ), ), ) q = δ(δ(δ(δ(δ(q, ), ), ), ), ) q 2 = δ(δ(δ(δ(q, ), ), ), ) = δ(δ(δ(q 2, ), ), ) = δ(δ(q 2, ), ) = δ(q 3, ) q 3 = q 4 F q 4 Folge von Zuständen: r = q, r = q, r 2 = q 2, r 3 = q 2, r 4 = q 3 r 5 = q 4 Endliche Automaten J. Blömer 3/24

38 Erweiterung von Übergangsfunktionen - Beispiele DFA A : Buchstabe B:= Buchstabe, Z:=Ziffer Buchstabe start Ziffer Endliche Automaten J. Blömer 4/24

39 Erweiterung von Übergangsfunktionen - Beispiele DFA A : B:= Buchstabe, Z:=Ziffer Buchstabe Buchstabe start Ziffer δ(, BZB) = δ(δ(, BZ), B) = δ(δ(δ(, B), Z), B) = δ(δ(, Z), B) = δ(, B) = F Folge von Zuständen: r =, r =, r 2 =, r 3 = Endliche Automaten J. Blömer 4/24

40 Erweiterung von Übergangsfunktionen - Beispiele DFA A : B:= Buchstabe, Z:=Ziffer Buchstabe Buchstabe start Ziffer δ(, ZBB) = δ(δ(, ZB), B) = δ(δ(δ(, Z), B), B) = ; nicht definiert, da δ(, Z) nicht definiert Folge von Zuständen: r =, r nicht definiert Endliche Automaten J. Blömer 4/24

41 Erweiterung von Übergangsfunktionen - Beispiele Vervollständigter A : B:= Buchstabe, Z:=Ziffer Buchstabe start Buchstabe Ziffer Ziffer f Ziffer δ(, ZBB) = δ(δ(, ZB), B) = δ(δ(δ(, Z), B), B) = δ(δ(f, B), B) = δ(f, B) = f Folge von Zuständen: r =, r = f, r 2 = f, r 3 = f Buchstabe Endliche Automaten J. Blömer 4/24

42 Automaten und Sprachen Definition 3 Sei A = (Σ, Q, δ, q, F ) ein deterministischer endlicher Automat. Der DFA A akzeptiert das Wort w Σ genau dann, wenn δ(q, w) F. Die Menge L(A) := {w Σ δ(q, w) F } heißt die von A akzeptierte Sprache. Endliche Automaten J. Blömer 5/24

43 Automaten und Sprachen Definition 3 Sei A = (Σ, Q, δ, q, F ) ein deterministischer endlicher Automat. Der DFA A akzeptiert das Wort w Σ genau dann, wenn δ(q, w) F. Die Menge L(A) := {w Σ δ(q, w) F } heißt die von A akzeptierte Sprache. DFA A Buchstabe Buchstabe start Ziffer Endliche Automaten J. Blömer 5/24

44 Automaten und Sprachen Definition 3 Sei A = (Σ, Q, δ, q, F ) ein deterministischer endlicher Automat. Der DFA A akzeptiert das Wort w Σ genau dann, wenn δ(q, w) F. Die Menge L(A) := {w Σ δ(q, w) F } heißt die von A akzeptierte Sprache. DFA A Buchstabe Buchstabe start B:= Buchstabe, Z:=Ziffer L(A ) = {w {B, Z} w beginnt mit B} = L(B(B Z) ) Ziffer Endliche Automaten J. Blömer 5/24

45 Automaten und Sprachen DFA A 3 : start q q q 2 q 3 q 4 Endliche Automaten J. Blömer 6/24

46 Automaten und Sprachen DFA A 3 : start q q q 2 L(A 3 ) ={w {, } w beginnt mit und endet mit } =L( 2 ( ) 2 ) (als regulärer Ausdruck) q 3 q 4 Endliche Automaten J. Blömer 6/24

47 Automaten und Sprachen DFA A 4 : start s a q a b r b b a b a q 2 r 2 b a Endliche Automaten J. Blömer 7/24

48 Automaten und Sprachen DFA A 4 : start s a q a b r b b a b a q 2 r 2 b a L(A 4 ) = {w {a, b} + w beginnt und endet mit demselben Symbol} Endliche Automaten J. Blömer 7/24

49 Automaten und Sprachen DFA A 2 : GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Endliche Automaten J. Blömer 8/24

50 Automaten und Sprachen DFA A 2 : GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur ( Eur GeldRück) ( Eur Eur GeldRück) L(A 2 ) = L ( Eur Eur GetränkNehmen) (2 Eur GeldRück) (2 Eur GetränkNehmen) Endliche Automaten J. Blömer 8/24

51 DFAs, NFAs und reguläre Ausdrücke Satz 4 Sei Σ ein Alphabet und L Σ eine Sprache. Dann sind die folgenden Aussagen äquivalent: Es gibt einen DFA A mit L = L(A). 2 Es gibt einen regulären Ausdruck R mit L = L(R). Endliche Automaten J. Blömer 9/24

52 Endliche Automaten mit Ausgabe Man kann mit endlichen Automaten auch Reaktionen der modellierten Maschine in Form von Ausgaben modellieren. Erweitern dazu Automaten um ein Ausgabealphabet T und eine Ausgabefunktion. Es gibt zwei Varianten: Mealy-Automaten ordnen Zustandsübergängen eine Ausgabe zu. 2 Moore-Automaten ordnen Zuständen eine Ausgabe zu. Endliche Automaten J. Blömer 2/24

53 Mealy-Automaten Definition 5 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und λ : Q Σ T eine Funktion. Dann ist A erweitert um T und λ ein Mealy-Automat. T wird Ausgabealphabet und λ Ausgabefunktion genannt. Wir sagen, dass λ den Zustandsübergängen von A Ausgaben zuordnet. Endliche Automaten J. Blömer 2/24

54 Mealy-Automaten Definition 5 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und λ : Q Σ T eine Funktion. Dann ist A erweitert um T und λ ein Mealy-Automat. T wird Ausgabealphabet und λ Ausgabefunktion genannt. Wir sagen, dass λ den Zustandsübergängen von A Ausgaben zuordnet. Mealy-Automaten: b/y 2 a/x a/x λ(, b) = y, λ(, a) = λ(, a) = x Endliche Automaten J. Blömer 2/24

55 Mealy-Automaten Definition 5 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und λ : Q Σ T eine Funktion. Dann ist A erweitert um T und λ ein Mealy-Automat. T wird Ausgabealphabet und λ Ausgabefunktion genannt. Wir sagen, dass λ den Zustandsübergängen von A Ausgaben zuordnet. Mealy-Automaten: b/y a/x 2 a/x Bildbereich von λ ist T, daher leeres Wort als Ausgabe möglich Automat muss nicht bei jedem Übergang mit einer Ausgabe reagieren λ(, b) = y, λ(, a) = λ(, a) = x Endliche Automaten J. Blömer 2/24

56 Endliche Automaten mit Ausgabe Definition 6 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und µ : Q T eine Funktion. Dann ist A erweitert um T und µ ein Moore-Automat. T wird Ausgabealphabet und µ Ausgabefunktion genannt. Wir sagen, dass µ den Zuständen von A Ausgaben zuordnet. Endliche Automaten J. Blömer 22/24

57 Endliche Automaten mit Ausgabe Definition 6 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und µ : Q T eine Funktion. Dann ist A erweitert um T und µ ein Moore-Automat. T wird Ausgabealphabet und µ Ausgabefunktion genannt. Wir sagen, dass µ den Zuständen von A Ausgaben zuordnet. Moore-Automaten: b 2 x a a y µ() = y, µ(2) = x Endliche Automaten J. Blömer 22/24

58 Endliche Automaten mit Ausgabe Definition 6 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und µ : Q T eine Funktion. Dann ist A erweitert um T und µ ein Moore-Automat. T wird Ausgabealphabet und µ Ausgabefunktion genannt. Wir sagen, dass µ den Zuständen von A Ausgaben zuordnet. Moore-Automaten: b a 2 x y µ() = y, µ(2) = x a Bildbereich von µ ist T, daher leeres Wort als Ausgabe möglich Automat muss nicht in jedem Zustand mit einer Ausgabe reagieren Moore-Automaten können Ausgaben nicht so fein differenzieren wie Mealy-Automaten Endliche Automaten J. Blömer 22/24

59 Getränkeautomat GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Endliche Automaten J. Blömer 23/24

60 Getränkeautomat mit Ausgabe - Mealy-Automat GeldRück / 2 Eur GetränkNehmen/Getränk start 2 Eur 2 Eur Eur GeldRück /Eur Endliche Automaten J. Blömer 23/24

61 Getränkeautomat GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Endliche Automaten J. Blömer 23/24

62 Getränkeautomat mit Ausgabe - Moore-Automat Getränk Nehmen 3 Getränk KlappeÖffnen 2 Eur Eur Eur 2 GeldNehmen GeldNehmen 4 Eur GeldRück 5 2 Eur GeldRück Endliche Automaten J. Blömer 23/24

63 Vergleich Mealy- und Moore-Automaten In Mealy-Automaten können Übergänge, die zum selben Zustand führen, unterschiedliche Ausgaben erzeugen. Endliche Automaten J. Blömer 24/24

64 Vergleich Mealy- und Moore-Automaten In Mealy-Automaten können Übergänge, die zum selben Zustand führen, unterschiedliche Ausgaben erzeugen. Moore-Automaten können Ausgaben nicht so fein differenzieren wie Mealy-Automaten. Endliche Automaten J. Blömer 24/24

65 Vergleich Mealy- und Moore-Automaten In Mealy-Automaten können Übergänge, die zum selben Zustand führen, unterschiedliche Ausgaben erzeugen. Moore-Automaten können Ausgaben nicht so fein differenzieren wie Mealy-Automaten. Aber jeder Mealy-Automat kann durch Einführung zusätzlicher Zustände in einen Moore-Automaten transformiert werden, der das gleiche Verhalten hat (siehe Beispiel Getränkeautomat) Endliche Automaten J. Blömer 24/24

Endliche Automaten. Endliche Automaten J. Blömer 1/23

Endliche 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

Mehr

5.2 Endliche Automaten

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

Mehr

2.6 Verdeutlichung verwendeter Begriffe

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

Mehr

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

2 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

Mehr

Endliche Automaten. Endliche Automaten 1 / 115

Endliche Automaten. Endliche Automaten 1 / 115 Endliche Automaten Endliche Automaten 1 / 115 Endliche Automaten Endliche Automaten erlauben eine Beschreibung von Handlungsabläufen: Wie ändert sich ein Systemzustand in Abhängigkeit von veränderten Umgebungsbedingungen?

Mehr

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19.

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19. Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Professur für Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen

Mehr

Endliche Automaten. Endliche Automaten 1 / 102

Endliche Automaten. Endliche Automaten 1 / 102 Endliche Automaten Endliche Automaten 1 / 102 Endliche Automaten Endliche Automaten erlauben eine Beschreibung von Handlungsabläufen: Wie ändert sich ein Systemzustand in Abhängigkeit von veränderten Umgebungsbedingungen?

Mehr

DisMod-Repetitorium Tag 4

DisMod-Repetitorium Tag 4 DisMod-Repetitorium Tag 4 Endliche Automaten, Reguläre Sprachen und Kontextfreie Grammatiken 22. März 2018 1 Endliche Automaten Definition DFA Auswertungen Äquivalenzrelationen Verschmelzungsrelation und

Mehr

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20.

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20. Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen

Mehr

Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken

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

Mehr

c) {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}}

c) {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, λ}?

Mehr

2.2 Nichtdeterministische endliche Automaten

2.2 Nichtdeterministische endliche Automaten 2 Endliche Automaten arbeiten und hier kann dann ggf. auch wieder auf die Konstruktion verwiesen werden. Fragen 1. Wie viele Informationen kann man in einem DFA speichern? a) beliebig viele b) endlich

Mehr

Das Pumping Lemma: Ein Anwendungsbeispiel

Das Pumping Lemma: Ein Anwendungsbeispiel Das Pumping Lemma: Ein Anwendungsbeispiel Beispiel: Die Palindromsprache ist nicht regulär. L = { } w {0, 1} w ist ein Palindrom Beweis: Angenommen, L ist doch regulär. Gemäß Pumping Lemma gibt es dann

Mehr

Formale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften

Formale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften Formale Grundlagen der Informatik 1 Kapitel 5 Frank Heitmann heitmann@informatik.uni-hamburg.de 18. April 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/64 NFAs - Grundlagen DFAs vs. NFAs Der

Mehr

Übungen zur Vorlesung Modellierung WS 2003/2004 Blatt 11 Musterlösungen

Übungen zur Vorlesung Modellierung WS 2003/2004 Blatt 11 Musterlösungen Dr. Theo Lettmann Paderborn, den 9. Januar 24 Abgabe 9. Januar 24 Übungen zur Vorlesung Modellierung WS 23/24 Blatt Musterlösungen AUFGABE 7 : Es sei der folgende partielle deterministische endliche Automat

Mehr

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

Formale 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

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 2: Eigenschaften von regulären Sprachen schulz@eprover.org Software Systems Engineering Alphabet Definition: Ein Alphabet Σ ist eine nichtleere, endliche

Mehr

liefern eine nicht maschinenbasierte Charakterisierung der regulären

liefern 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

Mehr

a b b a Alphabet und Wörter - Zusammengefasst Formale Grundlagen der Informatik 1 Kapitel 2 Endliche Automaten und reguläre Sprachen

a b b a Alphabet und Wörter - Zusammengefasst Formale Grundlagen der Informatik 1 Kapitel 2 Endliche Automaten und reguläre Sprachen Formale Grundlagen der Informatik Kapitel 2 und reguläre Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 5. April 26 Frank Heitmann heitmann@informatik.uni-hamburg.de /52 Alphabet und Wörter

Mehr

7 Endliche Automaten. 7.1 Deterministische endliche Automaten

7 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

Mehr

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch

FORMALE 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

Mehr

Einführung in die Informatik

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

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

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

Mehr

3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme

3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme Wiederholung Mit Grammatiken können wir Sprachen beschreiben und sie grob in Typen unterteilen: FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Formale

Mehr

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten

Kapitel 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

Mehr

1 Eliminieren von ɛ-übergängen

1 Eliminieren von ɛ-übergängen 1 Eliminieren von ɛ-übergängen 1.1 Beispiel 1 (a) Ausgangspunkt: Zwei ɛ-übergänge (b) Entfernung eines ɛ-übergangs, Reduktion (c) Entfernen eines ɛ-übergangs, Reduktion Abbildung 1: Elimination von ɛ-übergängen,

Mehr

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

1 Σ 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

Mehr

Nichtdeterministische endliche Automaten. Nichtdetermistische Automaten J. Blömer 1/12

Nichtdeterministische endliche Automaten. Nichtdetermistische Automaten J. Blömer 1/12 Nichtdeterministische endliche Automten Nichtdetermistische Automten J. Blömer 1/12 Nichtdeterministische endliche Automten In mnchen Modellierungen ist die Forderung, dss δ eine Funktion von Q Σ Q ist,

Mehr

Berechenbarkeitstheorie 1. Vorlesung

Berechenbarkeitstheorie 1. Vorlesung Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster WS 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz. Zentrale Themen

Mehr

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

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:

Mehr

Software Engineering Ergänzung zur Vorlesung

Software 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

Mehr

Formale Sprachen. Reguläre Sprachen. Rudolf FREUND, Marian KOGLER

Formale Sprachen. Reguläre Sprachen. Rudolf FREUND, Marian KOGLER Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER Endliche Automaten - Kleene STEPHEN KLEENE (99-994) 956: Representation of events in nerve nets and finite automata. In: C.E. Shannon und

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 3. Endliche Automaten 30.04.2015 Viorica Sofronie-Stokkermans Matthias Horbach e-mail: sofronie@uni-koblenz.de, horbach@uni-koblenz.de 1 Bis jetzt 1. Motivation

Mehr

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

1 Σ 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

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 3. Endliche Automaten (III) 7.05.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Organisatorisches 1. Teilklausur: Mittwoch, 10.06.2015, D028,

Mehr

Theoretische Informatik I

Theoretische 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

Mehr

Grundbegriffe der Informatik Tutorium 33

Grundbegriffe 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)

Mehr

Zusammenfassung der letzten LVA. Endliche Automaten mit Epsilon-Übergängen. Inhalte der Lehrveranstaltung (cont d)

Zusammenfassung der letzten LVA. Endliche Automaten mit Epsilon-Übergängen. Inhalte der Lehrveranstaltung (cont d) Zusammenfassung der letzten LVA Ein nichtdeterministischer endlicher Automat (NEA) ist ein 5-Tupel (Q, Σ, δ, S, F), sodass Q eine endliche Menge von Zustände Σ eine endliche Menge, das Eingabealphabet;

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften

Mehr

ALP I Turing-Maschine

ALP 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

Mehr

FORMALE SYSTEME. Der Satz von Myhill und Nerode. Automaten verkleinern mit Quotientenbildung. Verschiedene Äquivalenzrelationen

FORMALE SYSTEME. Der Satz von Myhill und Nerode. Automaten verkleinern mit Quotientenbildung. Verschiedene Äquivalenzrelationen Automaten verkleinern mit Quotientenbildung Wir betrachten DFAs mit totaler Übergangsfunktion. FORMALE SYSTEME 9. Vorlesung: Minimale Automaten (2) Markus Krötzsch TU Dresden, 9. November 207 C 0 A 0 [A]

Mehr

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

Mehr

Akzeptierende Turing-Maschine

Akzeptierende Turing-Maschine Akzeptierende Turing-Maschine Definition: Eine akzeptierende Turing-Maschine M ist ein Sechstupel M = (X, Z, z 0, Q, δ, F ), wobei (X, Z, z 0, Q, δ) eine Turing-Maschine ist und F Q gilt. Die von M akzeptierte

Mehr

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64

Worterkennung 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

Mehr

Die mathematische Seite

Die 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

Mehr

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Frank 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

Mehr

Formale Sprachen und endliche Automaten

Formale 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

Mehr

Einführung in die Theoretische Informatik

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

Mehr

Theoretische Informatik I

Theoretische 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

Mehr

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 3288

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit.  Zugangsnummer: 3288 Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Wiederholung Kapitel 2 http://pingo.upb.de Zugangsnummer: 3288 Dozent: Jun.-Prof. Dr. D. Baumeister

Mehr

Tutorium 23 Grundbegriffe der Informatik (10. Sitzung)

Tutorium 23 Grundbegriffe der Informatik (10. Sitzung) Tutorium 23 Grundbegriffe der Informatik (10. Sitzung) Tutor: Felix Stahlberg SOFTWARE DESIGN AND QUALITY GROUP Source: pixelio.de KIT The cooperation of Forschungszentrum Karlsruhe GmbH and Universität

Mehr

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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung 02.11.2006 schindel@informatik.uni-freiburg.de 1 Kapitel III Reguläre Sprachen Reguläre Sprachen und Ausdrücke Informatik III

Mehr

Kurz-Skript zur Theoretischen Informatik I

Kurz-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 ε

Mehr

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17 Endliche Automaten Im Hauptseminar Neuronale Netze LMU München, WS 2016/17 RS- Flipflop RS-Flipflop Ausgangszustand 0 1 0 1 0 1 Set Reset neuer Zustand 0 0 0 0 0 1 1 0 1 1 0 1 0 1 0 0 1 0 Was ist ein endlicher

Mehr

Grundbegriffe der Informatik Tutorium 10

Grundbegriffe 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

Mehr

Homomorphismen. Defnition: Σ und Γ seien zwei endliche Alphabete, und h sei eine Abbildung h : Σ Γ. Wir definieren die folgenden Sprachen:

Homomorphismen. Defnition: Σ und Γ seien zwei endliche Alphabete, und h sei eine Abbildung h : Σ Γ. Wir definieren die folgenden Sprachen: Homomorphismen Σ und Γ seien zwei endliche Alphabete, und h sei eine Abbildung h : Σ Γ. Wir definieren die folgenden Sprachen: h(l) := {h(u) : u L} Γ, für jede Sprache L Σ, h 1 (M) := {u Σ : h(u) M} Σ,

Mehr

2.3 Abschlusseigenschaften

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

Mehr

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

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

Mehr

Teil VI. Anwendungen, Teil 1: XML und deterministische reguläre Ausdrücke

Teil VI. Anwendungen, Teil 1: XML und deterministische reguläre Ausdrücke Teil VI Anwendungen, Teil 1: XML und deterministische reguläre Ausdrücke XML anhand von Beispielen... Anwendungen XML 1 / 10 XML-Schema In vielen Anwendungen sollen nur bestimmte XML-Dokumente zugelassen

Mehr

1. Übungsblatt 6.0 VU Theoretische Informatik und Logik

1. Übungsblatt 6.0 VU Theoretische Informatik und Logik . Übungsblatt 6. VU Theoretische Informatik und Logik 25. September 23 Aufgabe Sind folgende Aussagen korrekt? Begründen Sie jeweils Ihre Antwort. a) Für jede Sprache L gilt: L < L (wobei A die Anzahl

Mehr

Einführung in die Theoretische Informatik

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

Mehr

Äquivalenzrelation R A zu DFA A. Rechtsinvarianz. Relation R L zur Sprache L

Äquivalenzrelation R A zu DFA A. Rechtsinvarianz. Relation R L zur Sprache L Rechtsinvarianz Definition T4.2.8: Eine Äquivalenzrelation R auf Σ* heißt rechtsinvariant, wenn x R y z Σ*: xz R yz. Index von R: Anzahl der Äquivalenzklassen von R. Notation: ind(r) Im Folgenden: 2 rechtsinvariante

Mehr

7 Modellierung von Abläufen 7.1 Endliche Automaten

7 Modellierung von Abläufen 7.1 Endliche Automaten 7 Modellierung von Aläufen 7. Endliche Automten Mod-7. Endlicher Automt: Formler Klkül zur Spezifiktion von relen oder strkten Mschinen. Sie regieren uf äußere Ereignisse, ändern ihren inneren Zustnd,

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

ADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr

ADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr Bemerkung: Jede NDTM N (die die Sprache L(N) akzeptiert) kann in eine deterministische Turing-Maschine M konvertiert werden, die ebenfalls genau die Sprache L(N) akzeptiert. Beweisidee: Die Berechnungspfade

Mehr

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Hauptklausur 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

Mehr

Theoretische Informatik I

Theoretische 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

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Wintersemester 2007 / 2008 Prof. Dr. Heribert Vollmer Institut für Theoretische Informatik 29.10.2007 Reguläre Sprachen Ein (deterministischer) endlicher Automat

Mehr

FORMALE SYSTEME. 8. Vorlesung: Minimale Automaten. TU Dresden, 6. November Markus Krötzsch Lehrstuhl Wissensbasierte Systeme

FORMALE 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

Mehr

Die Nerode-Relation und der Index einer Sprache L

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

Mehr

Übersicht. 3 3 Kontextfreie Sprachen

Übersicht. 3 3 Kontextfreie Sprachen Formale Systeme, Automaten, Prozesse Übersicht 3 3.1 Kontextfreie Sprachen und Grammatiken 3.2 Ableitungsbäume 3.3 Die pre -Operation 3.4 Entscheidungsprobleme für CFGs 3.5 Normalformen für CFGs 3.6 Chomsky-Normalform

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE 0 18.01.2018 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

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

Mehr

Probeklausur Lösungen

Probeklausur Lösungen Probeklausur Lösungen 1. Aufgabe Der obere Teil in dem creenshot zeigt den Zustandsgraph. Es fehlen jedoch die Eingaben bzw. die Ausgaben. Im unteren Teil des creenshots ist die Übergangstabelle aufgeführt.

Mehr

Endliche Automaten. Endliche Automaten 1 / 108

Endliche 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?

Mehr

Deterministische Turing-Maschinen

Deterministische 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

Mehr

Theoretische Grundlagen der Informatik. Vorlesung am 02. November INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische 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

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Maximilian Haslbeck Fabian Mitterwallner Georg Moser David Obwaller cbr.uibk.ac.at Zusammenfassung der letzten LVA Definition Eine Grammatik G ist ein Quadrupel

Mehr

Grundbegriffe der Informatik Tutorium 11

Grundbegriffe der Informatik Tutorium 11 Grundbegriffe der Informatik Tutorium 11 Tutorium Nr. 16 Philipp Oppermann 21. Januar 2015 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Theoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung

Theoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung Theoretische Informatik und Logik Übungsblatt (26S) en Aufgabe. Sei L = {w#w r w {, } }. Geben Sie eine deterministische Turingmaschine M an, welche die Sprache L akzeptiert. Wählen Sie mindestens einen

Mehr

1 Endliche deterministische Automaten. Informatik I: Einführung in die Programmierung 7. Automaten: Akzeptoren & Transduktoren. Vorweg...

1 Endliche deterministische Automaten. Informatik I: Einführung in die Programmierung 7. Automaten: Akzeptoren & Transduktoren. Vorweg... Informatik I: Einführung in die Programmierung 7. : Akzeptoren Albert-Ludwigs-Universität Freiburg Bernhard Nebel 30. Oktober 20 30. Oktober 20 3 / 30 Vorweg... Was steckt in dem Würfel? Vor kurzem war

Mehr

Suche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften

Suche 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

Mehr

Reguläre Sprachen und endliche Automaten

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

Mehr

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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung 16.11.2006 schindel@informatik.uni-freiburg.de 1 Informatik III 7. Vorlesung - 2 Informatik III 7. Vorlesung - 3 Informatik III

Mehr

Übungsblatt 1. Lorenz Leutgeb. 30. März 2015

Übungsblatt 1. Lorenz Leutgeb. 30. März 2015 Übungsblatt Lorenz Leutgeb 30. März 205 Aufgabe. Annahmen ohne Einschränkungen: P Σ und P Γ. Per Definitionem der Reduktion: P P 2 f : Σ Γ wobei f total und berechenbar, genau so, dass: w Σ : w P f(w)

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 14: Endliche Automaten Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/31 Überblick Erstes Beispiel: ein Getränkeautomat Mealy-Automaten

Mehr

H MPKP. Beispiel für eine Rechnung. Reduktion H MPKP. Überführungsregeln

H 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

Mehr

Das Pumping-Lemma Formulierung

Das Pumping-Lemma Formulierung Das Pumping-Lemma Formulierung Sei L reguläre Sprache. Dann gibt es ein n N mit: jedes Wort w L mit w n kann zerlegt werden in w = xyz, so dass gilt: 1. xy n 2. y 1 3. für alle k 0 ist xy k z L. 59 / 162

Mehr

Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit. Sommersemester Herzlich willkommen!

Theoretische 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

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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung 17.11.2006 schindel@informatik.uni-freiburg.de 1 Prinzip des Kellerautomats Push-Down-Automaton (PDA) Ein Kellerautomat vereinigt

Mehr

Induktive Definition

Induktive Definition Rechenregeln A B = B A A (B C) = (A B) C A (B C) = (A B) C A (B C) = A B A C (B C) A = B A C A {ε} A = A A {ε} = A (A {ε}) = A (A ) = A A A = A + A A = A + A + {ε} = A Beispiel. Real-Zahlen = {0,..., 9}

Mehr

Übungsaufgaben zu Formalen Sprachen und Automaten

Ü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

Einführung in die Theoretische Informatik

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

Mehr

Automaten und Formale Sprachen ε-automaten und Minimierung

Automaten 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

Mehr

Lexikalische Analyse, Tokenizer, Scanner

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

Mehr

Automaten und Formale Sprachen SoSe 2013 in Trier

Automaten und Formale Sprachen SoSe 2013 in Trier Automaten und Formale Sprachen SoSe 2013 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 2. Juni 2013 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche

Mehr

Satz (Abschluß unter der Stern-Operation)

Satz (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

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 13. Vorlesung 07.12.2006 1 Überblick: Die Church- Turing-These Turing-Maschinen 1-Band Turing-Maschine Mehrband-Turing-Maschinen Nichtdeterministische

Mehr