Organisatorisches... Formale Grundlagen der Informatik 1 Kapitel 1. Endliche Automaten. Organisatorisches. Organisatorisches. Eine typische Woche:

Größe: px
Ab Seite anzeigen:

Download "Organisatorisches... Formale Grundlagen der Informatik 1 Kapitel 1. Endliche Automaten. Organisatorisches. Organisatorisches. Eine typische Woche:"

Transkript

1 Organisatorisches... Formale der Informatik 1 Kapitel 1 Frank Heitmann heitmann@informatik.uni-hamurg.de 7. April 215 Eine typische Woche: Mo+Di: Vorlesung Di-Fr: Üungsgruppen Neuer Zettel und Beareiten der Präsenzaufgaen Agae der Üungsaufgaen (der Vorwoche) Rückgae der Üungsaufgaen (der Vorvorwoche) Mi: Neuer Lesestoff Als Vorereitung für die kommende Woche Fr: Neue PDFs: Präsenzlösungen der Aufgaen dieser Woche Musterlösung der gerade agegeenen Aufgaen Neuer Aufgaenzettel Frank Heitmann heitmann@informatik.uni-hamurg.de 1/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 2/82 Organisatorisches Organisatorisches Zur Vorlesung: Mo, und Di, 8-1 in ErzWiss H Die Vorlesung wird aufgezeichnet! Livestream: und kurz nach der Vorlesung ei Lecture2Go Die Vorlesung ist inhaltlich zweigeteilt: Automatentheorie (is Mitte Mai) Logik (a Mitte Mai) Zum Lesestoff: Soll informal das Modell der jeweiligen Woche erklären. ca. 4 Seiten mit kleinem Selsttest am Ende Auf Seite 5 dann die mathematische Seite Auf Seite 6 Lösungen zum Selsttest Anmerkung Lesestoff und aktueller Üungszettel passen nicht. Der Lesestoff ist als Vorereitung für die nächste Woche gedacht. Der Üungszettel ehandelt den Stoff der gerade vergangenen Vorlesungen. Organisiert euch gut! ;-) Frank Heitmann heitmann@informatik.uni-hamurg.de 3/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 4/82

2 Organisatorisches Zu den Üungen: Organisatorisches In den Üungen wird der neue Aufgaenzettel verteilt (git es i.a. a Freitag schon online) In den Üungen werden die Präsenzaufgaen ehandelt: Ü-LeiterIn teilt euch zu Anfang in 3er-Gruppen ein. In diesen ca. 1 Minuten Aufgaen eareiten. Ü-LeiterIn geht rum und hilft. Nach 1 Minuten wird rotiert. Eine Person pro Gruppe wandert im Uhrzeigersinn, eine Person pro Gruppe entgegen des Uhrzeigersinns. Dies wird wiederholt. Besprechen der Präsenzaufgae im Plenum Wiederholung mit der zweiten Präsenzaufgae. Am Ende der Ü-Gruppe: Agae eurer Lösungen des Aufgaenzettels der Vorwoche. Rückgae eurer Lösungen der Vorvorwoche. Frank Heitmann heitmann@informatik.uni-hamurg.de 5/82 Die Kriterien: Üungen: 5% der Punkte insgesamt. Jeweils 2% der Punkte auf 1 der 11 Aufgaenzettel. Aktiv mitareiten. Nicht mogeln... Weiteres siehe Weseiten und Modulhanduch. Klausur: 5% der Punkte Frank Heitmann heitmann@informatik.uni-hamurg.de 6/82 Organisatorisches Organisatorisches Zur Literatur: Es git ein Skript als PDF Zum Automatenteil: uni-hamurg.de/tgi/lehre/vl/ss15/fgi1 Zwei sehr gute Bücher: Hopcroft, John E., Motwani, Rajeev und Ullman, Jeffrey D. (27) Introduction to Automata Theory, Languages, and Computation, 3ed, Pearson/Addison-Wesley (auch auf Deutsch erhltlich). Schöning, Uwe (2). Logik für Informatiker. Spektrum, Akademischer Verlag. Es wird voraussichtlich ein Tutorium geen: Freitag, Uhr, B-21 (a dem 17.4). Hier werden die in der Woche agegeenen Üungsaufgaen esprochen. Gut zur Klausurvorereitung. Frank Heitmann heitmann@informatik.uni-hamurg.de 7/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 8/82

3 Organisatorisches Organisatorisches Es wird vor den Klausuren ein Repetitorium geen. Termine stehen noch nicht fest. Vorlesung und Folien Üungsgruppe (Präsenzaufgaen und Üungsaufgaen) Skript und/oder Bücher Lesestoff Tutorium Repetiorium Bemerkung Empfehlung: 1. Lesestoff 2. Vorlesung und Folien und Skript/Buch und 3. Aufgaen, Aufgaen, Aufgaen! Frank Heitmann 9/82 Frank Heitmann 1/82 Organisatorisches Die Boxen... Bemerkung 2 Nehmt den Stift in die Hand! Notiert euch Dinge selst (und handschriftlich). Geht z.b. Folien und Skript durch und notiert euch, was die wichtigen Dinge der Woche waren. Rechnet Aufgaen (auch dazu: Stift in die Hand nehmen!), redet mit anderen, areitet zusammen und investiert Zeit. Wichtige Anmerkung Wichtige Hinweise, Anmerkungen zur Klausur,... Anmerkung Standard. Definitionen, Sätze, Beweise, normale Anmerkungen Bemerkung Hinweise, Beispiele, Neenemerkungen,... Neenemerkung Literaturhinweis für Interessierte,... Frank Heitmann heitmann@informatik.uni-hamurg.de 11/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 12/82

4 Ein (Licht-)Schalter... Ein einfacher (Licht-)Schalter kann an oder aus sein. Zwischen diesen Zuständen kann man wechseln. aus an Frank Heitmann 13/82 Frank Heitmann 14/82 Ein (Licht-)Schalter Ein (Licht-)Schalter Ein einfacher (Licht-)Schalter kann an oder aus sein. Zwischen diesen Zuständen kann man wechseln. aus an aus an endlichen Anzahl von Zuständen; davon einer als Startzustand und eine elieige Teilmenge als Endzustände hervorgehoen; Zustandsüergänge sind möglich sind; das System ist stets in genau einem Zustand. Frank Heitmann 15/82 Frank Heitmann 16/82

5 Und wozu das Ganze? a a z a z a 1 z 2 Um dieses Modell und Erweiterungen davon wird es gehen woei a und hier nur Astraktionen sind. Frank Heitmann heitmann@informatik.uni-hamurg.de 17/82 Und wozu nun das Ganze? Was kann man damit machen? Wir eginnen mit einem recht einfachen Modell (DFA). Da denkt man sich Was soll ich damit?!. Erstmal lernen! Damit gehen dann später nützliche und spannende Dinge! Mit + und = in einer Programmiersprache geht auch nicht viel, trotzdem muss man die erstmal lernen. Grundlage vieler weiterer (Automaten-)Modelle Schnelle Lösung des (Wort-)Suchprolems Entwicklung von lexikographischen Analysierern, Parsern und Compilern Modellierung von Systemen; am Modell können dann Eigenschaften üerprüft werden. Kommt ins. auch in FGI2. Automaten als grundlegende Datenstruktur (für Mengen und Relationen auf denen estimmte Operationen nötig sind) Frank Heitmann heitmann@informatik.uni-hamurg.de 18/82 Und wozu das Ganze? Und wozu das Ganze? Bedeutende Anwendungen ei der Modellierung und Verifikation von Systemen in der technischen Informatik ei Protokollen... und Erkenntnisse Proleme, die von einem Computer nicht gelöst werden können Proleme, die von einem Computer praktisch nicht gelöscht werden können Und ganz wichtig: Einüen des astrakten Denkens und des exakten Argumentierens!... sonst klappt es mit oigem nicht... und dann kann man drüer nachdenken, wie man die Grenzen doch umgeht... ;-) Und eginnen tun wir jetzt ganz grundlegend... Frank Heitmann heitmann@informatik.uni-hamurg.de 19/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 2/82

6 Mengen Mengen Definition (Mengen) Endliche Menge: M 1 = {1, 2, 3, 4} Unendliche Menge: M 2 = {1, 2, 3,...} Enthalten sein: 3 M 1, 5 M 1 Kardinalität: M 1 = 4 ist die Anzahl der Elemente in M 1. Oft werden die Elemente einer Menge durch eine sie charakterisierende Eigenschaft eschrieen: M 3 = {x N i N : x = 2 i} = {, 2, 4, 6,...} Definition (Mengen II) 1 Teilmenge: A B gdw. für jedes a A auch a B gilt {1, 4, 5} {1, 2, 3,...} {1, 4, 5} {1, 4, 5} {1, 4, 5} {1, 3, 5, 7,...} {1, 4, 5} {1, 4} 2 Mengengleichheit: A = B gdw. A B und B A gilt 3 Echte Teilmenge: A B gdw. A B aer nicht A = B Wichtige Anmerkung Bei der Mengengleichheit sind zwei Richtungen zu zeigen. Einmal A B (für jedes Element aus A zeigen, dass es auch in B ist) und einmal B A (für jedes Element aus B zeigen, dass es auch in A ist). Frank Heitmann heitmann@informatik.uni-hamurg.de 21/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 22/82 Mengen Relationen Definition (Mengen III) 1 Vereinigung: A B = {x x A oder x B} Beispiel: {1, 2, 4} {1, 2, 3} = {1, 2, 4, 1, 2, 3} = {1, 1, 2, 2, 3, 4} = {1, 2, 3, 4} 2 Schnitt: A B = {x x A und x B} Beispiel: {1, 2, 4} {1, 2, 3} = {1, 2} 3 Mengendifferenz: A \ B = {x x A und x B} Beispiel: {1, 2, 4} \ {1, 2, 3} = {4} 4 Potenzmenge: P(A) = 2 A = {B B A} Beispiel: P({1, 2}) = {, {1}, {2}, {1, 2}} 5 Kartesisches Produkt: A B = {(a, ) a A, B} Beispiel: {1, 2} {a,, c} = {(1, a), (1, ), (1, c), (2, a), (2, ), (2, c)} Definition (Kartesisches Produkt) Seien A 1, A 2,..., A n Mengen. Dann ist A 1 A 2... A n := {(x 1, x 2,..., x n ) x 1 A 1,..., x n A n } das kartesische Produkt dieser Mengen. (x 1,..., x n ) ist ein n-tupel. Eine Teilmenge R A 1... A n heißt n-stellige Relation. Beispiel Sei Z = {1, 2, 3}, A = {a,, c}, dann ist R = {(1, a, 1), (1,, 2), (2, c, 3), (3, c, 3)} eine 3-stellige Relation üer Z A Z. Frank Heitmann heitmann@informatik.uni-hamurg.de 23/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 24/82

7 Funktionen Funktionen Definition (Funktion) Eine totale Funktion f : A B weist jedem Element aus ihrem Definitionsereich A ein Element aus ihrem Bildereich B zu. Z.B. f : {, 1} {, 1} mit 1 und 1 f : N N mit x 2 x (alternativ f (x) = 2x) Anmerkung Bemerkung f : A B 1 Git es ein a A ohne Bild, d.h. ist f (a) nicht definiert, nennt man f eine partielle Funktion. 2 Jedes x A hat höchstens ein Bild. (f (x) = 5 und f (x) = 4 ist nicht gleichzeitig möglich.) 3 Zwei x 1, x 2 A können aer das gleiche Bild haen, d.h. f (x 1 ) = f (x 2 ) ist möglich. Frank Heitmann heitmann@informatik.uni-hamurg.de 25/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 26/82 Alphaete und Wörter Alphaete und Wörter Definition 1 Ein Alphaet ist eine (total geordnete) endliche Menge von unterschiedlichen Zeichen (alternativ: Buchstaen oder Symole). 2 Die Konkatenation ist die Operation zum Hintereinanderschreien von Buchstaen. So ergeen sich Worte auf die die Operation dann erweitert wird. Z.B. ist a = a und dann a c = ac. 3 Das leere Wort (Wort mit Buchstaen) wird mit λ oder ɛ ezeichnet (nie in einem Alphaet enthalten!). 4 Wir schreien w 1 = w, w 2 = w w und w k = w k 1 w (k 2) und als Spezialfall w = λ. Die Konkatenation wird auf Mengen von Wörtern erweitert: {a, aa} {a, } = {a a, a, aa a, aa } = {aa, a, aaa} {a, a, λ} {, λ} = {a, a, a,, λ} Ausserdem definieren wir für eine Menge von Worten R R 1 = R R 2 = R R R 3 = R 2 R = R R R... R n = R n 1 R und als Spezialfall R = {λ}. Frank Heitmann heitmann@informatik.uni-hamurg.de 27/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 28/82

8 Alphaete und Wörter Alphaet und Wörter - Zusammengefasst Definition Für eine Menge von Worten R definieren wir Definition R + := i 1 R i mit R 1 := R und R i+1 = R i R R := R + {λ} 1 Betrachten wir Σ für ein Alphaet Σ, so ist Σ die Menge aller endlichen Wörter (üer dem Alphaet Σ). 2 Jede (Teil-)Menge L Σ heißt formale Sprache. Formaler... Formaler kann man (Σ,, λ) als ein (freies) Monoid auffassen. Frank Heitmann heitmann@informatik.uni-hamurg.de 29/82 Die wichtigsten Dinge: Σ für eine Menge von Symolen (ein Alphaet), z.b. Σ = {a,, c} oder Σ = {, 1}. λ oder ɛ für das leere Wort. Das leere Wort ist nie in einem Alphaet Σ! Konkatenation: Von Symolen oder Worten: a = a, a cd = acd Von Wortmengen: {a, ac} {λ, c} = {a, ac, acc} R 2, R 3 oder auch Σ 2, Σ 3 und w 2, w 3 usw. für mehrfach Hinterinanderausführen von. Sonderfall: R = {λ} und auch w = λ (w ein Wort) R + für alle Worte, die sich durch elieiges Aneinanderreihen von Worten aus R ilden lassen. R wie R +, aer λ kommt noch hinzu. Frank Heitmann heitmann@informatik.uni-hamurg.de 3/82 Fragen... Fragen... {a, c} {de, fg} {ac, a} {c, λ} 1 {ac, defg} 2 {acde, acfg} 3 {acde, acfg, cade, cafg} 4 {ade, afg, cde, cfg} 1 {aca, c} 2 {acc, ac} 3 {acc, acλ, ac, aλ} 4 {acc, ac, a} Frank Heitmann heitmann@informatik.uni-hamurg.de 31/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 32/82

9 Fragen... Fragen... R = {a, } was ist R 2? R = {a, a, a, } was ist R? 1 {λ, a,, aa, a, a, } 2 {a,, aa, a, a, } 3 {aa, a, a, } 4 {{aa}, {a}, {a}, {}} 1 Menge aller endlichen Worte aus a und 2 Menge aller ungeraden Worte aus a und 3 Menge aller geraden Worte aus a und 4 Menge aller unendlichen Worte aus a und Frank Heitmann heitmann@informatik.uni-hamurg.de 33/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 34/82 Zur Nachereitung a a Zur Nachereitung Richtige Antworten sind: oder 4, aer 4 ist schöner z a z a 1 z Wie definieren wir das? Frank Heitmann heitmann@informatik.uni-hamurg.de 35/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 36/82

10 Der deterministische, endliche Automat Areitsweise des DFA (informal) Definition (DFA) Ein deterministischer, endlicher Automat (DFA) ist ein 5-Tupel A = (Z, Σ, δ,, Z end ) mit: Der endlichen Menge von Zuständen Z. Dem endlichen Alphaet Σ von Eingaesymolen. Der Üerführungsfunktion δ : Z Σ Z. Dem Startzustand Z. Der Menge der Endzustände Z end Z. Erhält ein DFA ein Eingaewort w Σ, so eginnt er im Startzustand. Beginnt w mit dem Symol x Σ, so wird der Nachfolgezustand nun durch δ(, x) estimmt. Dies wird dann in dem nun aktuellen Zustand und mit dem Restwort fortgeführt. Das Wort w wird akzeptiert, wenn w is zum Ende gelesen werden kann und der Automat dann in einem Endzustand ist. Frank Heitmann heitmann@informatik.uni-hamurg.de 37/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 38/82 a a a a Frank Heitmann heitmann@informatik.uni-hamurg.de 39/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 4/82

11 a a a a Frank Heitmann heitmann@informatik.uni-hamurg.de 41/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 42/82 a a a a Frank Heitmann heitmann@informatik.uni-hamurg.de 43/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 44/82

12 a a Frank Heitmann heitmann@informatik.uni-hamurg.de 45/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 46/82 a a Frank Heitmann heitmann@informatik.uni-hamurg.de 47/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 48/82

13 a a a a Frank Heitmann heitmann@informatik.uni-hamurg.de 49/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 5/82 a a a a Frank Heitmann heitmann@informatik.uni-hamurg.de 51/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 52/82

14 Zusammenfassung Üerführungsfunktion und Rechnung Das Wort aa wird akzeptiert! (Zu Ende gelesen und im Endzustand!) Das Wort a wird nicht akzeptiert! (Zu Ende gelesen, aer nicht im Endzustand!) Das Wort aa wird nicht akzeptiert! (Kann nicht zu Ende gelesen werden!) Das Wort aa wird nicht akzeptiert! (Kann nicht zu Ende gelesen werden! Wir sind zwar in einem Endzustand, aer wir können das Wort nicht zu Ende lesen!) Definition (Erweiterte Üerführungsfunktion) Sei A = (Z, Σ, δ,, Z end ) ein DFA. Die erweiterte Üerführungsfunktion ˆδ : Z Σ Z wird für alle z Z, x Σ und w Σ rekursiv definiert durch ˆδ(z, λ) := z ˆδ(z, xw) := ˆδ(δ(z, x), w) 1 z 1 ˆδ(, 1) = ˆδ(, 1) = ˆδ(, 1) = z 1 Frank Heitmann heitmann@informatik.uni-hamurg.de 53/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 54/82 Üerführungsfunktion und Rechnung Definition (Konfiguration und Rechnung) 1 Eine Konfiguration eines DFA A ist ein Tupel (z, w) Z Σ mit der Bedeutung, dass A im Zustand z ist und noch das Wort w zu lesen ist. 2 Ein Konfigurationsüergang ist dann (z, w) (z, v) gdw. w = xv, x Σ und δ(z, x) = z ist. 3 Eine Rechnung auf dem Wort w Σ ist eine Folge von Konfigurationsüergängen, die in (, w) eginnt. 4 Endet die Rechnung in (z, λ) und ist z Z end, so ist dies eine Erfolgsrechnung und w wird akzeptiert. a a (, aa) Frank Heitmann heitmann@informatik.uni-hamurg.de 55/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 56/82

15 a a a a (, aa) (z 1, a) (, aa) (z 1, a) (z 1, a) Frank Heitmann heitmann@informatik.uni-hamurg.de 57/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 58/82 a a a a (, aa) (z 1, a) (z 1, a) (z 1, a) (, aa) (z 1, a) (z 1, a) (z 1, a) (z 2, λ) Frank Heitmann heitmann@informatik.uni-hamurg.de 59/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 6/82

16 Hinweis Akzeptierte Sprache Definition (Akzeptierte Sprache) Die von einem DFA A akzeptierte Sprache ist die Menge Hinweis Der Begriff der Rechnung wird oft nicht für DFAs eingeführt (sondern erst später). Auch im Skript ist er nicht zu finden! Druckt euch die eine Folie am esten aus und klet sie euch ins Skript ;-) L(A) := {w Σ ˆδ(, w) Z end } = {w Σ (, w) (z e, λ), z e Z end } Diese Menge wird auch als reguläre Menge ezeichnet. Die Familie aller regulären Mengen wird mit REG ezeichnet. Hinweis Ist A ein DFA, so ist also L(A) eine Menge von Worten (die von A akzeptierte Sprache) und außerdem ist L(A) REG (REG enthält also Mengen!). Frank Heitmann heitmann@informatik.uni-hamurg.de 61/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 62/82 Noch zwei Begriffe Zusammenfassung Definition Ein DFA A = (Z, Σ, δ,, Z end ) heißt 1 vollständig, wenn zu jedem (z, x) Z Σ ein z existiert mit δ(z, x) = z. 2 initial zusammenhängend, wenn es zu jedem z Z ein Wort w git mit ˆδ(, w) = z. Hinweis vollständig = jede Eingae kann gelesen werden initial zusammenhängend = jeder Zustand erreichar Begriffe isher: DFA Zustände, Startzustand, Endzustände Üerführungsfunktion erweitere Üerführungsfunktion vollständig, initial zusammenhängend Konfiguration, Konfigurationsüergang Rechnung, Erfolgsrechnung akzeptierte Sprache reguläre Menge, REG Frank Heitmann heitmann@informatik.uni-hamurg.de 63/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 64/82

17 Fragen... Fragen... z 1 1 z 2 z 3 Welche Worte akzeptiert dieser Automat?,1 z 1 z 2 1 Nur 2 und 1 3 Nur 1 4, 1 und 1 5 Gar keine Worte (zwei Endzustände sind nicht möglich!) Ist dies ein DFA? 1 Ja! 2 Nein! 3 Weiß ich nicht! 4 Sag ich nicht! ;) Frank Heitmann heitmann@informatik.uni-hamurg.de 65/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 66/82 Fragen... Fragen... 1 z 2 Welche Sprache akzeptiert dieser DFA A? 1 L(A) = {1} 2 L(A) = {} {1} 3 L(A) = {} {1} {} 4 L(A) = {} {1} {, 1} 1 1 Welche Sprache akzeptiert dieser DFA A? 1 L(A) = {, 1} 2 L(A) = {} {1} {1} 3 L(A) = {, 1} {1} 4 L(A) = ({} {1} {1} {}) z 2 Frank Heitmann heitmann@informatik.uni-hamurg.de 67/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 68/82

18 Akzeptieren von Sprachen Zur Nachereitung Zur Nachereitung Richtige Antworten sind: z 1 Welche Sprache akzeptiert dieser DFA? Frank Heitmann heitmann@informatik.uni-hamurg.de 69/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 7/82 Akzeptieren von Sprachen Akzeptieren von Sprachen 1 z 1 1 z 1 Behauptung Wichtige Anmerkung L(A) = {, 1} {1} {, 1} =: M Dies ist zunächst eine Behauptung! Die Richtigkeit ist zu zeigen. Ülicherweise indem man L(A) M und M L(A) zeigt. Beweis 1. L(A) {, 1} {1} {, 1} = M. Sei w L(A), dann wird w von A akzeptiert. D der einzige Endzustand ist, muss w auf 1 enden (einzige Kante in z 1 hinein). Vorher war der Automat in hier können nur en gelesen werden. D.h. w hat die Form w = u1 mit u {}. Damit gilt auch w M. Frank Heitmann heitmann@informatik.uni-hamurg.de 71/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 72/82

19 Akzeptieren von Sprachen Akzeptieren von Sprachen 1 z 1 1 z 1 Beweis 2. M = {, 1} {1} {, 1} L(A). Sei w M, dann lässt sich w zerlegen in w = x 1 x 2 x 3 mit x 1, x 3 {, 1} und x 2 = 1. Da in w eine 1 auftritt, muss es auch eine Stelle geen, an der die 1 das erste Mal auftritt! D.h. w lässt sich sogar zerlegen in w = x 1 x 2 x 3 mit x 1 {}, x 2 = 1 und x 3 {, 1}. Legen wir w nun A als Eingae vor, so gilt zunächst (, x 1 1 x 3 ) (, 1 x 3 ) und dann (, 1 x 3 ) (z 1, x 3 ).... UPS! Da es in z 1 keine Kante git, lockieren wir hier! Das Wort wird gar nicht akzeptiert! Frank Heitmann heitmann@informatik.uni-hamurg.de 73/82 Gegeneispiel und von vorne... L(A) = {, 1} {1} {, 1} =: M Aus dem Beweis von een ergit sich auch gleich ein Gegeneispiel: 1 kann z.b. von dem Automaten nicht akzeptiert werden, ist aer in M. Ein neuer Versuch... L(A) = {} {1} =: M Frank Heitmann heitmann@informatik.uni-hamurg.de 74/82 Akzeptieren von Sprachen Akzeptieren von Sprachen Anmerkung Beweis 1 z 1 1. L(A) {} {1} = M. Genau wie een. 2. M = {} {1} L(A). Sei w M, dann lässt sich w zerlegen in w = u1 mit u {}. Es gilt nun (, u1) (, 1) (z 1, λ). D ein Endzustand ist, gilt w L(A), was zu zeigen war. Frank Heitmann heitmann@informatik.uni-hamurg.de 75/82 Wenn ihr auf eine Menge M kommt, von der ihr meint, dass L(A) = M gilt, dann ist das zunächst eine Behauptung! Diese ist zu eweisen/zu egründen! Hierzu genügt es nicht nur eine der Teilmengeneziehungen zu zeigen! L(A) M. Zeigt nur, dass jedes Wort, das der Automat akzeptiert auch in M ist! Aer in M kann mehr sein! (Würde das genügen, kann man M = Σ wählen und ist immer gleich fertig!) M L(A). Zeigt nur, dass jedes Wort in M vom Automaten akzeptiert wird, aer der Automat kann evtl. mehr! (Ins. vielleicht auch Sachen die er nicht können soll! Und würde dies genügen, kann man stets mit M = alles zeigen! Also: Sauer die Behauptung aufstellen und sauer die zwei Richtungen trennen und zeigen! Frank Heitmann heitmann@informatik.uni-hamurg.de 76/82

20 Nichtdeterminismus Wiederholung Nichtdeterminismus Wiederholung Ein NFA... Ein NFA... Beim DFA git es zu einem z Z und einem x Σ einen Nachfolgezustand δ(z, x). Der Nachfolgezustand ist also determiniert. Dies kann man aufweichen... a a z 1 z 2 c a a z 1 z 2 c Wie würdet ihr die Üerführungsfunktion definieren? 1 δ : Z Σ Z 2 δ : Z Σ Z 3 δ : Z Σ 2 Z 4 δ : 2 Z Σ Z 5 ganz anders... Frank Heitmann heitmann@informatik.uni-hamurg.de 77/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 78/82 Nichtdeterminismus Wiederholung Nichtdeterminismus Wiederholung Zusammenfassung - Begriffe Zusammenfassung - Begriffe Begriffe isher (endliche Automaten): Begriffe isher (mathematische ): Mengen, (echte) Teilmenge, Mengengleichheit Vereinigung, Schnitt, Komplement, Potenzmenge kartesisches Produkt, Relation Funktion Begriffe isher (Buchstaen, Worte): Alphaet, Konkatenation, Wort, leeres Wort R +, R, Σ +, Σ, R, R 1, w, w 1,... Frank Heitmann heitmann@informatik.uni-hamurg.de 79/82 DFA Zustände, Startzustand, Endzustände Üerführungsfunktion erweitere Üerführungsfunktion vollständig, initial zusammenhängend Konfiguration, Konfigurationsüergang Rechnung, Erfolgsrechnung akzeptierte Sprache reguläre Menge, REG (Nichtdeterminismus) Wichtige Anmerkung Alle diese Begriffe sind wichtig (auf dieser Grundlage auen wir auf). Daher die fleissig lernen! Frank Heitmann heitmann@informatik.uni-hamurg.de 8/82

21 Nichtdeterminismus Wiederholung Nichtdeterminismus Wiederholung Zusammenfassung - Technik Auslick Wichtiges Vorgehen Ermittelt man für einen DFA A seine akzeptierte Sprache, so ist L(A) = M zunächst eine Behauptung, die zu zeigen ist! Wichtiges Vorgehen Hierzu sind dann zwei Richtungen zu zeigen: L(A) M. Jedes Wort, dass der Automat akzeptiert ist tatsächlich in M. Bei der Argumentation geht man von einem Wort w aus, das der Automat akzeptiert (w L(A)) und zeigt, dass dann auch w M gilt. M L(A). Jedes Wort aus M wird auch von dem Automaten akzeptiert. Man geht von einem (elieigen!) Wort aus M aus ( Sei w M, dann... ) und zeigt, dass dieses auch von A akzeptiert wird, also in L(A) ist. Auslick und Ende! :) Frank Heitmann heitmann@informatik.uni-hamurg.de 81/82 Frank Heitmann heitmann@informatik.uni-hamurg.de 82/82

Endliche Automaten. aus. Abbildung 1: Modell eines einfachen Lichtschalters

Endliche Automaten. aus. Abbildung 1: Modell eines einfachen Lichtschalters Endliche Automaten In der ersten Vorlesungswoche wollen wir uns mit endlichen Automaten eschäftigen. Um uns diesen zu nähern, etrachten wir zunächst einen einfachen Lichtschalter. Dieser kann an oder aus

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

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

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

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

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

(algebraische) Strukturen Abschnitt Eigenschaften von zweistelligen Operationen. Beispiel: Boolesche Algebren. Strukturtypen: Beispiele

(algebraische) Strukturen Abschnitt Eigenschaften von zweistelligen Operationen. Beispiel: Boolesche Algebren. Strukturtypen: Beispiele Kap 1: Grundegriffe Funktionen 1.1.3 Eigenschaften von zweistelligen Operationen für 2-stellige Operation : A A A a, a (infixe Notation) assoziativ, falls für alle a,, c A: (a ) c = a ( c). kommutativ,

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

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man

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

Kontextfreie Grammatiken

Kontextfreie Grammatiken Kontextfreie Grammatiken Bisher haben wir verschiedene Automatenmodelle kennengelernt. Diesen Automaten können Wörter vorgelegt werden, die von den Automaten gelesen und dann akzeptiert oder abgelehnt

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

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

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

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

Formale Methoden 1. Gerhard Jäger 23. Januar Uni Bielefeld, WS 2007/2008 1/18 1/18 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 23. Januar 2008 2/18 Das Pumping-Lemma Sein L eine unendliche reguläre Sprache über ein endliches Alphabet

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

Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion

Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion Saskia Klaus 07.10.016 1 Motivation In den ersten beiden Vorträgen des Vorkurses haben wir gesehen, wie man aus schon bekannten Wahrheiten

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

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

Deterministischer Kellerautomat (DPDA)

Deterministischer Kellerautomat (DPDA) Deterministische Kellerautomaten Deterministischer Kellerautomat (DPDA) Definition Ein Septupel M = (Σ,Γ, Z,δ, z 0,#, F) heißt deterministischer Kellerautomat (kurz DPDA), falls gilt: 1 M = (Σ,Γ, Z,δ,

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

Ausgewählte unentscheidbare Sprachen

Ausgewählte unentscheidbare Sprachen Proseminar Theoretische Informatik 15.12.15 Ausgewählte unentscheidbare Sprachen Marian Sigler, Jakob Köhler Wolfgang Mulzer 1 Entscheidbarkeit und Semi-Entscheidbarkeit Definition 1: L ist entscheidbar

Mehr

Musterlösung zur Nachklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Musterlösung zur Nachklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14 Institut für Theoretische Informatik Prof. Dr. Jörn Müller-Quade Musterlösung zur Nachklausur Theoretische Grundlagen der Informatik Wintersemester 203/4 Vorname Nachname Matrikelnummer Hinweise Für die

Mehr

Diskrete Strukturen Kapitel 2: Grundlagen (Relationen)

Diskrete Strukturen Kapitel 2: Grundlagen (Relationen) WS 2016/17 Diskrete Strukturen Kapitel 2: Grundlagen (Relationen) 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_16

Mehr

Überführung regulärer Ausdrücke in endliche Automaten

Überführung regulärer Ausdrücke in endliche Automaten Der Algorithmus von Thompson Karin Haenelt 9.5.2010 1 Inhalt Quelle Prinzip des Algorithmus Algorithmus Konstruktion des Automaten Basisausdrücke Vereinigung, Konkatenation, Hülle Beispiel Implementierung

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, Spiele, und Logik

Automaten, Spiele, und Logik Automten, Spiele, und Logik Wohe 7 19. Mi 2014 Inhlt der heutigen Vorlesung Alternierende Automten Definition Verindung zu regulären Sprhen Komplementtion Engel und Teufel Ws ist eine nihtdeterministishe

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

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

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie Gliederung der Vorlesung. Grundbegriffe. Formale Sprachen/Automatentheorie.. Grammatiken.2..3. Kontext-freie Sprachen 2. Berechnungstheorie 2.. Berechenbarkeitsmodelle 2.2. Die Churchsche These 2.3. Unentscheidbarkeit

Mehr

Was bisher geschah: Formale Sprachen

Was bisher geschah: Formale Sprachen Was isher geschah: Formale Sprachen Alphaet, Wort, Sprache Operationen und Relationen auf Wörtern und Sprachen reguläre Ausdrücke: Syntax, Semantik, Äquivalenz Wortersetzungssysteme Wortersetzungsregeln

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

Formale Sprachen und Automaten

Formale Sprachen und Automaten Avant Propos Formale Sprachen und Automaten Sie [die Theorie der formalen Sprachen] ist ein Musterbeispiel einer informatischen Theorie, weil es ihr gelingt, einen großen Bestand an Einsichten und Zusammenhängen

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

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie Theorie der Informatik 17. März 2014 6. Formale Sprachen und Grammatiken Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 6.1 Einführung

Mehr

Abschlusseigenschaften. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Abschlusseigenschaften

Abschlusseigenschaften. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Abschlusseigenschaften Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Abgeschlossenheit (Definition) Gegeben sei eine Menge M und ein n-ärer

Mehr

Einführung in die Informatik 2

Einführung in die Informatik 2 Einführung in die Informatik 2 Mathematische Grundbegriffe Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr,

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

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

Automaten und Formale Sprachen

Automaten und Formale Sprachen Automaten und Formale Sprachen Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2011/12 WS 11/12 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien

Mehr

1 Mengen. 1.1 Definition

1 Mengen. 1.1 Definition 1 Mengen 1.1 Definition Eine Menge M ist nach dem Begründer der Mengenlehre Georg Cantor eine Zusammenfassung von wohlunterschiedenen(verschiedenen) Elementen. Eine Menge lässt sich durch verschiedene

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 1. Automaten und Sprachen 1.1 Endlicher Automat Einen endlichen Automaten stellen wir uns als Black Box vor, die sich aufgrund einer Folge von

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

Deterministische endliche Automaten

Deterministische endliche Automaten Endliche Automten Idee: endlicher Automt A ht endlich viele innere Zustände liest Einge wєσ* zeichenweise von links nch rechts git zum Schluß eine J/Nein Antwort A Lesekopf w 1 w 2 w n gelesenes Symol

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

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

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

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Frank Heitmann heitmann@informatik.uni-hamburg.de 13. Mai 2014 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/17 Überblick Wir hatten

Mehr

Algorithmen und Datenstrukturen Kapitel 6 Komplexitätstheorie

Algorithmen und Datenstrukturen Kapitel 6 Komplexitätstheorie Algorithmen und Datenstrukturen Kapitel 6 Komplexitätstheorie Einführung in P und NP Frank Heitmann heitmann@informatik.uni-hamburg.de 11. November 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik für die Studiengänge Ingenieur-Informatik berufsbegleitendes Studium Lehramt Informatik (Sekundar- und Berufsschule) http://theo.cs.uni-magdeburg.de/lehre04s/ Lehrbeauftragter:

Mehr

Lösung zur Klausur. Grundlagen der Theoretischen Informatik. 1. Zeigen Sie, dass die folgende Sprache regulär ist: w {a, b} w a w b 0 (mod 3) }.

Lösung zur Klausur. Grundlagen der Theoretischen Informatik. 1. Zeigen Sie, dass die folgende Sprache regulär ist: w {a, b} w a w b 0 (mod 3) }. Lösung zur Klusur Grundlgen der Theoretischen Informtik 1. Zeigen Sie, dss die folgende Sprche regulär ist: { w {, } w w 0 (mod 3) }. Lösung: Wir nennen die Sprche L. Eine Sprche ist genu dnn regulär,

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik Wintersemester 2016/2017 2V, Mittwoch, 12:00-13:30 Uhr, F303 2Ü, Dienstag, 12:00-13:30 Uhr, BE08 2Ü, Dienstag, 15:00-16:30 Uhr, B212 2Ü, Mittwoch, 8:30-10:00 Uhr, B312 Fachprüfung:

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

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

Reguläre Ausdrücke. Karin Haenelt

Reguläre Ausdrücke. Karin Haenelt Reguläre Ausdrücke Karin Haenelt 25.04.2010 1 Inhalt Einführung Definitionen Kleene-Theorem Schreibweisen regulärer Ausdrücke Eigenschaften regulärer Sprachen 2 Was sind reguläre Ausdrücke? Reguläre Ausdrücke

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

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 2

Theoretische Informatik 2 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder

Mehr

Mitschrift Repetitorium Theoretische Informatik und Logik

Mitschrift Repetitorium Theoretische Informatik und Logik Mitschrift Repetitorium Theoretische Informtik und Logik Teil 1: Formle Sprchen, 15.01.2010, 1. Edit Allgemeine Hinweise für die Prüfung Ds Pumping-Lemm für kontextfreie Sprchen kommt nicht (sehr wohl

Mehr

Integralrechnung - Einführung Seite 1 von 6. Vergleicht man die Ergebnisse miteinander, so kann man folgende Entdeckung machen:

Integralrechnung - Einführung Seite 1 von 6. Vergleicht man die Ergebnisse miteinander, so kann man folgende Entdeckung machen: Integralrechnung - Einführung Seite von 6 Berechnung von Flächeninhalten zwischen dem Graphen einer Funktion und der x-achse: Beispiel : f(x)= Fläche zwischen Graph und x-achse üer dem Intervall [;]: Bei

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 17.10.2005 1. Vorlesung 1 Kapitel I Motivation Motivation Komplexitätstheorie 01-2 Automaten und Formale

Mehr

vollständig (Vervollständigung) deterministisch, DFA (Potenzmengenkonstruktion) Minimalautomat: minimaler vollständiger DFA

vollständig (Vervollständigung) deterministisch, DFA (Potenzmengenkonstruktion) Minimalautomat: minimaler vollständiger DFA Ws isher geschh NFA A = (X, Q, δ, I, F ) vollständig (Vervollständigung) deterministisch, DFA (Potenzmengenkonstruktion) Minimlutomt: minimler vollständiger DFA Für jede Sprche L X sind die folgenden Aussgen

Mehr

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Einführung in Berechenbarkeit, Komplexität und formale Sprachen Johannes Blömer Skript zur Vorlesung Einführung in Berechenbarkeit, Komplexität und formale Sprachen Universität Paderborn Wintersemester 2011/12 Inhaltsverzeichnis 1 Einleitung 2 1.1 Ziele der Vorlesung...................................

Mehr

Empfehlenswerte Referenzen

Empfehlenswerte Referenzen Wenn Google etwas nicht finden kann, fragen sie Jack Bauer. ("Fakten über Jack Bauer") Inhalt Empfehlenswerte Referenzen...1 0 Wozu reguläre Ausdrücke?...1 1 Die Elemente regulärer Ausdrücke...2 2 Ein

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012. Sprachen. Grammatiken (Einführung)

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012. Sprachen. Grammatiken (Einführung) Wörter, Grmmtiken und die Chomsky-Hierrchie Sprchen und Grmmtiken Wörter Automten und Formle Sprchen lis Theoretische Informtik Sommersemester 2012 Dr. Snder Bruggink Üungsleitung: Jn Stückrth Alphet Ein

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

Klausur TheGI 2 Automaten und Komplexität (Niedermeier/Hartung/Nichterlein, Sommersemester 2013)

Klausur TheGI 2 Automaten und Komplexität (Niedermeier/Hartung/Nichterlein, Sommersemester 2013) Berlin, 17.07.2013 Nme:... Mtr.-Nr.:... Klusur TheGI 2 Automten und Komplexität (Niedermeier/Hrtung/Nichterlein, Sommersemester 2013) 1 2 3 4 5 6 7 8 Σ Bereitungszeit: mx. Punktezhl: 60 min. 60 Punkte

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

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

Formale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5.

Formale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5. Formale Sprachen Spezialgebiet für Komplexe Systeme Yimin Ge 5ahdvn Inhaltsverzeichnis 1 Grundlagen 1 2 Formale Grammatien 4 Endliche Automaten 5 4 Reguläre Sprachen 9 5 Anwendungen bei Abzählproblemen

Mehr

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

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

FORMALE SYSTEME. Sprachen beschreiben. Wiederholung. Wie kann man Sprachen beschreiben? 2. Vorlesung: Grammatiken und die Chomsky-Hierarchie

FORMALE SYSTEME. Sprachen beschreiben. Wiederholung. Wie kann man Sprachen beschreiben? 2. Vorlesung: Grammatiken und die Chomsky-Hierarchie Wiederholung FORMALE SYSTEME 2. Vorlesung: Grammatiken und die Chomsky-Hierarchie Markus Krötzsch Formale Sprachen sind in Praxis und Theorie sehr wichtig Ein Alphabet ist eine nichtleere, endliche Menge

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

Reduktionen. Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie. Exkurs: Reduktionen allgemein. Reduktionen: Erläuterungen

Reduktionen. Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie. Exkurs: Reduktionen allgemein. Reduktionen: Erläuterungen en Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie P, und C Definition () Seien L 1, L 2 {0, 1} zwei Sprachen. Wir sagen, dass L 1 auf L 2 in polynomialer Zeit reduziert wird, wenn eine

Mehr

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Theoretische Informatik: Berechenbarkeit und Formale Sprachen Prof. Dr. F. Otto 26.09.2011 Fachbereich Elektrotechnik/Informatik Universität Kassel Klausur zur Vorlesung Theoretische Informatik: Berechenbarkeit und Formale Sprachen SS 2011 Name:................................

Mehr

Operationen auf endlichen Automaten und Transduktoren

Operationen auf endlichen Automaten und Transduktoren Operationen auf endlichen utomaten und Transduktoren en, lgorithmen, Erläuterungen und e - eine Übersicht Karin Haenelt, 5.4.4 Vorbemerkung... Notationskonventionen... 3 Übersicht der Operationen...3 4

Mehr

Wir suchen Antworten auf die folgenden Fragen: Was ist Berechenbarkeit? Wie kann man das intuitiv Berechenbare formal fassen?

Wir suchen Antworten auf die folgenden Fragen: Was ist Berechenbarkeit? Wie kann man das intuitiv Berechenbare formal fassen? Einige Fragen Ziel: Wir suchen Antworten auf die folgenden Fragen: Wie kann man das intuitiv Berechenbare formal fassen? Was ist ein Algorithmus? Welche Indizien hat man dafür, dass ein formaler Algorithmenbegriff

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

Kapitel 1. Grundlagen Mengen

Kapitel 1. Grundlagen Mengen Kapitel 1. Grundlagen 1.1. Mengen Georg Cantor 1895 Eine Menge ist die Zusammenfassung bestimmter, wohlunterschiedener Objekte unserer Anschauung oder unseres Denkens, wobei von jedem dieser Objekte eindeutig

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Sanders: TGI October 20, 2015 1 Theoretische Grundlagen der Informatik Peter Sanders Übungen: Lorenz Hübschle-Schneider Tobias Maier Institut für theoretische Informatik Sanders: TGI October 20, 2015 2

Mehr

Automaten und Formale Sprachen Endliche Automaten und Reguläre sprachen

Automaten und Formale Sprachen Endliche Automaten und Reguläre sprachen Automaten und Formale Sprachen Endliche Automaten und Reguläre sprachen Ralf Möller Hamburg Univ. of Technology Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik, Vieweg Verlag

Mehr

Formale Grundlagen 2008W. Vorlesung im 2008S Institut für Algebra Johannes Kepler Universität Linz

Formale Grundlagen 2008W. Vorlesung im 2008S  Institut für Algebra Johannes Kepler Universität Linz Formale Grundlagen Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Inhalt Definition Sei A eine Menge und ɛ A A A eine zweistellige

Mehr

Automaten, Spiele, und Logik

Automaten, Spiele, und Logik Automaten, Spiele, und Logik Woche 2 25. April 2014 Inhalt der heutigen Vorlesung 1. Reguläre Ausdrücke 2. der Satz von Kleene 3. Brzozowski Methode 4. grep und perl Reguläre Ausdrücke Rekursive Definition,

Mehr

Lineare Algebra I. - 1.Vorlesung - Prof. Dr. Daniel Roggenkamp & Falko Gauß. Monday 12 September 16

Lineare Algebra I. - 1.Vorlesung - Prof. Dr. Daniel Roggenkamp & Falko Gauß. Monday 12 September 16 Lineare Algebra I - 1.Vorlesung - Prof. Dr. Daniel Roggenkamp & Falko Gauß 1. Mengen und Abbildungen: Mengen gehören zu den Grundlegendsten Objekten in der Mathematik Kurze Einführung in die (naive) Mengelehre

Mehr

Kapitel 1. Grundlagen

Kapitel 1. Grundlagen Kapitel 1. Grundlagen 1.1. Mengen Georg Cantor 1895 Eine Menge ist die Zusammenfassung bestimmter, wohlunterschiedener Objekte unserer Anschauung oder unseres Denkens, wobei von jedem dieser Objekte eindeutig

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

1.1 Grundlagen: Reguläre Ausdrücke

1.1 Grundlagen: Reguläre Ausdrücke 11 Grundlgen: Reguläre Ausdrücke Progrmmtext enutzt ein endliches Alphet Σ von Einge-Zeichen, zb ASCII :-) Die Menge der Textschnitte einer Token-Klsse ist i regulär Reguläre Sprchen knn mn mithile regulärer

Mehr

Einführung in die Computerlinguistik und Sprachtechnologie

Einführung in die Computerlinguistik und Sprachtechnologie Einführung in die Computerlinguistik und Sprachtechnologie Vorlesung im WiSe 2016/17 (B-GSW-12) Prof. Dr. Udo Hahn Lehrstuhl für Computerlinguistik Institut für Germanistische Sprachwissenschaft Friedrich-Schiller-Universität

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

Elementare Mengenlehre

Elementare Mengenlehre Vorkurs Mathematik, PD Dr. K. Halupczok WWU Münster Fachbereich Mathematik und Informatik 5.9.2013 Ÿ2 Elementare Mengenlehre Der grundlegendste Begri, mit dem Objekte und Strukturen der Mathematik (Zahlen,

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

Grundkurs Semantik. Sitzung 3: Mengenlehre. Andrew Murphy

Grundkurs Semantik. Sitzung 3: Mengenlehre. Andrew Murphy Grundkurs Semantik Sitzung 3: Mengenlehre Andrew Murphy andrew.murphy@uni-leizpig.de Grundkurs Semantik HU Berlin, Sommersemester 2015 http://www.uni-leipzig.de/ murphy/semantik15 15. Mai 2015 Basiert

Mehr

Grundlagen der Mathematik

Grundlagen der Mathematik Grundlagen der Mathematik Übungsaufgaben zu Kapitel 1 Einführung 1.1.1 Für reelle Zahlen a und b gilt (a+b) (a-b) = a 2 -b 2. Was ist die Voraussetzung? Wie lautet die Behauptung? Beweisen Sie die Behauptung.

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

Informatik I. Lutz Donnerhacke lutz@iks-jena.de. PGP:db089309 1c1c 6311 ef09 d819 e029 65be bfb6 c9cb

Informatik I. Lutz Donnerhacke lutz@iks-jena.de. PGP:db089309 1c1c 6311 ef09 d819 e029 65be bfb6 c9cb Informatik I Lutz Donnerhacke lutz@iks-jena.de PGP:db089309 1c1c 6311 ef09 d819 e029 65be bfb6 c9cb 1 Semesterübersicht Grundbegriffe der theoretischen Informatik Übersicht über Funktionen von Betriebsystemen

Mehr

Mengen. Eigenschaften. Spezielle Mengen (1) Prominente Mengen. ! Mengenzugehörigkeit

Mengen. Eigenschaften. Spezielle Mengen (1) Prominente Mengen. ! Mengenzugehörigkeit Mengen! Definition (Intuitive Mengenlehre) Eine Menge ist die Zusammenfassung von Elementen unserer Anschauung zu einem wohldefinierten Ganzen. (Georg Cantor)! Notation 1. Aufzählung aller Elemente: {

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

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK 1. ALPHABETE, WÖRTER, SPRACHEN. Prof. Dr. Klaus Ambos-Spies. Sommersemester 2011

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK 1. ALPHABETE, WÖRTER, SPRACHEN. Prof. Dr. Klaus Ambos-Spies. Sommersemester 2011 EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2011 1. ALPHABETE, WÖRTER, SPRACHEN Theoretische Informatik (SoSe 2011) 1. Alphabete, Wörter, Sprachen 1 / 25 Vorbemerkung:

Mehr