Determinisierung von endlichen Automaten

Größe: px
Ab Seite anzeigen:

Download "Determinisierung von endlichen Automaten"

Transkript

1 Thomas Hanneforth Institut für Linguistik Universität Potsdam May 14, 2014 Thomas Hanneforth (Universität Potsdam) May 14, / 21

2 Outline 1 Einführung 2 Beispiel 3 Ein verbesserter Determinisierungsalgorithmus 4 Äquivalenzbeweis 5 Komplexität Thomas Hanneforth (Universität Potsdam) May 14, / 21

3 Satz Zu jedem nicht-deterministischen Automaten A = Q, Σ, q 0, δ nd, F (mit δ nd : Q Σ 2 Q ) gibt es einen deterministischen Automaten A = Q, Σ, q 0, δ d, F mit L(A) = L(A ). Vorgehen 1 Konstruktion: Teilmengen-Konstruktion 2 Induktionsbeweis über die Länge der Wörter dass L(A) = L(A ) gilt. Thomas Hanneforth (Universität Potsdam) May 14, / 21

4 Definition (Teilmengen-Konstruktion) Es sei A = Q, Σ, q 0, F, δ nd ein NEA. Definiere den DEA A = Q, Σ, q 0, F, δ d wie folgt: Q = 2 Q \ q 0 = {q 0} F = {S Q S F } δ d (S, l) = q S δ nd(q, l), l Σ, S Q Thomas Hanneforth (Universität Potsdam) May 14, / 21

5 Teilmengen-Konstruktion Idee: Simulation des DEA mit allen möglichen Eingaben w Zu jedem Zeitpunkt der Verarbeitung von w befindet sich der DEA in einer Menge von NEA-Zuständen. Zu Beginn befindet sich der DEA in der Menge {q 0 } wobei q 0 der Startzustand des NEA ist Thomas Hanneforth (Universität Potsdam) May 14, / 21

6 Teilmengen-Konstruktion Simulation des NEA für die Eingabe abc Gegebener NEA Thomas Hanneforth (Universität Potsdam) May 14, / 21

7 Teilmengen-Konstruktion Simulation des NEA für die Eingabe abc Aktuelle Zustandsmenge S = {q 0 } Thomas Hanneforth (Universität Potsdam) May 14, / 21

8 Teilmengen-Konstruktion Simulation des NEA für die Eingabe abc Nach Verarbeitung von a: S = {q 1, q 2, q 3 } Thomas Hanneforth (Universität Potsdam) May 14, / 21

9 Teilmengen-Konstruktion Simulation des NEA für die Eingabe abc Nach Verarbeitung von b: S = {q 4, q 5, q 6 } Thomas Hanneforth (Universität Potsdam) May 14, / 21

10 Teilmengen-Konstruktion Simulation des NEA für die Eingabe abc Nach Verarbeitung von c: S = {q 1, q 4, q 7 } enthält einen Endzustand, also ist S auch ein Endzustand im DEA Thomas Hanneforth (Universität Potsdam) May 14, / 21

11 Teilmengen-Konstruktion Simulation des NEA für die Eingabe abc {q0} a {q1,q2,q3} b {q4,q5,q6} c {q1,q4,q7} Simulierter DEA für abc Thomas Hanneforth (Universität Potsdam) May 14, / 21

12 Outline 1 Einführung 2 Beispiel 3 Ein verbesserter Determinisierungsalgorithmus 4 Äquivalenzbeweis 5 Komplexität Thomas Hanneforth (Universität Potsdam) May 14, / 21

13 Beispiel: Determinisierung eines NEAs Beispiel-NEA Thomas Hanneforth (Universität Potsdam) May 14, / 21

14 Beispiel: Determinisierung eines NEAs Zustände des DEA als Teilmengen der Zustandsmenge des NEA Thomas Hanneforth (Universität Potsdam) May 14, / 21

15 Beispiel: Determinisierung eines NEAs S = {q 0 }, l = a Thomas Hanneforth (Universität Potsdam) May 14, / 21

16 Beispiel: Determinisierung eines NEAs S = {q 1 }, l = b Thomas Hanneforth (Universität Potsdam) May 14, / 21

17 Beispiel: Determinisierung eines NEAs S = {q 2 }, l = c Thomas Hanneforth (Universität Potsdam) May 14, / 21

18 Beispiel: Determinisierung eines NEAs S = {q 0, q 1 }, l = a Thomas Hanneforth (Universität Potsdam) May 14, / 21

19 Beispiel: Determinisierung eines NEAs S = {q 0, q 1 }, l = b Thomas Hanneforth (Universität Potsdam) May 14, / 21

20 Beispiel: Determinisierung eines NEAs S = {q 0, q 2 }, l = a Thomas Hanneforth (Universität Potsdam) May 14, / 21

21 Beispiel: Determinisierung eines NEAs S = {q 0, q 2 }, l = c Thomas Hanneforth (Universität Potsdam) May 14, / 21

22 Beispiel: Determinisierung eines NEAs S = {q 1, q 2 }, l = b Thomas Hanneforth (Universität Potsdam) May 14, / 21

23 Beispiel: Determinisierung eines NEAs S = {q 1, q 2 }, l = c Thomas Hanneforth (Universität Potsdam) May 14, / 21

24 Beispiel: Determinisierung eines NEAs S = {q 0, q 1, q 2 }, l = a Thomas Hanneforth (Universität Potsdam) May 14, / 21

25 Beispiel: Determinisierung eines NEAs S = {q 0, q 1, q 2 }, l = b Thomas Hanneforth (Universität Potsdam) May 14, / 21

26 Beispiel: Determinisierung eines NEAs S = {q 0, q 1, q 2 }, l = c Thomas Hanneforth (Universität Potsdam) May 14, / 21

27 Beispiel: Determinisierung eines NEAs Konstruierter DEA Thomas Hanneforth (Universität Potsdam) May 14, / 21

28 Beispiel: Determinisierung eines NEAs Die grau dargestellten Zustände sind nutzlos, da sie nicht erreichbar sind Thomas Hanneforth (Universität Potsdam) May 14, / 21

29 Beispiel: Determinisierung eines NEAs DEA nach Entfernung der nutzlosen Zustände Thomas Hanneforth (Universität Potsdam) May 14, / 21

30 Diskussion Die naive, mengentheoretische Version des Determinisierungsalgorithmus ist aus mehreren Gründen inadäquat: Sie ist aufgrund der Kardinalität der Potenzmenge schon für kleine NEAs unpraktikabel. Sie erzeugt in den meisten praktischen Fällen viel zu viele nutzlose Zustände (z.b. Zustände, die vom Startzustand aus nicht erreichbar sind), die Speicher verbrauchen und die am Ende auch wieder entfernt werden müssen, was Zeit kostet. Die Lösung ist ein Algorithmus mit Erreichbarkeitsinvariante: alle vom Algorithmus erzeugten Zustände sind qua Konstruktion vom Startzustand aus erreichbar. Thomas Hanneforth (Universität Potsdam) May 14, / 21

31 Diskussion Die naive, mengentheoretische Version des Determinisierungsalgorithmus ist aus mehreren Gründen inadäquat: Sie ist aufgrund der Kardinalität der Potenzmenge schon für kleine NEAs unpraktikabel. Sie erzeugt in den meisten praktischen Fällen viel zu viele nutzlose Zustände (z.b. Zustände, die vom Startzustand aus nicht erreichbar sind), die Speicher verbrauchen und die am Ende auch wieder entfernt werden müssen, was Zeit kostet. Die Lösung ist ein Algorithmus mit Erreichbarkeitsinvariante: alle vom Algorithmus erzeugten Zustände sind qua Konstruktion vom Startzustand aus erreichbar. Thomas Hanneforth (Universität Potsdam) May 14, / 21

32 Outline 1 Einführung 2 Beispiel 3 Ein verbesserter Determinisierungsalgorithmus 4 Äquivalenzbeweis 5 Komplexität Thomas Hanneforth (Universität Potsdam) May 14, / 21

33 Ein verbesserter Determinisierungsalgorithmus Input: NFA A = Q, Σ, q 0, δ nd, F Output: DFA A = Q, Σ, {q 0 }, δ d, F 1 R ; L ; Q F 2 Enqueue(L, {q 0 }) 3 while L do 4 S Dequeue(L) 5 Q Q {S} 6 if S F then 7 F F {S} 8 C = { a, p S δ nd(p, a) Σ 2 Q r S : δ nd (r, a) } 9 for each a, S C do 0 if S / R then 1 R R {S } 2 Enqueue(L, S ) 3 δ d (S, a) S Thomas Hanneforth (Universität Potsdam) May 14, / 21

34 Ein verbesserter Determinisierungsalgorithmus Erläuterungen Der Algorithmus verwendet eine Menge R, in der sich die bereits konstruierten Zustände des DEAs befinden. Außerdem verwendet er eine Liste L (eine sog. Agenda), in der sich die noch zu verarbeitenden Teilmengen S Q befinden. Zeile 2 fügt die Einermenge mit dem Startzustand q 0 des NEAs in die Liste L ein. Zeilen 3 15 bilden eine while-schleife: solange sich noch Zustandsmengen in der Liste L befinden, werden diese schrittweise entnommen und weiterverarbeitet. Zeile 4 entnimmt eine Zustandsmenge S aus der Liste. Diese wird in Zeile 5 zu Q hinzugefügt. Enthält S einen oder mehrere Endzustände (Z. 6), dann wird S auch zur Endzustandsmenge F des DEA hinzugefügt (Z. 7). Thomas Hanneforth (Universität Potsdam) May 14, / 21

35 Ein verbesserter Determinisierungsalgorithmus Erläuterungen Zeile 8 erzeugt eine Menge von Kandidatenpaaren S, a : S enthält dabei alle Zustände aus Q, die von einem Zustand p aus S mit a mit einem Übergang in A erreichbar sind. Die Kandidatenmenge C wird in der for-schleife (Z. 9 13) verarbeitet. Ist die Zustandsmenge S eine nicht schon einmal konstruierte Menge (S / R, Z. 10), dann wird sie R (Z. 11) und auch die Agenda L aufgenommen (Z. 12). In jedem Fall wird in den DEA ein Übergang S a S aufgenommen. Thomas Hanneforth (Universität Potsdam) May 14, / 21

36 Outline 1 Einführung 2 Beispiel 3 Ein verbesserter Determinisierungsalgorithmus 4 Äquivalenzbeweis 5 Komplexität Thomas Hanneforth (Universität Potsdam) May 14, / 21

37 Äquivalenzbeweis Zu zeigen L(A) = L(A ) Aufgrund der Definition der Sprachen von NEAs und DEAs ist dies äquivalent zu: {w Σ δ nd (q 0, w) F } = {w Σ δ d ({q 0}, w) F } Mit anderen Worten: w Σ : w L(A) w L(A ) w L(A ) w L(A) Allgemeinere Behauptung w Σ : δ d (q 0, w) = δ nd (q 0, w) Thomas Hanneforth (Universität Potsdam) May 14, / 21

38 Äquivalenzbeweis δ nd und δ d Definition (δ nd ) q Q : δnd (q, ε) = {q} q Q, a Σ, w Σ : δnd (q, wa) = p δnd (q,w) δ nd(p, a) Definition (δ d ) q Q : δd (q, ε) = q q Q, a Σ, w Σ : δd (q, wa) = δ d(δd (q, w), a) Thomas Hanneforth (Universität Potsdam) May 14, / 21

39 Äquivalenzbeweis Induktion über die Länge der Wörter w Induktionsbasis: w = 0 w = ε (i) δd (q 0, ε) = q 0 (Definition von δd ) (ii) q 0 = {q 0} (Definition von A ) (iii) {q 0 } = δnd (q 0, ε) (Definition von δnd ) Also gilt: δ d (q 0, ε) = δ nd (q 0, ε) Thomas Hanneforth (Universität Potsdam) May 14, / 21

40 Äquivalenzbeweis Induktion über die Länge der Wörter w Induktionsvoraussetzung (IV) δ d (q 0, w) = δ nd (q 0, w) gelte für alle Wörter w mit w k. Induktionsschritt Es sei w = k + 1, d.h. w = w a mit a Σ und w Σ. (1) δd (q 0, w a) = δ d (δd (q 0, w ), a) (Def. von δd ) (2) δd (q 0, w ) = δnd (q 0, w ) (IV, da w = k) (3) δd (q 0, w a) = δ d (δnd (q 0, w ), a) (aus (1) und (2)) Es sei Z = δ nd (q 0, w ) (4) δ d (δnd (q 0, w ), a) = p Z δ nd(p, a) (Def. von δ d ) (5) p Z δ nd(p, a) = δnd (q 0, w a) (Def. von δnd ) (6) δd (q 0, w) = δ nd (q 0, w) (aus (3) und (5)) Thomas Hanneforth (Universität Potsdam) May 14, / 21

41 Outline 1 Einführung 2 Beispiel 3 Ein verbesserter Determinisierungsalgorithmus 4 Äquivalenzbeweis 5 Komplexität Thomas Hanneforth (Universität Potsdam) May 14, / 21

42 Versionen : Version 0.1 Thomas Hanneforth (Universität Potsdam) May 14, / 21

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

Einführung in die Computerlinguistik deterministische und nichtdeterministische endliche Automaten

Einführung in die Computerlinguistik deterministische und nichtdeterministische endliche Automaten Einführung in die Computerlinguistik deterministische und nichtdeterministische endliche Automaten Dozentin: Wiebke Petersen Foliensatz 4 Wiebke Petersen Einführung CL 1 Äquivalenz von endlichen Automaten

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 4: Nichtdeterminismus Teil 2 schulz@eprover.org Software Systems Engineering Nichtdeterministische endliche Automaten Definition: Ein nichtdeterministischer

Mehr

Operationen auf endlichen Automaten und Transduktoren

Operationen auf endlichen Automaten und Transduktoren Operationen auf endlichen Automaten und Transduktoren Kursfolien Karin Haenelt 1 Notationskonventionen L reguläre Sprache A endlicher Automat DEA deterministischer endlicher Automat NEA nichtdeterministischer

Mehr

5.4 Endliche Automaten

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

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

Theoretische Informatik SS 03 Übung 3

Theoretische Informatik SS 03 Übung 3 Theoretische Informatik SS 03 Übung 3 Aufgabe 1 a) Sind die folgenden Funktionen f : partiell oder total: f(x, y) = x + y f(x, y) = x y f(x, y) = x y f(x, y) = x DIV y? Hierbei ist x DIV y = x y der ganzzahlige

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

Automaten und formale Sprachen: Vorlesungsskript G. Brewka, A. Nittka

Automaten und formale Sprachen: Vorlesungsskript G. Brewka, A. Nittka Automaten und formale Sprachen: Vorlesungsskript G. Brewka, A. Nittka Literatur: John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie,

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

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift 3. Endliche Automaten endliche Zustandsübergangssysteme Theoretische Informatik Mitschrift Beispiel: 2-Bit-Ringzähler: ={Inc} L R ={IncInc Inc,Inc 7, Inc 11,...} n ' mod ' 4=3 ={Inc n k 0.n=4 k3 } 2-Bit-Ringzähler

Mehr

Es gibt drei unterschiedliche Automaten:

Es 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 (ε-

Mehr

äußere Klammern können entfallen, ebenso solche, die wegen Assoziativität von + und Konkatenation nicht notwendig sind:

äußere Klammern können entfallen, ebenso solche, die wegen Assoziativität von + und Konkatenation nicht notwendig sind: 3. Reguläre Sprachen Bisher wurden Automaten behandelt und Äquivalenzen zwischen den verschiedenen Automaten gezeigt. DEAs erkennen formale Sprachen. Gibt es formale Sprachen, die nicht erkannt werden?

Mehr

Vorlesung Theoretische Informatik

Vorlesung 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

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

Reguläre Sprachen Endliche Automaten

Reguläre Sprachen Endliche Automaten Endliche Automaten (Folie 54, Seite 16 im Skript) Einige Vorteile endlicher deterministischer Automaten: durch Computer schnell simulierbar wenig Speicher benötigt: Tabelle für δ (read-only), aktueller

Mehr

... = für δ(z, a i ) = z. Abbildung 4.4: Interpretation der Arbeitsweise eines endlichen Automaten

... = für δ(z, a i ) = z. Abbildung 4.4: Interpretation der Arbeitsweise eines endlichen Automaten 3 Reguläre Sprachen 63 3 Reguläre Sprachen In diesem Kapitel beschäftigen wir uns etwas näher mit den regulären Sprachen, insbesondere mit der Möglichkeit verschiedener Charakterisierungen und den Eigenschaften

Mehr

I.2. Endliche Automaten (ohne Ausgabe)

I.2. Endliche Automaten (ohne Ausgabe) I2 Endliche Automaten (ohne Ausgabe) I2 Deterministische endliche Automaten Beispiel: Pascal-Syntax für Zahlen hat folgende Form: ::=

Mehr

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai HA-Lösung. TA-Lösung

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai HA-Lösung. TA-Lösung Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai 2016 HA-Lösung TA-Lösung Einführung in die theoretische Informatik Aufgabenblatt 2 Beachten Sie: Soweit

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

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

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

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

Thomas Behr. 17. November 2011

Thomas Behr. 17. November 2011 in in Fakultät für Mathematik und Informatik Datenbanksysteme für neue Anwendungen FernUniversität in Hagen 17. November 2011 c 2011 FernUniversität in Hagen Outline in 1 2 3 4 5 6 - Was ist das? in über

Mehr

2.4 Kontextsensitive und Typ 0-Sprachen

2.4 Kontextsensitive und Typ 0-Sprachen Definition 2.43 Eine Typ 1 Grammatik ist in Kuroda Normalform, falls alle Regeln eine der folgenden 4 Formen haben: Dabei: A, B, C, D V und a Σ. Satz 2.44 A a, A B, A BC, AB CD. Für jede Typ 1 Grammatik

Mehr

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ. Reguläre Ausdrücke Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (i) ist ein regulärer Ausdruck über Σ. (ii) ε ist ein regulärer Ausdruck über Σ. (iii) Für jedes a Σ ist a ein regulärer

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

Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:

Ein 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

Mehr

Grundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de

Grundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de Grundlagen Theoretischer Informatik I SoSe 2011 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik I Gesamtübersicht Organisatorisches; Einführung Logik

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 7 15. Juni 2010 Einführung in die Theoretische

Mehr

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs)

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs) ank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert iese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen

Mehr

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 15 Ziele vgl. AFS: Berechnungsmodelle für Typ-0- und Typ-1-Sprachen (Nicht-)Abschlußeigenschaften

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Einheit 2.4 Grammatiken 1. Arbeitsweise 2. Klassifizierung 3. Beziehung zu Automaten Beschreibungsformen für Sprachen Mathematische Mengennotation Prädikate beschreiben Eigenschaften

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

Rekursiv aufzählbare Sprachen

Rekursiv 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

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

Automatentheorie und formale Sprachen

Automatentheorie und formale Sprachen Automatentheorie und formale Sprachen VL 4 Reguläre Ausdrücke und reguläre Sprachen Kathrin Hoffmann 10. April 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 114 Aufgabe 13:

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

Universität des Saarlandes

Universitä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/

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014 Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Ulrich Furbach Institut für Informatik Sommersemester 2014 Furbach Grundlagen d. Theoretischen Informatik:

Mehr

Spiele für den. Christian Dax. Betreuer: Dr. Martin Lange. Wiederholung Spiele für VAL und SAT ν-line Automaten Entscheidungsverfahren

Spiele für den. Christian Dax. Betreuer: Dr. Martin Lange. Wiederholung Spiele für VAL und SAT ν-line Automaten Entscheidungsverfahren Spiele für den Linearzeit µ-kalkül Christian Dax Betreuer: Dr. Martin Lange 1 Kurzer Rückblick 2 Linearzeit µ-kalkül Definition (µtl) ϕ ::= a X ϕ ϕ ϕ ϕ Oϕ µx.ϕ νx.ϕ Example νx.a OOX (an jd. 2. Stelle gilt

Mehr

Operationen auf endlichen Akzeptoren und Transduktoren

Operationen auf endlichen Akzeptoren und Transduktoren Operationen auf endlichen Akzeptoren und Transduktoren Definitionen, Algorithmen, Erläuterungen und Beispiele - eine Übersicht Karin Haenelt, 28.5.2010 ( 1 25.04.2004) Operationen auf endlichen Akzeptoren

Mehr

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

Theoretische Informatik für Wirtschaftsinformatik und Lehramt Theoretische Informatik für Wirtschaftsinformatik und Lehramt Reguläre Sprachen Priv.-Doz. Dr. Stefan Milius stefan.milius@fau.de Theoretische Informatik Friedrich-Alexander Universität Erlangen-Nürnberg

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

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik 1 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 2 Kontextfreie Grammatiken Definition: Eine Grammatik G

Mehr

Der deterministische, endliche Automat. Formale Grundlagen der Informatik 1 Kapitel 3 Mehr zu regulären Sprachen

Der deterministische, endliche Automat. Formale Grundlagen der Informatik 1 Kapitel 3 Mehr zu regulären Sprachen Der deterministische, endliche Automat Formale Grundlagen der Informatik 1 Kapitel 3 Mehr zu regulären Sprachen Frank Heitmann heitmann@informatik.uni-hamurg.de 8. April 2014 Definition (DFA) Ein deterministischer,

Mehr

8. Turingmaschinen und kontextsensitive Sprachen

8. Turingmaschinen und kontextsensitive Sprachen 8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten

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

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

THEORETISCHE INFORMATIK

THEORETISCHE INFORMATIK THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek @ Institut für Theoretische Informatik Technische Universität Braunschweig Dezember 28 Inhaltsverzeichnis Endliche Automaten. Mathematische Grundbegriffe......................

Mehr

Einführung in die Theoretische Informatik

Einfü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 Die Registermaschine (random access machine, RAM) 0 I 0 1 I 1 2 I 2 m I m Programm

Mehr

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO). 1 Grammatiken Autor: Tilman Blumenbach Letzte Änderung: 28. Juni 2012 18:15 Ziel von Grammatiken Wollen die Struktur von Sprachen modellieren und charakterisieren. Beispiel Ein Satz der deutschen Sprache

Mehr

DKA und dkfs (mit Übungen)

DKA und dkfs (mit Übungen) DKA und dkfs (mit Übungen) Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 1/15 kurz DKA Analog zu endlichen Automaten

Mehr

Induktive Beweise und rekursive Definitionen

Induktive Beweise und rekursive Definitionen Induktive Beweise und rekursive Definitionen Vorlesung Logik in der Informatik, HU Berlin 1. Übungsstunde Beweis durch vollständige Induktion über N Aufgabe 1 Zeige, dass für alle n N gilt: n 2 i = 2 n+1

Mehr

Logik für Informatiker. 1. Grundlegende Beweisstrategien. Viorica Sofronie-Stokkermans Universität Koblenz-Landau

Logik für Informatiker. 1. Grundlegende Beweisstrategien. Viorica Sofronie-Stokkermans Universität Koblenz-Landau Logik für Informatiker 1. Grundlegende Beweisstrategien Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Mathematisches Beweisen Mathematische ussagen - haben oft

Mehr

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

Theoretische 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

Mehr

Satz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2

Satz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2 Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von einem deterministischen endlichen Automaten akzeptiert wird ist regulär und jede reguläre Sprache wird von einem deterministischen endlichen

Mehr

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekt mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten

Mehr

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965). 5. Graphenprobleme Im folgenden bezeichnen G = (E, K) einen endlichen Graphen mit der Eckenmenge E und der Kantenmenge K. G kann ungerichtet, gerichtet, schlicht oder nicht schlicht sein. 5.1 Spannende

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 5: Reguläre Ausdrücke und Grammatiken schulz@eprover.org Software Systems Engineering Reguläre Sprachen Bisher: Charakterisierung von Sprachen über Automaten

Mehr

Induktive Beweise und rekursive Definitionen

Induktive Beweise und rekursive Definitionen Induktive Beweise und rekursive Definitionen Vorlesung Logik in der Informatik, HU Berlin 1. Übungsstunde Beweis durch vollständige Induktion über N Aufgabe 1 Zeige, dass für alle n N gilt: n 2 i = 2 n+1

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2015 22.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen

Mehr

1.2 LOOP-, WHILE- und GOTO-Berechenbarkeit

1.2 LOOP-, WHILE- und GOTO-Berechenbarkeit Die Programmiersprache LOOP (i) Syntaktische Komponenten: Variable: x 0, x 1, x 2,... Konstanten: 0, 1, 2,... Trennsymbole: ; := Operationszeichen: + Schlüsselwörter: LOOP DO END (ii) LOOP-Programme: Wertzuweisungen:

Mehr

Reguläre Sprachen und endliche Automaten

Reguläre Sprachen und endliche Automaten Inhaltsverzeichnis 2 Reguläre Sprachen und endliche Automaten..................... 7 1 Aus der Kursankündigung.................................... 7 2 Einführung............................................

Mehr

THEORETISCHE INFORMATIK

THEORETISCHE INFORMATIK THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek Institut für Theoretische Informatik Technische Universität Braunschweig Januar 2014 Inhaltsverzeichnis 1 Endliche Automaten 1 1.1 Mathematische Grundbegriffe.......................

Mehr

Grundbegriffe der Informatik Tutorium 2

Grundbegriffe der Informatik Tutorium 2 Grundbegriffe der Informatik Tutorium 2 Tutorium Nr. 32 Philipp Oppermann 13. November 2013 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Einführung in die Theoretische Informatik

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

Mehr

Theoretische Informatik 1

Theoretische 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

Mehr

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) WS 2014/15 Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_14

Mehr

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

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

Mehr

Deterministischer endlicher Automat A ohne Ausgabe (deterministischer endlicher Akzeptor)

Deterministischer endlicher Automat A ohne Ausgabe (deterministischer endlicher Akzeptor) Deterministischer endlicher Automat A ohne Ausgabe (deterministischer endlicher Akzeptor) wobei A = (E, Z, f, z 0, F ) E Z f : Z E Z z 0 Z Eingabealphabet Zustandsmenge (Zustands )Überführungsfunktion

Mehr

Deterministische endliche Automaten - Wiederholung

Deterministische endliche Automaten - Wiederholung Deterministische endliche Automaten - Wiederholung Die folgende Klasse Zahl stellt einen endlichen Automaten dar. Ermittle die Größen des Automaten und zeichne den Zustandsgraphen. Gib Zeichenfolgen an,

Mehr

Universität des Saarlandes Theoretische Informatik (WS 2015) Lösungsvorschlag 4

Universität des Saarlandes Theoretische Informatik (WS 2015) Lösungsvorschlag 4 Universität des Saarlandes Theoretische Informatik (WS 2015) Fakultät 6.2 Informatik Team der Tutoren Lösungsvorschlag 4 Aufgabe 4.1 (16 Punkte) Klassifizieren Sie die folgenden Sprachen nach den Kategorien

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2016 20.04.2016 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen

Mehr

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III Name Vorname Matrikelnummer Universität Karlsruhe Institut für Theoretische Informatik o. Prof. Dr. P. Sanders 26. Feb. 2007 Klausur: Informatik III Aufgabe 1. Multiple Choice 10 Punkte Aufgabe 2. Teilmengenkonstruktion

Mehr

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S Formale Grundlagen (WIN) Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Inhalt Das Alphabet Σ sei eine endliche

Mehr

Grammatiken. Einführung

Grammatiken. Einführung Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische

Mehr

54 4 FORMALE SPRACHEN

54 4 FORMALE SPRACHEN 54 4 FORMALE SPRACHEN 4 Formale Sprachen 41 Einführung Ich erinnere an die Definitionen im Unterkapitel 16, die im weiteren Verlauf der Vorlesung von Bedeutung sein werden Insbesondere werden wir uns mit

Mehr

11.1 Kontextsensitive und allgemeine Grammatiken

11.1 Kontextsensitive und allgemeine Grammatiken Theorie der Informatik 7. April 2014 11. Kontextsensitive und Typ-0-Sprachen Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen 11.1 Kontextsensitive und allgemeine Grammatiken Malte Helmert

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 20.12.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Rückblick Semi-Thue-Systeme Ein Semi-Thue-System besteht

Mehr

Berechenbarkeit. Script, Kapitel 2

Berechenbarkeit. Script, Kapitel 2 Berechenbarkeit Script, Kapitel 2 Intuitiver Berechenbarkeitsbegriff Turing-Berechenbarkeit WHILE-Berechenbarkeit Church sche These Entscheidungsprobleme Unentscheidbarkeit des Halteproblems für Turingmaschinen

Mehr

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik 2 Gesamtübersicht Ersetzungsverfahren: Grammatiken

Mehr

Formale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Formale 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

Mehr

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen.

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel: 1234q567 bedeutet: Kopf steht auf 5, Zustand ist q. Rechnung:

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

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls 4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls δ(q, a, Z) + δ(q, ɛ, Z) 1 (q, a, Z) Q Σ. Die von einem DPDA, der mit leerem Keller akzeptiert,

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 3. Endliche Automaten (V) 21.05.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Determinierte endliche Automaten (DEAs) Indeterminierte

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum

Mehr

Berechenbarkeit und Komplexität Endliche Automaten

Berechenbarkeit und Komplexität Endliche Automaten Berechenbarkeit und Komplexität Endliche Automaten Wolfgang Schreiner Wolfgang.Schreiner@risc.uni-linz.ac.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria

Mehr

Theoretische Informatik. Alphabete, Worte, Sprachen

Theoretische Informatik. Alphabete, Worte, Sprachen Theoretische Informatik Alphabete, Worte, Sprachen Alphabete, Worte, Sprachen 1. Alphabete und Worte Definitionen, Beispiele Operationen mit Worten Induktionsbeweise 2. Sprachen Definition und Beispiele

Mehr

Mächtigkeit von WHILE-Programmen

Mächtigkeit von WHILE-Programmen Mächtigkeit von WHILE-Programmen Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 26. November 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

3. Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ.

3. Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ. H O C H S C H U L E University of Applied Sciences ZITTAU/GÖRLITZ Fachbereich Informatik Prof. Dr. Christian Wagenknecht Formale Sprachen und Automaten Übung: Reguläre Ausdrücke Zur Erinnerung: Reguläre

Mehr

LOOP-Programme: Syntaktische Komponenten

LOOP-Programme: Syntaktische Komponenten LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=

Mehr

Theoretische Informatik Testvorbereitung Moritz Resl

Theoretische Informatik Testvorbereitung Moritz Resl Theoretische Informatik Testvorbereitung Moritz Resl Bestandteile einer Programmiersprache: a) Syntax (Form): durch kontextfreie Grammatik beschrieben b) Semantik (Bedeutung) 1.) Kontextfreie Sprachen

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Wdhlg.: Dijkstra-Algorithmus I Bestimmung der

Mehr

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen, Entscheidbarkeit, P 239/ 333 Einführung in die NP-Vollständigkeitstheorie

Mehr

Eigenschaften regulärer Sprachen

Eigenschaften regulärer Sprachen = {} {0} {0} {} = {0} {} Für L(A) benötigen wir gemäß Gleichung.3 die Mengen R 3 und R3 3. R 3 = R R3 (R33) R3 = {0} {00} {0} {} ({ε} {0, } {0} {}) {0, } {00} = {0} {00} {0} {} ({0, } {0} {}) {0, } {00}

Mehr

Machine Translation with Inferred Stochastic Finite-State Transducers

Machine Translation with Inferred Stochastic Finite-State Transducers Machine Translation with Inferred Stochastic Finite-State Transducers von Klaus Suttner HS: Endliche Automaten Dozentin: Karin Haenelt Seminar für Computerlinguistik Universität Heidelberg 29.06.09 Finite-state

Mehr

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

Formale Methoden 1. Gerhard Jäger 16. Januar Uni Bielefeld, WS 2007/2008 1/19 1/19 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 16. Januar 2008 2/19 Reguläre Ausdrücke vierte Art (neben Typ-3-Grammatiken, deterministischen und nicht-deterministischen

Mehr