Der deterministische, endliche Automat. Formale Grundlagen der Informatik 1 Kapitel 3 Mehr zu regulären Sprachen
|
|
- Christin Egger
- vor 7 Jahren
- Abrufe
Transkript
1 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, endlicher Automat (DFA) ist ein 5-Tupel A = (Z, Σ, δ, z 0, Z end ) mit: Der endlichen Menge von Zuständen Z. Dem endlichen Alphaet Σ von Eingaesymolen. Der Üerführungsfunktion δ : Z Σ Z. Dem Startzustand z 0 Z. Der Menge der Endzustände Z end Z. Frank Heitmann heitmann@informatik.uni-hamurg.de 1/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 2/57 Der nichtdeterministische, endliche Automat Der nichtdeterministische, endliche Automat Definition (NFA) Ein nichtdeterministischer, endlicher Automat (NFA) ist ein 5-Tupel A = (Z, Σ, δ, Z start, Z end ) mit: Der endlichen Menge von Zuständen Z. Dem endlichen Alphaet Σ von Eingaesymolen. Der Üerführungsfunktion δ : Z Σ 2 Z. Der Menge der Startzustände Z start Z. Der Menge der Endzustände Z end Z. Definition (NFA - Alternative) Ein nichtdeterministischer, endlicher Automat (NFA) ist ein 5-Tupel A = (Z, Σ, K, Z start, Z end ) mit: Der endlichen Menge von Zuständen Z. Dem endlichen Alphaet Σ von Eingaesymolen. Der Zustandsüergangsrelation K Z Σ Z Der Menge der Startzustände Z start Z. Der Menge der Endzustände Z end Z. Frank Heitmann heitmann@informatik.uni-hamurg.de 3/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 4/57
2 Der NFA - Ein Beispiel DFA = NFA 0,1 1 z 0 z 1 Alle möglichen Rechnungen auf dem Wort 011: (z 0, 011) (z 0, 11) (z 1, 1) lockiert (z 0, 011) (z 0, 11) (z 0, 1) (z 0, λ) alehnen (z 0, 011) (z 0, 11) (z 0, 1) (z 1, λ) akzeptieren! Da es (mindestens) eine akzeptierende Rechnung git, akzeptiert der Automat die Eingae! NFAs und DFAs sind äquivalent, d.h. zu jedem DFA kann ein NFA konstruiert werden, der die gleiche Sprache akzeptiert und andersherum eenso. DFA NFA Jeder DFA kann auch als spezieller NFA gesehen werden, indem man δ N (z, x) = {δ D (z, x)} und Z start = {z 0 } setzt (δ N ist die Üerführungsfunktion des NFA, δ D die des DFA). NFA DFA Andersherum geht es mit der Potenzautomatenkonstruktion. Frank Heitmann heitmann@informatik.uni-hamurg.de 5/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 6/57 Der Potenzautomat Der Potenzautomat - Ein Beispiel Zu jeder von einem NFA A akzeptierte Menge L kann ein DFA B konstruiert werden mit L(B) = L. a, a a, z 0 z 1 z2 Die Konstruktion Sei A = (Z, Σ, δ, Z start, Z end ) der NFA. Wir definieren B = (Z, Σ, δ, z 0, Z end ) mit 1 Z := 2 Z 2 Σ := Σ 3 δ (M, x) := z M δ(z, x) oder alternativ δ (M, x) := z M {z Z (z, x, z ) K 4 z 0 := Z start 5 Z end := {M 2Z M Z end } {z 0 } a {z 0, z 1 } Wohin nun von {z 0, z 1 } mit a und? Verfahren: Man geht alle Zustände der Menge durch (hier z 0 und z 1 ), guckt für jeden wohin man im NFA (!) mit dem jeweiligen Symol (z.b. a) kommt und tut alle daei herauskommende Zustände in eine Menge. Dies ist der Nachfolgezustand im DFA. Frank Heitmann heitmann@informatik.uni-hamurg.de 7/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 8/57
3 Der Potenzautomat - Ein Beispiel Der Potenzautomat - Ein Beispiel a, a, a a, z 0 z 1 z2 a a, z 0 z 1 z2 Es ist δ(z 0, a) = {z 0, z 1 } und δ(z 1, a) = z 2 also insgesamt δ ({z 0, z 1 }, a) = {z 0, z 1, z 2 } und ähnlich für : {z 0 } a {z 0, z 1 } {z 0, z 2 } {z 0, z 1, z 2 } a Und fertig! {z 0 } {z 0, z 2 } a a {z 0, z 1 } a {z 0, z 1, z 2 } a Frank Heitmann heitmann@informatik.uni-hamurg.de 9/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 10/57 Zusammenfassung Wichtige Anmerkung Jeder DFA akzeptiert eine Sprache. Man kann auch sagen, dass er eine (kompakte) Beschreiung dieser Sprache ist zw. jener Wörter, die in der Sprache enthalten sind. Eine Menge/Sprache ist gerade dann regulär, wenn es einen DFA git, der sie akzeptiert. Regulär zu sein ist also gerade üer die Automaten definiert! Die Familie der regulären Sprachen ist dann die Ansammlung all jener Sprachen für die es einen DFA git, der sie akzeptiert. Wir haen nun gelernt: Der NFA tut auch genau dies! Die Aussage eine Sprache ist regulär ist also gleichedeutend damit, dass es einen DFA git, der sie akzeptiert oder damit, dass es einen NFA git, der sie akzeptiert. Man kann einem NFA zusätzlich zu dem isherigen noch erlauen λ-kanten (oder ɛ-kanten) zu enutzen. Nutzt man diese, liest man nichts vom Eingaeand (und der Lesekopf auf dem Eingaeand geht nicht weiter). Es findet nur ein Zustandswechsel statt. λ z 0 a z 1 z 2 λ z 3 z 4 Frank Heitmann heitmann@informatik.uni-hamurg.de 11/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 12/57
4 Lasst euch von der Einfachheit des Beispiels nicht täuschen. Die Kanten können sehr nützlich sein. Begriffe wie Rechnung etc. wären nun anzupassen Wissen Man kann zeigen, dass man einen NFA mit λ-kanten in einen λ-freien NFA umwandeln kann (und letztendlich dann auch in einen DFA). Vorgehen Wir wollen λ-kanten in estimmten Kontexten enutzen. Wir wissen dann, dass wir solch einen NFA auch in einen DFA umwandeln können, die Sprache also regulär ist. Wir werden aer weder formal die λ-kanten einführen, noch den Beweis führen, dass auch NFA mit ihnen wieder genau die regulären Sprachen akzeptieren. Wir werden sie einfach informal enutzen. Literaturhinweis Interessierte finden die Konstruktion im Skript und in [HMU] (siehe Literaturhinweis zu Anfang). Frank Heitmann 13/57 Frank Heitmann 14/57 Reguläre Sprachen Zu regulären Ausdrücken Bisher kennen wir zur Beschreiung einer regulären Sprache DFAs NFAs NFAs mit λ-kanten Wir lernen jetzt noch eine dritte Möglichkeit kennen... Wir wollen Sprachen mit Ausdrücken der Art a + (a + ( c)) usw. eschreien... Man kennt das vielleicht aus Programmiersprachen... Frank Heitmann heitmann@informatik.uni-hamurg.de 15/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 16/57
5 Beispiele Definition () Sei Σ ein Alphaet. Die regulären Ausdrücke üer Σ sind induktiv definiert durch: 1 ist ein regulärer Ausdruck, der die Menge M = eschreit. 2 Für jedes a Σ ist a ein regulärer Ausdruck, der die Menge M a = {a} eschreit. 3 Sind X und Y reguläre Ausdrücke, die die Mengen M X und M Y eschreien, dann eschreit (X + Y ) die Menge M X M Y (X Y ) die Menge M X M Y X die Menge M X und X + die Menge M + X. 4 Nur die so erzeugten Ausdrücke sind reguläre Ausdrücke. Beispiele ( für eschreit die Menge ): (a + ) ({a} {}) = {a, } (a ) {a} {} = {a} a + a {a} {} {} {a} = {λ} Anmerkung Agesehen von + für also recht ähnlich zu den Mengenoperationen, die wir schon kennen! Wir enutzen die ülichen Klammerersparnis regeln wie vor + und hoch + zw. hoch vor. Frank Heitmann heitmann@informatik.uni-hamurg.de 17/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 18/57 Äquivalenzeweis Äquivalenzeweis Man kann nun zeigen: Sei A ein regulärer Ausdruck und M A die von A eschrieene Menge. Dann git es einen DFA A mit L(A ) = M A. Sei A ein DFA. Dann git es einen regulären Ausdruck A so dass L(A ) = M A für die von A eschrieene Menge M A. Hinweis Wir skizzieren jetzt recht knapp eide Richtungen. Für später genügt es, wenn ihr wisst, dass die Äquivalensteht. Trotzdem hier jetzt einmal die Idee(n) und die Literaturhinweise für Interessierte... Bemerkung Die eiden Modelle sind also wieder äquivalent. Auch mit regulären Ausdrücken lassen sich also genau die regulären Sprachen eschreien. Frank Heitmann heitmann@informatik.uni-hamurg.de 19/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 20/57
6 Die Richtung regulärer Ausdruck DFA ist relativ einfach. Zu jeder Operation ei der Erstellung eines regulären Ausdrucks git man ein Verfahren an, wie man einen NFA konstruieren kann. Z.B. zum rationalen Ausdruck A B z 0 z 0 0 z 0 e Z.B. zum rationalen Ausdruck a einfach z 0 a z 1 Frank Heitmann heitmann@informatik.uni-hamurg.de 21/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 22/57 Z.B. zum rationalen Ausdruck A B Z.B. zum rationalen Ausdruck A B z 0 z 0 0 z 0 e z 0 z 0 0 z 0 e Frank Heitmann heitmann@informatik.uni-hamurg.de 23/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 24/57
7 Z.B. zum rationalen Ausdruck A + B Z.B. zum rationalen Ausdruck A + B z 0 z 0 z 0 0 z 0 e z 0 0 z 0 e Frank Heitmann heitmann@informatik.uni-hamurg.de 25/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 26/57 Z.B. zum rationalen Ausdruck A + B Z.B. zum rationalen Ausdruck A + B z 0 z 0 z z z 0 0 z 0 e z 0 0 z 0 e Frank Heitmann heitmann@informatik.uni-hamurg.de 27/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 28/57
8 Äquivalenzeweis - Die Idee 2 Anmerkung Dies kann man für alle Operatoren machen und kann dann so wie der reguläre Ausdruck Stück für Stück aufgeaut ist, auch den Automaten dafür Stück für Stück aufauen. Im richtigen Verfahren wird noch auf Dinge geachtet, wie dass man nur einen Startzustand und Endzustand hat etc. (so wie oen). Literaturhinweis Interessierte finden die Konstruktion in [HMU] (und auf andere Weise im Skript). Die andere Richtung (DFA regulärer Ausdruck) ist schwieriger! Die Idee Mittels einer Rekursionsformel werden Worte eschrieen, die auf estimmten Pfaden im Automaten liegen. Damit lassen sich letztendlich alle akzeptierten Worte eschreien (also die akzeptierte Sprache) und (!) wir enötigen dafür nur endlich oft die einfachen Operationen, und, was mit regulären Ausdrücken geht. Frank Heitmann heitmann@informatik.uni-hamurg.de 29/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 30/57 Äquivalenzeweis - Die Idee 2 Zusammenfassung Kern des Beweises ist es die Zustände durchzunummerieren z 1, z 2,..., z n (z 1 ist der Startzustand) und dann folgende Rekursionsformel zu enutzen { {x Ri,j k δ(zi, x) = z j oder (x = λ) (i = j)}, falls k = 0 = R k 1 i,j R k 1 i,k (R k 1 k,k ) R k 1 k,j, falls k 1 In R k i,j sind genau jene Worte enthalten, die gelesen werden können, wenn in z i egonnen wird in z j geendet wird und daei nur Zustände aus {z 1, z 2,..., z k } esucht werden. Man erechnet dann gerade die R n 1,x mit z x Z end, vereinigt diese und ist fertig. Literaturhinweis Interessierte finden die Konstruktion im Detail inkl. Beweis im Skript und in [HMU]. Frank Heitmann heitmann@informatik.uni-hamurg.de 31/57 Zusammenfassung Zu jeder regulären Sprache L git es einen DFA A mit L(A) = L einen NFA B mit L(B) = L einen NFA mit λ-kanten C mit L(C) = L einen regulären Ausdruck D, der L eschreit (M D = L). DFAs, NFAs, NFAs mit λ-kanten und reguläre Ausdrücke sind also äquivalent. Frank Heitmann heitmann@informatik.uni-hamurg.de 32/57
9 Definition Sei f 1 eine einstellige Operation auf Mengen und f 2 eine zweistellige Operationen. D.h. wenn M 1, M 2 zwei Mengen sind, dann sind auch f 1 (M 1 ) und f 2 (M 1, M 2 ) Mengen. Beispiel Eine Sprachfamilie C ist ageschlossen gegenüer der Operation f 1 zw. f 2, wenn für jedes R C auch f 1 (R) C gilt zw. wenn für R 1, R 2 C auch f 2 (R 1, R 2 ) C gilt. Oft schreit man die Operatoren in Infix-Notation (d.h. den Operator zwischen die Argumente). Beispiele in einem anderen Kontext sind z.b. die Addition ei den natürlichen Zahlen. Ziel Wir wollen jetzt für die regulären Sprachen untersuchen, also z.b. o für zwei reguläre Sprachen L 1, L 2 REG auch gilt. L 1 L 2 REG L + 1 REG L REG... Vorgehen Die Argumentation ist dann immer Seien L 1 und L 2 reguläre Sprachen, dann..., also ist auch L 1 L 2 regulär. Frank Heitmann heitmann@informatik.uni-hamurg.de 33/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 34/57 Einfache Komplement Viele kriegen wir durch reguläre Ausdrücke geschenkt, da wir ja wissen, dass diese reguläre Sprachen eschreien. Die regulären Sprachen sind ageschlossen gegenüer,, +,. Beweis. Seien L 1, L 2 REG. Dann git es reguläre Ausdrücke A 1, A 2, die L 1 zw. L 2 eschreien. Nach Definition sind nun auch A 1 + A 2, A 1 A 2, A + 1, A 1 reguläre Ausdrücke, die die Mengen L 1 L 2, L 1 L 2, L + 1 und L 1 eschreien. Diese sind folglich auch regulär. (Da jede Sprache, die von einem regulären Ausdruck eschrieen werden kann, regulär ist.) Definition Sei L Σ. Dann ist das Komplement von L. Und Komplementildung...? L = {w Σ w L} Ideen?! Mit vollständigen DFAs? Frank Heitmann heitmann@informatik.uni-hamurg.de 35/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 36/57
10 Komplement Komplement Die regulären Sprachen sind gegenüer Komplementildung ageschlossen, d.h. ist L REG, dann auch L REG. Beweis. Sei L REG. Dann git es einen vollständigen DFA A mit L(A) = L. Wir konstruieren nun einen vollständigen DFA A aus A wie folgt: Alles von A üernehmen z Z in A Endzustand, dann in A nicht z Z in A kein Endzustand, dann einer in A Die regulären Sprachen sind gegenüer Komplementildung ageschlossen, d.h. ist L REG, dann auch L REG. Beweis. (Wir haen gerade End- und Nicht-Endzustände getauscht.) Wurde ein Wort nun von A akzeptiert (die Rechnung endet in einem Endzustand), so wird es von A nicht akzeptiert (kein Endzustand). Wurde ein Wort von A nicht akzeptiert (Rechnung endet in einem Nicht-Endzustand), so wird es von A akzeptiert (Endzustand). Damit gilt L(A ) = L. Frank Heitmann heitmann@informatik.uni-hamurg.de 37/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 38/57 Produkt/Durchschnitt Der Produktautomat Seien L 1, L 2 REG, dann ist auch L 1 L 2 REG. Die Idee Ideen? Wir gehen von zwei Automaten aus (für L 1 und L 2 ). Ein neuer Automat muss dann die Wörter akzeptieren, die eide Automaten akzeptieren. Dazu merken wir uns in einem Zustand des neuen Automaten jeweils in welchem Zustand der erste und in welchem der zweite Automat ist. Beweis. Seien A 1 = (Z 1, Σ 1, δ 1, z 1,0, Z 1,end ) A 2 = (Z 2, Σ 2, δ 2, z 2,0, Z 2,end ) vollständige DFAs mit L(A 1 ) = L 1 und L(A 2 ) = L 2. Wir konstruieren C = (Z 3, Σ 3, δ 3, z 3,0, Z 3,end ) mit Z 3 := Z 1 Z 2 Σ 3 := Σ 1 Σ 2 z 3,0 := (z 1,0, z 2,0 ) Z 3,end := Z 1,end Z 2,end δ 3 ((z 1, z 2 ), x) := (δ 1 (z 1, x), δ(z 2, x)) Frank Heitmann heitmann@informatik.uni-hamurg.de 39/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 40/57
11 Der Produktautomat Der Produktautomat - Konstruktion Will man einen Produktautomaten konstruieren, so Im Produktautomaten C wird also in der ersten Komponente eine Rechnung von A 1 und in der zweiten Komponente eine Rechnung von A 2 gemacht. Daraus folgt schnell die Korrektheit: ˆδ 3 (z 3,0, w) Z 3,end ˆδ 1 (z 1,0, w) Z 1,end ˆδ 2 (z 2,0, w) Z 2,end eginnt man in (z 1,0, z 2,0 ) erechnet δ(z 1,0, x) und δ(z 2,0, x) für jedes x Σ (sind für ein x eide definiert, ist dies ein neuer Nachfolgezustand) So fährt man dann fort... Bemerkung Im Grund genommen ähnlich zur Potenzautomatenkonstruktion, nur dass man hier im ersten Tupelelement immer wie im ersten Automaten und im zweiten Tupelelement immer wie im zweiten Automaten rechnet. Frank Heitmann heitmann@informatik.uni-hamurg.de 41/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 42/57 - Zusammenfassung Eine Anmerkung Die regulären Sprachen sind ageschlossen gegenüer Vereinigung Konkatenation hoch + hoch Komplementildung Durchschnitt Bemerkung Im Skript wird dies teilweise andersherum gemacht. Wir haen hier mittels regulären Ausdrücken einige der sofort gekriegt. Im Skript wird zunächst gezeigt, dass z.b. REG gegenüer ageschlossen ist und dies dann eim Beweis enutzt, dass die regulären Ausdrücke und DFAs äquivalent sind. Für Interessierte Es gelten weitere. Siehe z.b. [HMU]. Frank Heitmann heitmann@informatik.uni-hamurg.de 43/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 44/57
12 Möglichkeiten und Grenzen Intermezzo Wir können nun sehr viele Sprachen konstruieren, die alle regulär sind. Sind z.b. L 1, L 2 regulär. Dann auch (in etwas schluderiger Schreiweise) (L 1 + L 2 ) L 1 L + 2 L 1 (L 1 a3 L 2 )+... Intermezzo... dennoch wissen wir, dass wir nur endlich viele Informationen speichern können (der DFA hat nur endlich viele Zustände). Frank Heitmann heitmann@informatik.uni-hamurg.de 45/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 46/57 Naive Wortsuche Wortsuche mit Automaten Die naive Wortsuche dauert O(n m) Schritte Veresserungen sind möglich (z.b. mit ooleschen Flags welche Buchstaen man schon entdeckt hat), aer dies ist fehleranfällig und im Grunde aut man Automaten nach. Wortsuche mit Automaten raucht nur O(n) Schritte! Vorher muss der Automat aus dem Pattern erzeugt werden. Zur Info: Dies kann man in O(m Σ ) machen. Wenig fehleranfällig. Methoden für den Automaten müssen nur einmal geschrieen werden! Frank Heitmann heitmann@informatik.uni-hamurg.de 47/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 48/57
13 Deswegen... Eine Sprache, die nicht geht, oder? Deswegen z.b. auch die ganzen Konstruktionen. Man könnte jetzt ein Tool schreien, in dem jemand einen regulären Ausdruck eingit dieser wird in einen Automaten umgewandelt (automatisch) zw. in Code (so dass wir eine Methode für δ haen) der dann für eine effiziente Wortsuche enutzt werden kann Anwendungen z.b.: Suchen in Texten Suchen nach Schlüsselworten eim Kompilieren Suchen in DNA-Sequenzen... Wir können nun sehr viele Sprachen konstruieren, die alle regulär sind. Sind z.b. L 1, L 2 regulär. Dann auch (L 1 + L 2 ) L 1 L + 2 L 1 (L 1 a3 L 2 )+... dennoch wissen wir, dass wir nur endlich viele Informationen speichern können (der DFA hat nur endlich viele Zustände). Frank Heitmann heitmann@informatik.uni-hamurg.de 49/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 50/57 Eine Sprache, die nicht geht, oder? Der Kellerautomat a a L := {a n n n N} Ideen für einen DFA? Was ist das Prolem?, A,? z 0 z 1 z 2 a,? A? a, A AA, A? Frank Heitmann heitmann@informatik.uni-hamurg.de 51/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 52/57
14 Zusammenfassung Wir haen heute Nächstes Mal: Kellerautomat richtig einführen Werkzeuge kennenlernen, um zu zeigen, dass es wirklich nicht mit DFAs geht NFA mit λ-kanten und reguläre Ausdrücke eingeführt. Sollt ihr wissen Beide solltet ihr lesen können und ei eiden solltet ihr Wissen, dass man die in DFAs umwandeln kann. Könnt ihr wissen... Interessierte können die Konstruktionen im Detail und die zugehörigen Beweise im Skript finden. Frank Heitmann 53/57 Frank Heitmann 54/57 Zusammenfassung Zusammenfassung Zusammenfassung Zu jeder regulären Sprache L git es einen DFA A mit L(A) = L einen NFA B mit L(B) = L einen NFA mit λ-kanten C mit L(C) = L einen regulären Ausdruck D, der L eschreit (M D = L). DFAs, NFAs, NFAs mit λ-kanten und reguläre Ausdrücke sind also äquivalent. Wir haen uns dann noch angesehen: Die regulären Sprachen sind (u.a.) ageschlossen gegenüer Vereinigung Konkatenation hoch + hoch Komplementildung Durchschnitt... Frank Heitmann heitmann@informatik.uni-hamurg.de 55/57 Frank Heitmann heitmann@informatik.uni-hamurg.de 56/57
15 Zusammenfassung Was ihr is zur nächsten Woche kennen solltet: Was DFAs sind und wie die funktionieren Was NFAs sind und wie die funktionieren Was reguläre Ausdrücke sind und wie man damit Sprachen eschreit. λ-kanten kennen Wissen, dass DFA, NFA, NFA mit λ-kanten und reguläre Ausdrücke im Prinzip das Gleiche sind. Konstruktionsmethoden (zu einer Sprache M einen Automaten A machen) und der Beweis L(A) = M. Potenzautomatenkonstruktion (die Konstruktion) für REG. Welche gelten? Wie gehen die Konstruktionen? Frank Heitmann heitmann@informatik.uni-hamurg.de 57/57
Formale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften
Formale Grundlagen der Informatik 1 Kapitel 5 Frank Heitmann heitmann@informatik.uni-hamburg.de 18. April 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/64 NFAs - Grundlagen DFAs vs. NFAs Der
MehrWorterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64
Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Pumping Lemma Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges
Mehr2.3 Abschlusseigenschaften
2.3 Abschlusseigenschaften 2.3 Abschlusseigenschaften In diesem Abschnitt wollen wir uns mit Abschlusseigenschaften der regulären Sprachen, d.h. mit der Frage, ob, gegeben eine Operation und zwei reguläre
MehrEndliche Automaten. 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
Mehr2.2 Nichtdeterministische endliche Automaten
2 Endliche Automaten arbeiten und hier kann dann ggf. auch wieder auf die Konstruktion verwiesen werden. Fragen 1. Wie viele Informationen kann man in einem DFA speichern? a) beliebig viele b) endlich
Mehra b b a Alphabet und Wörter - Zusammengefasst Formale Grundlagen der Informatik 1 Kapitel 2 Endliche Automaten und reguläre Sprachen
Formale Grundlagen der Informatik Kapitel 2 und reguläre Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 5. April 26 Frank Heitmann heitmann@informatik.uni-hamburg.de /52 Alphabet und Wörter
MehrFrank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat
Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat
MehrFormalismen für REG. Formale Grundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen. Das Pumping Lemma. Abschlusseigenschaften
Formalismen für RE Formale rundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de Satz Zu jeder regulären Sprache L gibt es einen DFA A mit L(A) =
Mehr2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht
Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der
MehrWie man eine Sprache versteht
Aufzählbarkeit Formale Grundlagen der Informatik 1 Kapitel 10 Aufzählbarkeit und (Un-)Entscheidbarkeit Frank Heitmann heitmann@informatik.uni-hamburg.de 11. Mai 2015 Definition 1 Eine Menge M Σ heißt (rekursiv)
MehrWorterkennung in Texten speziell im Compilerbau 14. April Frank Heitmann 2/65
Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges kennengelernt,
MehrSatz (Abschluß unter der Stern-Operation)
Satz (Abschluß unter der Stern-Operation) Wenn L eine reguläre Sprache ist, dann ist auch L regulär. Beweis: Es gibt einen NFA M = (Z, Σ, S, δ, S, E) mit L(M) = L. Wir bauen aus diesem NFA nun wie folgt
MehrDie mathematische Seite
Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion
MehrBeispiel Produktautomat
Beispiel Produktautomat 0 1 p 0 p 1 p 2 q 0 q 1 445 Vereinfachte Konstruktion f. NFAs Seien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M
MehrSeien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M 2. p 1
Beispiel Produktautomat p Vereinfachte Konstruktion f. NFAs Seien M,M 2 NFAs f. die Sprachen L und L 2. Konstruktion eines NFAs für L L 2 : Erzeuge Kopien von M und M 2. p q q p 2 Erzeuge neuen Startzustand
MehrOrganisatorisches... Formale Grundlagen der Informatik 1 Kapitel 1. Endliche Automaten. Organisatorisches. Organisatorisches. Eine typische Woche:
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
MehrSuche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften
Endlichkeitstest Eingabe: DFA/NFA M. Frage: Ist die von M akzeptierte Sprache endlich? Nahe liegende Beobachtung: In einem DFA/NFA, der eine unendliche Sprache akzeptiert, muss es einen Kreis geben, der
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 9. März 24 7. Reguläre Sprachen I Theorie der Informatik 7. Reguläre Sprachen I Malte Helmert Gabriele Röger Universität Basel 9. März 24 7. Reguläre Grammatiken 7.2 DFAs 7.3 NFAs
MehrInduktionsprinzipien für andere Bereiche. falscher Induktionsbeweis über N Übung Beispiele. Reguläre Σ-Sprachen Abschnitt 2.
Kap 1: Grundegriffe Induktion 1.2.3 Induktionsprinzipien für andere Bereiche Beispiele Bereich M M 0 M erzeugende Operationen N 0} S: n n + 1 Σ ε} ( w wa ) für a Σ, c}-terme c} (t 1, t 2 ) (t 1 t 2 ) endl.
Mehrc) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}
2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?
Mehr5.2 Endliche Automaten
114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch
MehrOrganisatorisches... Formale Grundlagen der Informatik 1 Kapitel 1. Endliche Automaten. Organisatorisches. Organisatorisches. Eine typische Woche:
Organisatorisches... Formale der Informatik 1 Kapitel 1 Frank Heitmann heitmann@informatik.uni-hamurg.de 4. April 2016 Eine typische Woche: Mo+Di: Vorlesung Di-Fr: Üungsgruppen Neuer Zettel und Beareiten
MehrDas Pumping Lemma: Ein Anwendungsbeispiel
Das Pumping Lemma: Ein Anwendungsbeispiel Beispiel: Die Palindromsprache ist nicht regulär. L = { } w {0, 1} w ist ein Palindrom Beweis: Angenommen, L ist doch regulär. Gemäß Pumping Lemma gibt es dann
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs
MehrF2 Zusammenfassung Letzte Tips zur Klausur
F2 Zusammenfassung Letzte Tips zur Klausur Berndt Farwer FB Informatik, Uni HH F2-ommersemester 2001-(10.6.) p.1/15 Funktionen vs. Relationen Funktionen sind eindeutig, Relationen brauchen nicht eindeutig
MehrWS07/08 Automaten und Formale Sprachen 2. Vorlesung. Kapitel 2. Endliche Automaten und reguläre Sprachen. Definitionen:
Definitionen: WS07/08 Automaten und Formale Sprachen 2. Vorlesung Martin Dietzfelinger 23. Oktoer 2007 Ein Alphaet Σ ist eine endliche nichtleere Menge. Ein Wort üer Σ ist eine endliche Folge von Elementen
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung 02.11.2006 schindel@informatik.uni-freiburg.de 1 Kapitel III Reguläre Sprachen Reguläre Sprachen und Ausdrücke Informatik III
MehrGrundlagen der Theoretischen Informatik, SoSe 2008
2. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 1 Einelementiges Alphabet (4 Punkte) (a) Geben
MehrDas Pumping-Lemma Formulierung
Das Pumping-Lemma Formulierung Sei L reguläre Sprache. Dann gibt es ein n N mit: jedes Wort w L mit w n kann zerlegt werden in w = xyz, so dass gilt: 1. xy n 2. y 1 3. für alle k 0 ist xy k z L. 59 / 162
Mehr1 Eine Menge M Σ heißt (rekursiv) aufzählbar genau. 2 Die Familie aller aufzählbaren Mengen wird mit RE
Aufzählbarkeit Formale Grundlagen der Informatik 1 Kapitel 9 Entscheidbarkeit und Aufzählbarkeit Frank Heitmann heitmann@informatik.uni-hamburg.de 5. Mai 2014 Definition 1 Eine Menge M Σ heißt (rekursiv)
MehrSei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.
Der Satz von Kleene Wir haben somit Folgendes bewiesen: Der Satz von Kleene Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden
MehrFORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19.
Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Professur für Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen
MehrEndliche Automaten. Endliche Automaten J. Blömer 1/24
Endliche Automaten Endliche Automaten J. Blömer /24 Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben)
MehrDisMod-Repetitorium Tag 4
DisMod-Repetitorium Tag 4 Endliche Automaten, Reguläre Sprachen und Kontextfreie Grammatiken 22. März 2018 1 Endliche Automaten Definition DFA Auswertungen Äquivalenzrelationen Verschmelzungsrelation und
MehrAutomaten und Formale Sprachen 4. Vorlesung
Automaten und Formale Sprachen 4. Vorlesung Martin Dietzfelinger. Novemer 005 Beispiel: Endliche Sprache L = {w,...,w n }, z.b. L = {ei,eine,ue} Gesehen: Präfix-DFA. Hier: NFA e 0 u i 4 e i n 5 6 7 e e
MehrAutomaten und Formale Sprachen ε-automaten und Minimierung
Automaten und Formale Sprachen ε-automaten und Minimierung Ralf Möller Hamburg Univ. of Technology Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik, Vieweg Verlag 2 Danksagung
MehrDefinition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:
4.7 Kellerautomaten In der Literatur findet man häufig auch die Bezeichnungen Stack-Automat oder Pushdown-Automat. Kellerautomaten sind, wenn nichts anderes gesagt wird, nichtdeterministisch. Definition
MehrFormale Sprachen und endliche Automaten
Formale Sprachen und endliche Automaten Formale Sprachen Definition: 1 (Alphabet) Ein Alphabet Σ ist eine endliche, nichtleere Menge von Zeichen oder Symbolen. Ein Wort über dem Alphabet Σ ist eine endliche
MehrAutomaten und formale Sprachen Notizen zu den Folien
3 Endliche Automten Automten und formle Sprchen Notizen zu den Folien DFA Reguläre Grmmtik (Folie 89) Stz. Jede von einem endlichen Automten kzeptierte Sprche ist regulär. Beweis. Nch Definition, ist eine
MehrÄquivalenzrelation R A zu DFA A. Rechtsinvarianz. Relation R L zur Sprache L
Rechtsinvarianz Definition T4.2.8: Eine Äquivalenzrelation R auf Σ* heißt rechtsinvariant, wenn x R y z Σ*: xz R yz. Index von R: Anzahl der Äquivalenzklassen von R. Notation: ind(r) Im Folgenden: 2 rechtsinvariante
MehrFORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20.
Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen
MehrTuring-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.
Turing-Maschinen Nachdem wir endliche Automaten und (die mächtigeren) Kellerautomaten kennengelernt haben, werden wir nun ein letztes, noch mächtigeres Automatenmodell kennenlernen: Die Turing-Maschine
MehrHomomorphismen. Defnition: Σ und Γ seien zwei endliche Alphabete, und h sei eine Abbildung h : Σ Γ. Wir definieren die folgenden Sprachen:
Homomorphismen Σ und Γ seien zwei endliche Alphabete, und h sei eine Abbildung h : Σ Γ. Wir definieren die folgenden Sprachen: h(l) := {h(u) : u L} Γ, für jede Sprache L Σ, h 1 (M) := {u Σ : h(u) M} Σ,
MehrTechnische 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
MehrKapitel 1: Endliche Automaten Gliederung 1. Endliche Automaten
Gliederung 0. Grundegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechenarkeitstheorie 4. Komplexitätstheorie 1.1. Grundlagen 1.2. Minimierungsalgorithmus 1.3. 1/3, S. 1 Git es Sprachen, die nicht
MehrFrank Heitmann 2/71. 1 Betrachten wir Σ für ein Alphabet Σ, so ist Σ die Menge
Formle Grundlgen der Informtik Kpitel 2 und reguläre Sprchen Frnk Heitmnn heitmnn@informtik.uni-hmurg.de 7. April 24 Frnk Heitmnn heitmnn@informtik.uni-hmurg.de /7 Alphet und Wörter - Zusmmengefsst Die
MehrAutomaten und formale Sprachen Notizen zu den Folien
3 Endliche Automten Automten und formle Sprchen Notizen zu den Folien Üerführungsfunction eines DFA (Folie 92) Wie sieht die Üerführungfunktion us? δ : Z Σ Z Ds heißt: Ein Pr us Zustnd und Alphetsymol
MehrFragen 1. Wie viele Startzustände kann ein endlicher Automat haben? 2. Wie viele Endzustände kann ein endlicher Automat haben?
2 Endliche Automaten Konfigurationsübergang, Rechnung, Erfolgsrechnung, akzeptierte Sprache, reguläre Menge und die Sprachfamilie REG. Alle diese Begriffe sind wichtig und sollten bekannt sein, da wir
MehrSatz 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
MehrKapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie
Gliederung. Grundbegriffe. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.. Chomsky-Grammatiken 2.2. Reguläre Sprachen (noch weiter) 2.3. Kontextfreie Sprachen 2/4,
MehrInformales Beispiel. Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen. Grammatiken. Anmerkungen
Informales Beispiel Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 22. April 2014 I L IL ID L a b c D 0 1 2 3 4 Eine
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Wintersemester 2007 / 2008 Prof. Dr. Heribert Vollmer Institut für Theoretische Informatik 29.10.2007 Reguläre Sprachen Ein (deterministischer) endlicher Automat
Mehr3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme
Wiederholung Mit Grammatiken können wir Sprachen beschreiben und sie grob in Typen unterteilen: FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Formale
MehrFormale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23
1/23 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Sascha Böhme, Lars Noschinski Sommersemester 2 Lösungsblatt 2 3. Mai 2 Einführung in die Theoretische Informatik Hinweis:
Mehra b b a Vom DFA zur TM Formale Grundlagen der Informatik 1 Kapitel 9 Turing-Maschinen Der Lese-/Schreibkopf Bedeutung der TM
Vom DFA zur TM Formale der Informatik 1 Kapitel 9 Frank Heitmann heitmann@informatik.uni-hamburg.de a b b a z 0 a z 1 a z 2 b 2. Mai 2016 Wir wollen auf dem Band nach rechts und links gehen können und
Mehr4.2 Varianten der Turingmaschine. 4 Turingmaschinen
4 Turingmaschinen Alles was intuitiv berechenbar ist, d.h. alles, was von einem Menschen berechnet werden kann, das kann auch von einer Turingmaschine berechnet werden. Ebenso ist alles, was eine andere
MehrEndliche Automaten. Endliche Automaten J. Blömer 1/23
Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben) ändern ihren inneren Zustand produzieren gegebenenfalls
MehrTeil V: Formale Sprachen 1. Sprachen und Grammatiken 2. Endliche Automaten
Formale Sprachen Teil V: Formale Sprachen 1. Sprachen und Grammatiken 2. Endliche Automaten Formale Methoden der Informatik WiSe 2013/2014 teil 5, folie 2 (von 50) 1. Sprachen und Grammatiken Formale Sprachen
MehrAutomaten und Formale Sprachen SoSe 2013 in Trier
Automaten und Formale Sprachen SoSe 2013 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 2. Juni 2013 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche
MehrInformatik IV. Pingo Sommersemester Dozent: Prof. Dr. J. Rothe. J. Rothe (HHU Düsseldorf) Informatik IV 1 / 13
Informatik IV Sommersemester 2019 Dozent: Prof. Dr. J. Rothe J. Rothe (HHU Düsseldorf) Informatik IV 1 / 13 Website http://pingo.upb.de/ Code: 1869 J. Rothe (HHU Düsseldorf) Informatik IV 2 / 13 Frage
MehrInformatik 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
MehrPotenzmengenkonstruktion. Vergleich DFAs NFAs. NFA DFA ohne überflüssige Zust. Ansatz nicht praktikabel
Vergleich DFAs NFAs Frage: Können NFAs nichtreguläre Sprachen erkennen? NEIN Potenzmengenkonstruktion Gegeben: NFA (Q,Σ,q 0,δ,F), konstruiere DFA: Q =P (Q), q 0 = {q 0 }, F ={q q F } Satz T4.4.5: Zu jedem
MehrTheorie der Informatik
Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man
MehrEinführung in die Computerlinguistik Satz von Kleene
Einführung in die Computerlinguistik Satz von Kleene Dozentin: Wiebke Petersen 5. Foliensatz Wiebke Petersen Einführung CL 1 Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von einem deterministischen
MehrAutomaten und Formale Sprachen SoSe 2013 in Trier
Automaten und Formale Sprachen SoSe 2013 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 2. Juni 2013 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche
Mehr2.2 Reguläre Sprachen Endliche Automaten
2.2.1 Endliche Automaten E I N G A B E Lesekopf endliche Kontrolle Signal für Endzustand Ein endlicher Automat liest ein Wort zeichenweise und akzeptiert oder verwirft. endlicher Automat Sprache der akzeptierten
MehrAlgorithmen mit konstantem Platzbedarf: Die Klasse REG
Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August
MehrFORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch
FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch TU Dresden, 17. Oktober 2016 Rückblick Markus Krötzsch, 17. Oktober 2016 Formale Systeme Folie 2 von 31 Wiederholung Mit Grammatiken können
MehrBeweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann
Automaten und Formale prachen alias Theoretische Informatik ommersemester 2011 Dr. ander Bruggink Übungsleitung: Jan tückrath Wir beschäftigen uns ab jetzt einige Wochen mit kontextfreien prachen: Kontextfreie
MehrHoffmann (HAW Hamburg) Automatentheorie und formale Sprachen
Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 18.4. 2012 176 Automatentheorie und formale Sprachen VL 5 Reguläre und nichtreguläre Sprachen Kathrin Hoffmann 18. Aptil 2012 Hoffmann (HAW
MehrDie oben aufgelisteten Sprachfamilien werden von oben nach unten echt mächtiger, d.h. die Familie der regulären Sprachen ist eine echte Teilfamilie
Zusammenfassung Im Automatenteil der FGI1 Vorlesung haben wir uns mit der Charakterisierung von Sprachfamilien durch immer mächtigere Automatenmodelle und Grammatiken beschäftigt. Folgende Familien haben
MehrFormale Sprachen. Reguläre Sprachen. Rudolf FREUND, Marian KOGLER
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER Endliche Automaten - Kleene STEPHEN KLEENE (99-994) 956: Representation of events in nerve nets and finite automata. In: C.E. Shannon und
MehrFormale Grundlagen der Informatik 1 Kapitel 1 Endliche Automaten
Formale der Informatik 1 Kapitel 1 Frank Heitmann heitmann@informatik.uni-hamburg.de 4. April 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/77 Organisatorisches... Eine typische Woche: Mo+Di:
MehrEinführung in die Computerlinguistik Satz von Kleene
Einführung in die Computerlinguistik Satz von Kleene Dozentin: Wiebke Petersen 5. Foliensatz Wiebke Petersen Einführung CL 1 Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von einem deterministischen
MehrTheorie der Informatik
Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014 Kontextsensitive und allgemeine Grammatiken Wiederholung: (kontextsensitive)
MehrEndliche Automaten. δ : Z Σ Z die Überführungsfunktion, z 0 Z der Startzustand und F Z die Menge der Endzustände (Finalzustände).
Endliche Automaten Endliche Automaten Definition Ein deterministischer endlicher Automat (kurz DFA für deterministic finite automaton ) ist ein Quintupel M = (Σ, Z, δ, z 0, F), wobei Σ ein Alphabet ist,
MehrEndliche Automaten Jörg Roth 101
Endliche Automaten Jörg Roth 101 Wir wollen im Folgenden die Abschlusseigenschaften regulärer Sprachen betrachten. Fragestellung: Wenn wir reguläre Sprachen haben, welche binären und unären Operationen
MehrInduktive Definition
Rechenregeln A B = B A A (B C) = (A B) C A (B C) = (A B) C A (B C) = A B A C (B C) A = B A C A {ε} A = A A {ε} = A (A {ε}) = A (A ) = A A A = A + A A = A + A + {ε} = A Beispiel. Real-Zahlen = {0,..., 9}
MehrDie Nerode-Relation und der Index einer Sprache L
Die Nerode-Relation und der Index einer Sprache L Eine zweite zentrale Idee: Sei A ein vollständiger DFA für die Sprache L. Repäsentiere einen beliebigen Zustand p von A durch die Worte in Σ, die zu p
MehrÜbersicht. 3 3 Kontextfreie Sprachen
Formale Systeme, Automaten, Prozesse Übersicht 3 3.1 Kontextfreie Sprachen und Grammatiken 3.2 Ableitungsbäume 3.3 Die pre -Operation 3.4 Entscheidungsprobleme für CFGs 3.5 Normalformen für CFGs 3.6 Chomsky-Normalform
MehrADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr
Bemerkung: Jede NDTM N (die die Sprache L(N) akzeptiert) kann in eine deterministische Turing-Maschine M konvertiert werden, die ebenfalls genau die Sprache L(N) akzeptiert. Beweisidee: Die Berechnungspfade
Mehr10 Kellerautomaten. Kellerautomaten
10 Kellerautomaten Bisher hatten wir kontextfreie Sprachen nur mit Hilfe von Grammatiken charakterisiert. Wir haben gesehen, dass endliche Automaten nicht in der Lage sind, alle kontextfreien Sprachen
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung 17.11.2006 schindel@informatik.uni-freiburg.de 1 Prinzip des Kellerautomats Push-Down-Automaton (PDA) Ein Kellerautomat vereinigt
MehrAutomaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier
Automaten und Formale Sprachen SoSe 2007 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche Automaten und
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Übung am 3..2 INSTITUT FÜR THEORETISCHE KIT 7..2 Universität des Andrea Landes Schumm Baden-Württemberg - Theoretische und Grundlagen der Informatik INSTITUT FÜR
MehrEin deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:
Sprachen und Automaten 1 Deterministische endliche Automaten (DFA) Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: M = (Z,3,*,qo,E) Z = Die Menge der Zustände 3 = Eingabealphabet
MehrDiskrete Mathematik. Arne Dür Kurt Girstmair Simon Legner Georg Moser Harald Zankl
OLC mputational gic Diskrete Mathematik Arne Dür Kurt Girstmair Simon Legner Georg Moser Harald Zankl Fakultät für Mathematik, Informatik und Physik @ UIBK Sommersemester 2011 GM (MIP) Diskrete Mathematik
MehrAutomaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2013
Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2013 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink Automaten und Formale Sprachen 1 Reguläre Ausdrücke Wozu
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie prachen (VI) 25.06.2015 Viorica ofronie-tokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrTheoretische Informatik Kap 1: Formale Sprachen/Automatentheorie
Gliederung der Vorlesung. Grundbegriffe. Formale Sprachen/Automatentheorie.. Grammatiken.2..3. Kontext-freie Sprachen 2. Berechnungstheorie 2.. Berechenbarkeitsmodelle 2.2. Die Churchsche These 2.3. Unentscheidbarkeit
MehrRegulä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
Mehr1 Eliminieren von ɛ-übergängen
1 Eliminieren von ɛ-übergängen 1.1 Beispiel 1 (a) Ausgangspunkt: Zwei ɛ-übergänge (b) Entfernung eines ɛ-übergangs, Reduktion (c) Entfernen eines ɛ-übergangs, Reduktion Abbildung 1: Elimination von ɛ-übergängen,
MehrAutomaten und formale Sprachen Notizen zu den Folien
3 Endliche Automten Automten und formle Sprchen Notizen zu den Folien Üerführungsfunktion eines NFA (Folien 107 und 108) Wie sieht die Üerführungsfunktion us? δ : Z Σ P(Z) Ds heißt, jedem Pr us Zustnd
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2 Lösungsblatt 2. Mai 2 Einführung in die Theoretische Informatik
MehrFORMALE SYSTEME. Der Satz von Myhill und Nerode. Automaten verkleinern mit Quotientenbildung. Verschiedene Äquivalenzrelationen
Automaten verkleinern mit Quotientenbildung Wir betrachten DFAs mit totaler Übergangsfunktion. FORMALE SYSTEME 9. Vorlesung: Minimale Automaten (2) Markus Krötzsch TU Dresden, 9. November 207 C 0 A 0 [A]
Mehr2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:
Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter
MehrNichtdeterministische endliche Automaten. Nichtdetermistische Automaten J. Blömer 1/12
Nichtdeterministische endliche Automten Nichtdetermistische Automten J. Blömer 1/12 Nichtdeterministische endliche Automten In mnchen Modellierungen ist die Forderung, dss δ eine Funktion von Q Σ Q ist,
MehrSoftware Engineering Ergänzung zur Vorlesung
Ergänzung zur Vorlesung Prof. Dr. Markus Müller-Olm WS 2008 2009 2.6.1 Endliche und reguläre Sprachen Endliche und reguläre Sprache: fundamental in vielen Bereichen der Informatik: theorie Formale Sprachen
Mehr