Operationen auf endlichen Akzeptoren und Transduktoren

Größe: px
Ab Seite anzeigen:

Download "Operationen auf endlichen Akzeptoren und Transduktoren"

Transkript

1 Operationen auf endlichen Akzeptoren und Transduktoren Definitionen, Algorithmen, Erläuterungen und Beispiele - eine Übersicht Karin Haenelt, ( ) Operationen auf endlichen Akzeptoren und Transduktoren... 1 Definitionen, Algorithmen, Erläuterungen und Beispiele - eine Übersicht... 1 Karin Haenelt, ( ) Vorbemerkung Notationskonventionen Übersicht der Operationen Einige Begriffe Operationen Komplement (complement) Komplement regulärer Sprachen Komplement endlicher Akzeptoren Umkehrung (reversal) Umkehrung regulärer Sprachen Umkehrung von Akzeptoren Umkehrung von Transduktoren Inversion (Eingabe-Ausgabe-Umkehrung) (inversion) Inversion von Transduktoren Projektion (projection) Projektion von Transduktoren Hülle (Iteration, Stern) (closure) Hülle regulärer Sprachen Hülle von Akzeptoren Hülle von Transduktoren Homomorphismus (homomorphism) Konkatenation (Produkt, Verkettung) (product, concatenation) Konkatenation regulärer Sprachen Konkatenation von Akzeptoren Konkatenation von Transduktoren Vereinigung (Summe, Disjunktion) (sum, union) Vereinigung regulärer Sprachen Vereinigung von Akzeptoren Vereinigung von Transduktoren Durchschnitt (intersection) Durchschnitt regulärer Sprachen Durchschnitt endlicher Automaten Differenz (difference) Differenz regulärer Sprachen Differenz endlicher Automaten Komposition (composition)...20 Haenelt, Operationen auf Akzeptoren und Transduktoren 1/25

2 Komposition von Transduktoren Vielen Dank Literatur Vorbemerkung Dieses Skript präsentiert einige der Operationen, die für endliche Akzeptoren und Transduktoren definiert wurden. Es handelt sich dabei um eine Auswahl. Ziel dieses Skripts ist die Zusammenstellung in einer Übersicht und die tutorielle Erläuterung. Σ 2 Notationskonventionen Eingabealphabet. (Wenn eine Sprache L durch einen Automaten definiert ist, enthält die Spezifikation des Automaten das Eingabealphabet.) Σ * Menge aller Worte über dem Eingabealphabet (einschließlich ) Ω a, b und Ziffern Ausgabealphabet bzw. Eingabealphabet Ausgabealphabet Eingabesymbole aus dem Eingabealphabet w,x,y,z Zeichenketten über dem Eingabealphabet leeres Wort (= Wort der Länge 0) L Q leere Menge reguläre Menge, Sprache Zustandsmenge p, q Zustände q 0 F Startzustand Menge der Endzustände δ ( q, Zustandsübergangsfunktion für Eingabesymbole Q Σ Q ˆ δ ( q, x) Zustandsübergangsfunktion für Eingabeketten λ ( q, Ausgabefunktion Q Σ * ρ (q) Endausgabefunktion F ( *) p A DEA NEA endlicher Automat deterministischer endlicher Automat nichtdeterministischer endlicher Automat NEA nichtdeterministischer endlicher Automat mit -Transitionen Haenelt, Operationen auf Akzeptoren und Transduktoren 2/25

3 T Transduktor Haenelt, Operationen auf Akzeptoren und Transduktoren 3/25

4 3 Übersicht der Operationen beschrieben Abgeschlossenheit (closure) für L A T unäre Operationen (= Operationen auf einem Operanden) L Komplement (complement) L, A, T ja ja nicht generell R L Umkehrung (reversal) L, A, T ja ja ja 1 T Inversion (Eingabe:Ausgabe- Umkehrung) (inversion) T - - ja T ' Projektion (Umformung von FST in FSA) (projection) T - - ja L * Iteration (Hülle, Stern) (closure) L, A, T ja ja ja Homomorphismus L, A, T ja ja ja binäre Operationen (= Operationen auf zwei Operanden) L 1L2 Konkatenation (Produkt, L, A, T ja ja ja Verkettung) (product, concatenation) L1 L2 Vereinigung (Summe, Disjunktion) L, A,T ja ja ja (sum, union) L1 L2 Durchschnitt (intersection) L, A, T ja ja nicht generell T 1 T 2 Komposition T - - sofern endlichsubsequentiell A1 A2 Differenz L, A, T ja ja nicht generell Optimierungsoperationen Connection Determinisierung EpsilonEntfernung Pushing Minimierung 4 Einige Begriffe Abgeschlossenheit Das Ergebnis einer Operation auf Elementen einer Menge liegt wiederum innerhalb dieser Menge (Beispiel: Vereinigung zweier regulärer Ausdrücke ergibt wieder einen regulären Ausdruck). Haenelt, Operationen auf Akzeptoren und Transduktoren 4/25

5 lazy implementation - in der Praxis sind oft viele Zustände, die als Zwischenergebnis einer Operation entstehen (z.b. durch Bildung des kartesischen Produktes der Zustände), vom Startzustand aus nicht erreichbar - daher ist es günstig, solche Zustände erst gar nicht zu produzieren, sondern nur Zustände nach Bedarf zu erzeugen (lazy implementation) - dies geschieht folgendermaßen: o Konstruktion mit Zustand (0,0) beginnen, o nur dann weitere Zustände hinzufügen, wenn sie Ergebnis einer Transition sind, die von einem bereits hinzugefügten Zustand ausgeht 5 Operationen 5.1 Komplement (complement) L Komplement regulärer Sprachen Definition Bedeutung Beispiel L = Σ * L Sei L eine Sprache über einem Alphabet Σ, dann enthält L alle Worte, die in Σ * enthalten sind, aber nicht in L Abgeschlossenheit ja. Wenn L eine reguläre Menge ist und L Σ *, dann ist Σ * L eine abgeschlossene Menge (Hopcroft/Ullman 1988: 61) A Komplement endlicher Akzeptoren Definition Sei L = L(A) für einen DEA A = { Q, Σ, δ, q0, F) Dann ist L = L(A) für einen DEA A = { Q, Σ, δ, q0, Q F) Bedeutung A sieht genauso aus wie A, mit dem Unterschied, dass die akzeptierenden Zustände aus A zu nicht-akzeptierenden Zuständen in A werden und die nicht-akzeptierenden zu akzeptierenden. A akzeptiert genau die Worte aus Σ, die A nicht akzeptiert. A akzeptiert genau dann ein Wort w, wenn ˆ δ ( q0, w) in Q F liegt, d.h. wenn w in Σ * L Haenelt, Operationen auf Akzeptoren und Transduktoren 5/25

6 liegt. (Hopcroft/Ullman, 1988: 61) und (Hopcroft/Motwani/Ullman, 2001: 133) Konstruktion - akzeptierende Zustände aus A werden zu nicht-akzeptierenden Zuständen in A - und umgekehrt - falls A nicht deterministisch ist, muss A zuerst determinisiert werden Konstruktion Fall A ist nicht-deterministisch 1 A Σ Q adje dete nomn F dete 1 adje 2 nomn 3 A: -NEA - aus A die - Kanten entfernen A Σ Q adje dete nomn 0 - {1,2} F dete 0 dete 1 adje 2 nomn 3 nomn nomn A: NEA Fall 2 - A determinisieren - weiter wie Fall 2 A ist nicht-deterministisch mit folgenden Einschränkungen - δ ( q, liefert für jedes Eingabesymbol a höchstens einen Wert - es gibt keine -Übergänge (m.a.w.: A ist ein DEA mit partieller Übergangsfunktion) A Q Σ adje dete nomn 0 [0] [1,2] [2] F [3] dete 1 adje 2 nomn 3 nomn nomn A: DEA, partiell - fehlende Kanten ergänzen ( Fangzustand einführen) Haenelt, Operationen auf Akzeptoren und Transduktoren 6/25

7 Fall 3 - weiter wie Fall 3 A ist deterministisch (d.h. δ ( q, liefert für jedes Eingabesymbol a genau einen Wert und es gibt keine -Übergänge) A Σ Q adje dete nomn F dete, adje,nomn adje 0 dete nomn 4 dete dete, adje,nomn dete, adje 1 adje 2 nomn 3 nomn A: DEA, total Dieser Automat akzeptiert einfache Nominalphrasen der Art {dete adje nomn, dete nomn, nomn} - akzeptierende und nicht-akzeptierende Kanten umkehren A Σ Q adje dete nomn 0 F F F F dete, adje,nomn adje 0 dete nomn dete, adje,nomn 4 dete dete, adje 1 adje 2 nomn 3 nomn A: DEA Dieser Automat erkennt und akzeptiert alle Kombinationen von dete adje nomn, soweit sie keine einfache Nominalphrase gemäß Spezifikation in A bilden Abgeschlossenheit ja. Wenn L eine reguläre Menge ist und L Σ *, dann ist Σ * L eine abgeschlossene Menge (Hopcroft/Ullman 1988: 61) 5.2 Umkehrung (reversal) R L Umkehrung regulärer Sprachen Definition Bedeutung Die Umkehrung einer Sprache L, geschrieben als R L, besteht aus der Umkehr all ihrer Worte (Hopcroft/Motwani/Ullman, 2001: 137) Beispiel L = { heit, keit, ung}, L R = { gnu, teih, teik} Haenelt, Operationen auf Akzeptoren und Transduktoren 7/25

8 Abgeschlossenheit ja. Reguläre Mengen sind unter der Operation der Umkehrung abgeschlossen R A Umkehrung von Akzeptoren Definition Bedingung Bedeutung für DEA, NEA, NEA Die Umkehrung eines Akzeptors A, geschrieben als ein Wort w, dann und nur dann, wenn A das Wort (Hopcroft/Motwani/Ullman, 2001: 137) R A akzeptiert R w akzeptiert Konstruktionsprinzip - Umkehrung aller Kanten in der Transitionstabelle von A Beispiel Abgeschlossenheit - Bestimmung des Startzustandes von A zum einzigen akzeptierenden Zustand - Erzeugung eines neuen Startzustandes p 0 mit -Transitionen zu allen akzeptierenden Zuständen von A (Hopcroft/Motwani/Ullmann, 2001: 137) ja. Reguläre Mengen sind unter der Operation der Umkehrung abgeschlossen T R Umkehrung von Transduktoren Definition R R R [ T ]( x, y) = [ T ]( x, y ) vgl. (Mohri/Riley 2002: I, 15) Bedeutung Transduktor, der die Worte von hinten liest und schreibt 5.3 Inversion (Eingabe-Ausgabe-Umkehrung) (inversion) 1 T Inversion von Transduktoren Definition 1 [ T ]( x, y) = [ T ]( y, x) (Mohri/Riley 2002: I, 15) Bedeutung Umkehrung der Abbildung Eingabe (x) :Ausgabe (y) Haenelt, Operationen auf Akzeptoren und Transduktoren 8/25

9 5.4 Projektion (projection) ' T Projektion von Transduktoren Definition [ A]( x) = [ T ]( x, y) y (Mohri/Riley 2002: I, 15) Bedeutung Reduktion der Abbildungsdimensionen, Reduktion eines Transducers auf einen einfachen Automaten 5.5 Hülle (Iteration, Stern) (closure) L * Definition Hülle regulärer Sprachen Kleensche Hülle i 0 L L, und es gilt = { } * = i=0 positive Hülle i i 1 L, L = LL für i 1 L + = =1 i i L Bedeutung L * bezeichnet die Wörter, die durch die Konkatenation einer beliebigen Anzahl von Wörtern aus L entstehen. (Hopcroft/Ullman, 1988: 28) n L ist die Menge der Ketten, die in genau n Teilketten zerlegbar sind, die zu L gehören. (Kunze, 2001: 177) Beispiel L = {ha}, L* = {, ha, haha, hahaha,...}, Abgeschlossenheit ja. Reguläre Mengen sind per definitionem unter der Operation der Kleeneschen Hüllenbildung abgeschlossen A * Hülle von Akzeptoren Definition A 1 = ( Q1, Σ 1, δ 1, q1,{ F1}) A 1* = ( Q1 { q0, f 0}, Σ1, δ, q0,{ f 0}) δ definiert durch δ ( q 0, ) = δ ( f 1, ) = { q1, f 0} δ ( q, = δ 1( q, für q Q1 { f 1} und a { Σ1 } Haenelt, Operationen auf Akzeptoren und Transduktoren 9/25

10 (Hopcroft/Ullman, 1988: 32) Bedeutung A * akzeptiert die Wörter, die durch die Konkatenation einer beliebigen Konstruktion Anzahl von Wörtern aus A entstehen. erzeuge - Anfangszustand q 0 - Endzustand f 0 - -Transitionen von q 0 nach q 1 - -Transitionen von q 0 nach f 0 (modelliert Möglichkeit von null Vorkommen) - -Transitionen von F = { f 11, f 12,..., f 1n} nach q 1 (modelliert Wiederholung) - -Transitionen von F = { f 11, f 12,..., f 1n} nach f 0 A * q 0 q 1 A f 1 f 0 Beispiel (Hopcroft/Ullmann, 1988: 32) h a q 0 q 1 q 2 f 1 f 0 Abgeschlossenheit ja. Reguläre Mengen sind per definitionem unter der Operation der Kleeneschen Hüllenbildung abgeschlossen T * Definition Hülle von Transduktoren n [ T*]( x, y) = [ T] ( x, y) n= 0 (Mohri/Riley 2002: I, 11) Haenelt, Operationen auf Akzeptoren und Transduktoren 10/25

11 5.6 Homomorphismus (homomorphism) A string homomorphism is a function on strings that works by substituting a particular string for each symbol. (Hopcroft/Motwani/Ullman 2001: 139) A homomorphism (substitution of strings for symbols) of a regular language is regular. (Hopcroft/Motwani/Ullman 2001: 139) 5.7 Konkatenation (Produkt, Verkettung) (product, concatenation) L 1 L Konkatenation regulärer Sprachen Definition L1 L2 = { xy x L1 y L2} Bedeutung L 1 L2 enthält die Verkettung der Worte, die in L 1 oder in L2 enthalten sind Beispiel L 1 = { lach, mach}, L 2 = { e, st, t}, L 1L2 = { lache, lachst, lacht, mache, machst, macht} Abgeschlossenheit ja. Reguläre Mengen sind per definitionem unter der Operation der Konkatenation abgeschlossen A 1 A Konkatenation von Akzeptoren Definition A 1 = ( Q1, Σ 1, δ 1, q1,{ F1}) A 2 = ( Q2, Σ 2, δ 2, q2,{ F 2}) A = A1 A2 = ( Q1 Q2, Σ1 Σ2, δ,{ q1},{ f 2}) δ (Hopcroft/Ullman, 1988: 31) definiert durch δ ( q, = δ 1( q, für q Q1 { f 1} und a { Σ1 } δ ( q, = δ 2( q, für q Q2 { f 2} und δ ( f 1, ) = { q 2} a { Σ2 } Bedeutung A 1 A2 akzeptiert die Verkettung der Worte, die L 1 bzw. L2 akzeptieren Konstruktion erzeuge -Transitionen von den Endzuständen von A 1 zu den Anfangszuständen von A 2 Haenelt, Operationen auf Akzeptoren und Transduktoren 11/25

12 A q A 1 1 f 2 1 q 2 A f 2 Beispiel (Hopcroft/Ullmann, 1988: 32) A 1 A 2 l a c h m e s t 22 t Abgeschlossenheit ja. Reguläre Mengen sind per definitionem unter der Operation der Konkatenation abgeschlossen T 1 T Konkatenation von Transduktoren Definition [ T 1 T 2]( x, y) = [ T 1]( x1, y1) [ T 2]( x2, y2) x= x1x 2, y= y1y (Mohri/Riley 2002: I, 11) Vereinigung (Summe, Disjunktion) (sum, union) L1 L Vereinigung regulärer Sprachen Definition L1 L2 = { x x L1 x L2} Bedeutung Seien L 1 und L 2 Sprachen über einem Alphabet Σ, dann enthältl1 L2 alle Worte, die in L 1 oder in L2 enthalten sind Beispiel L 1 = { bahn, wald}, L 2 = { bau, lach}, L 1 L2 = { bahn, bau, lach, wald} Abgeschlossenheit ja. Reguläre Mengen sind per definitionem unter der Operation der Vereinigung abgeschlossen A1 A Vereinigung von Akzeptoren Definition A 1 = ( Q1, Σ 1, δ 1, q1,{ F1}) Haenelt, Operationen auf Akzeptoren und Transduktoren 12/25

13 A 2 = ( Q2, Σ 2, δ 2, q2,{ F 2}) A = A1 A2 = ( Q1 Q2 { q0, f 0}, Σ1 Σ2, δ, q0,{ f 0}) q 0 neuer Anfangszustand f 0 neuer Endzustand δ definiert durch δ ( q 0, ) = { q 1, q2} δ ( q, = δ 1( q, für q Q1 { f 1} und a { Σ1 } δ ( q, = δ 2( q, für q Q2 { f 2} und a { Σ2 } δ ( f 1, ) = δ ( f 2, ) = { f 0} Bedingung (Hopcroft/Ullman, 1988: 61) DEAs und NEAs Bedeutung A akzeptiert alle Worte, die A 1 oder A 2 akzeptieren. Konstruktion erzeuge - Anfangszustand q 0 - -Transitionen von q0 zu den Anfangszuständen von A 1 und A 2 - Endzustand f 0 - -Transitionen von den Endzuständen von A 1 und A2 zu f 0 A q A 1 1 f 1 q 0 f 0 q A 2 2 f 2 (Hopcroft/Ullmann, 1988: 32) Haenelt, Operationen auf Akzeptoren und Transduktoren 13/25

14 Beispiel A 00 A 1 b a h n w a l d A 2 01 b a u l a c h nach Umwandlung des NEA in einen NEA entsteht daraus: A b a h u 13 n w a l d l a c h Haenelt, Operationen auf Akzeptoren und Transduktoren 14/25

15 NEA Σ Q a b c d h l n u w 00 {10,20} NEA Σ Q a b c d h l n u w [00] [11,21] [24] [15] [11,21] [12,22] [12,22] [13] [01] [13] [01] [15] [16] [16] [17] [17] [01] [24] [25] [25] [26] [26] [01] [01] Implementierung lazy implementation: Haenelt, Operationen auf Akzeptoren und Transduktoren 15/25

16 Abgeschlossenheit ja. Reguläre Mengen sind per definitionem unter der Operation der Vereinigung abgeschlossen T 1 T Vereinigung von Transduktoren Definition [ T 1 T 2]( x, y) = [ T 1]( x, y) [ T 2]( x, y) (Mohri/Riley 2002: I, 11) Beispiel T 1 red/0.5 T green/0.3 blue/ yellow/ T 2 green/ blue/ (Mohri/Riley 2002: I, 12) 5.9 Durchschnitt (intersection) L1 L Durchschnitt regulärer Sprachen Definition L1 L2 = { x x L1 x L2} Bedeutung Seien L 1 und L 2 Sprachen über einem Alphabet Σ, dann enthält Beispiel Abgeschlossenheit ja. L1 L2 alle Worte, die in L 1 und in L2 enthalten sind {bau, glas, honig, wald} {bau, glas, lach, mach} = {bau, glas} A1 A Durchschnitt endlicher Automaten Definition A 1 = ( Q, Σ, δ 1, q1, F1) A 2 = ( Q, Σ, δ 2, q2, F 2) A = A1 A2 = ( Q 1 Q2, Σ, δ,[ q1, q2], F1 F 2) Haenelt, Operationen auf Akzeptoren und Transduktoren 16/25

17 Bedingung Konstruktion wobei für alle p1 Q1, p2 Q2 und a Σ gilt: [ p1, p2], [ δ 1( p1,, δ 2( p, ] δ = (Hopcroft/Ullman, 1988: 61) ( 2 Algorithmus funktioniert für DEAs und auch für NEAs. Falls die Eingabealphabete der Automaten nicht identisch sind, ist Σ die Vereinigung der Alphabete der beiden Automaten. Sei Q 1 = {q 1, q 2,, q m } die Zustandsmenge des ersten Automaten Sei Q 2 = {s 1, s 2,, s m } die Zustandsmenge des zweiten Automaten Das Ergebnis der Schnittbildung ist das Kartesische Produkt Q 1 x Q 2 dieser beiden Zustandsmengen, wobei es eine Kante mit dem Etikett λ Σ von Zustand q i s j zu Zustand q k sl genau dann gibt, wenn es in den Originalautomaten Kanten mit dem Etikett λ von Zustand q i zu Zustand q k und von Zustand s j zu Zustand s l gibt. Der Zustand q s ist nur dann ein Endzustand, wenn beide Zustände i j der Originalautomaten q i aus Q 1 und s j aus Q 2 Endzustände sind. Der Startzustand der Schnittbildung ist der Zustand q s α β, wobei q α und s β die Startzustände der Originalautomaten sind (Quelle????) Bedeutung A akzeptiert alle Worte, die sowohl A 1 als auch A 2 akzeptieren. Beispiel A 1 p 1 0 q 0,1 A = A1 A2 pr 1 ps A 2 r 0 1 s 0,1 qr 1 0 qs 0,1 A 1 akzeptiert alle Worte, die eine 0 enthalten. A2 akzeptiert alle Worte, die eine 1 enthalten. A akzeptiert die Worte, die sowohl eine 1 als auch eine 0 enthalten. (Hopcroft/Motwani/Ullman, 2001: 136) Haenelt, Operationen auf Akzeptoren und Transduktoren 17/25

18 Beispiel A 1 0 b 1 a h 2 3 n 4 u A = A1 A2 A 2 w a l d b 1 a 2 h 3 n 4 u 0 b 1 a 2 h 3 n 4 u Abgeschlossenheit ja. l a c h A 1 akzeptiert Nomen-Stämme. A2 akzeptiert Verbstämme. A akzeptiert Stämme, die sowohl Verb- als auch Nomen-Stämme sind Differenz (difference) L1 L Differenz regulärer Sprachen Definition L1 L2 = { x x L1 x L2} Bedeutung Seien L 1 und L 2 Sprachen über einem Alphabet Σ, dann enthält Beispiel L1 L2 alle Worte, die in L 1 aber nicht in L2 enthalten sind {bau, glas, honig, wald} - {bau, glas, lach, mach} = {honig, wald} Abgeschlossenheit ja. Reguläre Sprachen sind unter Differenzbildung abgeschlossen A1 A Differenz endlicher Automaten Definition [ A1 A2]( x) = [ A1 A2]( x) (Mohri/Riley 2002: I, 19) Bedingung A2 ungewichtet und deterministisch Bedeutung Konstruktion Konstruktionsschritte vgl. Komplementbildung: Wenn ein A bzw. T nicht vollständig ist (d.h. δ ist nur eine partielle Funktion, d.h. nicht für alle Zustände gibt es Kanten für alle Symbole aus Σ ), muss zuerst ein toter Zustand konstruiert werden, zu dem die fehlenden Übergänge führen. Haenelt, Operationen auf Akzeptoren und Transduktoren 18/25

19 A red/0.5 green/0.3 blue/ yellow/ B green red yellow blue A-B red/0.5 red/0.5 red/ green/0.3 green/0.3 blue/0 3 4 yellow/ (Mohri/Riley 2002: I, 24) Konstruktionsschritte B determinisieren (hier: vervollständigen) B green green blue yellow Komplementbildung von B red yellow blue red 3 red, green blue, yellow red green blue yellow B green blue yellow red yellow blue green red red 3 green blue red, green yellow blue, yellow Haenelt, Operationen auf Akzeptoren und Transduktoren 19/25

20 Schnittbildung von A 1 mit B A B Σ Q blue green red yellow [00] - [13] [01] - [01] - [11] [03] - [03] - [13] [03] - [11] [20] - - [22] [13] [23] - - [23] [20] [22] [23] f A-B yellow/ green/ blue/0 20 red/0.5 red/0.5 red/ green/0.3 green/0.3 blue/ yellow/ Tilgung der Pfade, die nicht zu akzeptierenden Zuständen führen, ergibt den in (Mohri/Riley 2002: I, 24) gezeigten Automaten (s.o.) Abgeschlossenheit Transduktoren sind nicht generell unter Differenzbildung abgeschlossen 5.11 Komposition (composition) T 1 T Komposition von Transduktoren Definition [ T 1 T 2]( x, y) = [ T 1]( x, z) [ T 2]( z, y) (Mohri/Riley 2002: I, 19) z T 1 = ( Q1, F1, Σ,, δ 1, σ 1, ρ1, q10) Haenelt, Operationen auf Akzeptoren und Transduktoren 20/25

21 T 2 = ( Q2, F 2,, Ω, δ 2, σ 2, ρ 2, q20) T = T 1 T 2 = ( Q1 Q2, F, Σ, Ω, δ, σ, ρ,{ q10, q20}) F = {( q1, q2) Q : q1 F1, δ 2( q2, ρ1( q1)) F 2 } a Σ, ( q1, q2) Q ( q1, q2) F δ (( q1, q2), = ( δ 1( q1,, δ 2( q2, σ 1( q1, )) σ (( q1, q2), = σ 2( q2, σ 1( q1, ) ρ (( q1, q2)) = σ 2( q2, ρ1( q1)) ρ 2( δ ( q2, ρ1( q1))) Bedingung Bedeutung (Mohri, 1997: 273) K (Menge der Gewichte) kommutativ verknüpft Die Komposition zweier Transduktoren ermöglicht es, zwei Transduktoren, die in Serie hintereinander laufen, durch einen komplexeren Tranduktor zu ersetzen. Komponiert werden hier zwei Funktionen, nämlich die Abbildungsfunktionen eines Transduktors T 1 und die eines Transduktors T 2 von der Eingabekette auf die Ausgabekette, In der Algebra ist eine Komposition (auch Verkettung) zweier Funktionen ist definiert als ( g h)( x) : = g( h( x)). Für die Verkettung der Abbildungsfunktionen von der Eingabekette auf die Ausgabekette gilt: T 1 T 2 T 1 T 2 Es gilt also: [ 1 T 2] ( Σ) = T 1( T 2( Σ)) T. Transduktor von Σ nach Transduktor von nach Ω Transduktor von Σ nach Ω Der komponierte Transduktor T 1 T 2 entsteht durch Schnittbildung der Ausgaben von T 1 mit den Eingaben von T 2. Haenelt, Operationen auf Akzeptoren und Transduktoren 21/25

22 Beispiel 1 T 1 T 2 [NP NP NP] das gute Beispiel T 2 T 1 [NP NP NP] dete adje nomn dete adje nomn das gute Beispiel Beispiel 2 1 c:a [0.3] T 1 a:b [0.1] a:a [0.4] 0 3 [0.6] b:a [0.2] b:b [0.5] 2 a:b [0.6] T 2 0 b:c [0.3] 1 a:b [0.4] 2 [0.7] Haenelt, Operationen auf Akzeptoren und Transduktoren 22/25

23 Zustandsmenge Q T1 QT 2 und gemeinsame Pfade bei Schnitt der Ausgabe von T 1 mit der Eingabe von T 2 0,0 1,0 2,0 3,0 a:b [0.1] b:c [0.3] 0,1 1,1 c:a [0.3] a:b [0.4] c:a [0.3] 0,2 1,2 a:b [0.6] 2,1 3,1 a:a [0.4] a:b [0.4] 2,2 a:a [0.4] a:b [0.6] 3,2 [0.6] [0.7] 0,3 1,3 2,3 3,3 0,0 T 1 T 2 a:c [0.4] 1,1 c:b [0.7] a:b [0.8] c:b [0.7] 1,2 3,2 a:b [1.0] [1.3] Beispiel nach Mohri/Riley 2002: I, 20 T 1 Σ w Σ w Σ w a b c 0 1 b a a a b Haenelt, Operationen auf Akzeptoren und Transduktoren 23/25

24 T 2 Ω w Ω w Ω w a b c c b b T 1 Σ Ω w Σ Ω w Σ Ω w T 2 a b c 0,0 1,1 c 0.4 0,1 0,2 1,0 1,1 3,2 b 0.8 1,2 b 0.7 1,2 3,2 b 1.0 1,2 b 0.9 2,0 2,1 2,2 3,0 3,1 3,2 1.3 Komplexität quadratisch: O(( Kanten 1 + Q 1 ) x ( Kanten 2 + Q 2 )) -Transitionen können zu vielerlei Pfaden führen (path multiplicity), z.b. :b - a: ; hierfür kürzer: a:b; zu erreichen über Komposition mit -Filter: T 1 F T 2. s. Mohri/Riley 2002: I,19-22 Implementierung o lazy implementation Abgeschlossenheit 6 Vielen Dank Für das Aufspüren von Fehlern in früheren Versionen und für Verbessrungsvorschläge danke ich: Maximilian Albert, Christian Roth. Haenelt, Operationen auf Akzeptoren und Transduktoren 24/25

25 7 Literatur Haenelt, Karin (2004). Minimierung endlicher Automaten. Kursfolien S. pdf:2, pdf:6, ppt Haenelt, Karin (2004). Determinisierung von Transducern. Eine Erläuterung des Algorithmus von Mohri. Kursfolien Seiten. html Hopcroft, John E. und Jeffrey D. Ullman (1988). Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie. Bonn u.a.: Addison-Wesley (engl. Original: Introduction to automata theory, languages and computation) Hopcroft, John E. Rajeev Motwani und Jeffrey D. Ullman (2001). Introduction to Automata Theory, Languages and Computation. Addison-Wesley. Kunze, Jürgen (2001). Computerlinguistik. Voraussetzungen, Grundlagen, Werkzeuge. Vorlesungsskript. Humboldt Universität zu Berlin. Mohri, Mehryar (1997). Finite State Transducers in Language and Speech Processing. In: Computational Linguistics, 23, 2, 1997, S Mohri, Mehryar und Michael Riley (2002). Weighted Finite-State Transducers in Speech Recognition (Tutorial). Teil 1: Teil 2: Haenelt, Operationen auf Akzeptoren und Transduktoren 25/25

Operationen auf endlichen Akzeptoren und Transduktoren

Operationen auf endlichen Akzeptoren und Transduktoren Operationen auf endlichen Akzeptoren und Transduktoren Kursfolien Karin Haenelt Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 ( 1 05.04.2004) 1 Notationskonventionen L reguläre

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

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

Ü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

Endliche Automaten. Grundlagen: Alphabet, Zeichenreihe, Sprache. Karin Haenelt

Endliche Automaten. Grundlagen: Alphabet, Zeichenreihe, Sprache. Karin Haenelt Endliche Automaten Grundlagen: Alphabet, Zeichenreihe, Sprache Karin Haenelt 1 Alphabet, Zeichenreihe und Sprache Alphabet unzerlegbare Einzelzeichen Verwendung: als Eingabe- und Ausgabezeichen eines endlichen

Mehr

Transduktoren für die Sprachverarbeitung: Komposition zweier Transduktoren. Karin Haenelt

Transduktoren für die Sprachverarbeitung: Komposition zweier Transduktoren. Karin Haenelt Transduktoren für die Sprachverarbeitung: Komposition zweier Transduktoren Karin Haenelt 28.5.2010 1 Themen Einführung Algorithmus für endlich-sequentielle Transduktoren Beispiele Beispiel 1: Erläuterung

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

Endliche Automaten. Minimierung. Karin Haenelt. Karin Haenelt, 2004, FSA-Minimierung, ( )

Endliche Automaten. Minimierung. Karin Haenelt. Karin Haenelt, 2004, FSA-Minimierung, ( ) Endliche Automaten Minimierung Karin Haenelt 1 Inhalt Vorteile eines Minimalautomaten Fälle für die Minimierung Minimierungsalgorithmus für deterministische endliche Automaten (mit totaler Übergangsfunktion)

Mehr

Parsing regulärer Ausdrücke. Karin Haenelt

Parsing regulärer Ausdrücke. Karin Haenelt Karin Haenelt 25.4.2009 1 Inhalt kontextfreie Grammatik für reguläre Ausdrücke Grundlagen Parsebaum: konkrete Syntax Syntaxbaum: abstrakte Syntax Algorithmus: rkennung Konstruktion des Syntaxbaumes 2 Grammatik

Mehr

1 Eliminieren von ɛ-übergängen

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

Mehr

Endliche Automaten. Deterministische Akzeptoren, nichtdeterministische Akzeptoren, nichtdeterministische Akzeptoren mit Epsilon-Übergängen

Endliche Automaten. Deterministische Akzeptoren, nichtdeterministische Akzeptoren, nichtdeterministische Akzeptoren mit Epsilon-Übergängen Endliche Automaten Deterministische Akzeptoren, nichtdeterministische Akzeptoren, nichtdeterministische Akzeptoren mit Epsilon-Übergängen Karin Haenelt 1 Themen 1. Endliche Automaten: Übersicht 2. Akzeptoren

Mehr

Transduktoren für die Sprachverarbeitung. Karin Haenelt

Transduktoren für die Sprachverarbeitung. Karin Haenelt Transduktoren für die Sprachverarbeitung Karin Haenelt 1 Themen Einführung Äquivalenzen: Transduktoren und reguläre Relationen Transduktoren Definitionen Transduktoren mit bestimmten Eigenschaften sequentielle

Mehr

Endliche Automaten. Akzeptoren. Karin Haenelt

Endliche Automaten. Akzeptoren. Karin Haenelt Endliche Automaten Akzeptoren Karin Haenelt 1 Inhalt Endliche Akzeptoren Definitionen Definitionen: Zustandsübergangsfunktionen Varianten endlicher Akzeptoren: DEA, NEA, ε-nea Zustandsübergangsfunktionen

Mehr

Der Earley-Algorithmus

Der Earley-Algorithmus Der Earley-Algorithmus Kursfolien Karin Haenelt 25.03.02 1 25.03.02 2 Inhalt Funktion des Earley-Algorithmus Begriffe Erkenner/Parser Kontextfreie Grammatik Ein Beispiel Funktionen des Algorithmus Funktionsweise

Mehr

Der Earley-Algorithmus

Der Earley-Algorithmus Der Earley-Algorithmus Kursfolien Karin Haenelt 25.03.02 1 25.03.02 2 Inhalt Funktion des Earley-Algorithmus Begriffe Erkenner/Parser Kontextfreie Grammatik Ein Beispiel Funktionen des Algorithmus Funktionsweise

Mehr

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

Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken 1 / 15 Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken Prof. Dr. Hans Kleine Büning FG Wissensbasierte Systeme WS 08/09 2 / 15 Deterministischer endlicher Automat (DEA) Definition 1:

Mehr

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

Überführung regulärer Ausdrücke in endliche Automaten Endliche Automaten Überführung regulärer Ausdrücke in endliche Automaten Karin Haenelt 1 Inhalt Anwendung: Spezifikation linguistischer Regeln Theoretische Basis: Äquivalenz regulärer Ausdrücke und endlicher

Mehr

Induktive Definition

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

Mehr

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

Automaten und Formale Sprachen SoSe 2013 in Trier

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

Mehr

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen

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

Mehr

Einführung in die Computerlinguistik Satz von Kleene

Einführung in die Computerlinguistik Satz von Kleene Einführung in die Computerlinguistik Satz von Kleene Dozentin: Wiebke Petersen 10.5.2010 Wiebke Petersen Einführung CL (SoSe2010) 1 Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von

Mehr

Theoretische Informatik für Medieninformatiker

Theoretische Informatik für Medieninformatiker Theoretische Informatik für Medieninformatiker Jan Johannsen Lehrveranstaltung im Sommersemester 27 / 6 Organisatorisches: Jede Lehrveranstaltungsstunde gliedert sich in einen Vorlesungsteil, dessen Länge

Mehr

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

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

Mehr

Diskrete Mathematik. Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom

Diskrete Mathematik. Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom Diskrete Mathematik Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom Zusammenfassung der letzten LVA Definition Ein ɛ-nea N = (Q, Σ, δ, S, F) ist gegeben durch eine endliche

Mehr

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier

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

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Tutorium 2 Professor Dr. Hartmut Schmeck Miniaufgabe * bevor es losgeht * Finden Sie die drei Fehler in der Automaten- Definition. δ: A = E, S, δ, γ, s 0, F, E = 0,1, S = s

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

Einführung in die Computerlinguistik Satz von Kleene

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

Mehr

Berechenbarkeitstheorie 1. Vorlesung

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

Mehr

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

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

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

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

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

Mehr

Finite-State Technology

Finite-State Technology Finite-State Technology Teil III: Automaten 1 Wiederholung Formale Grammatiken sind entweder axiomatische Systeme mit Ableitungsregeln oder Automaten. Beide beschreiben formale Sprachen. Formale Sprachen

Mehr

Formale Sprachen und endliche Automaten

Formale Sprachen und endliche Automaten Formale Sprachen und endliche Automaten Formale Sprachen Definition: 1 (Alphabet) Ein Alphabet Σ ist eine endliche, nichtleere Menge von Zeichen oder Symbolen. Ein Wort über dem Alphabet Σ ist eine endliche

Mehr

Proseminar TI: Kellerautomaten. 1 Motivation. 2 Einführung. Vortrag: Von Sebastian Oltmanns und Dorian Wachsmann. Dozent: Wolfgang Mulzer.

Proseminar TI: Kellerautomaten. 1 Motivation. 2 Einführung. Vortrag: Von Sebastian Oltmanns und Dorian Wachsmann. Dozent: Wolfgang Mulzer. Proseminar TI: Kellerautomaten Vortrag: 10.11.2015 Von Sebastian Oltmanns und Dorian Wachsmann. Dozent: Wolfgang Mulzer. 1 Motivation Wir kennen bereits die Chomsky-Hierarchie. Sie klassiziert formale

Mehr

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik Einführung in die Computerlinguistik Kontextfreie Sprachen und Pushdown-Automaten Dozentin: Wiebke Petersen WS 2004/2005 Wiebke Petersen Formale Komplexität natürlicher Sprachen WS 03/04 Wiederholung c

Mehr

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

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

Mehr

Informatik-Grundlagen

Informatik-Grundlagen Informatik-Grundlagen Komplexität Karin Haenelt 1 Komplexitätsbetrachtungen: Ansätze Sprachentheorie Klassifiziert Mengen nach ihrer strukturellen Komplexität Komplexitätstheorie Klassifiziert Probleme

Mehr

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

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

Mehr

Probeklausur Lösungen

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

Mehr

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

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}} 2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?

Mehr

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

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

Mehr

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

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

Mehr

Automatentheorie und formale Sprachen rechtslineare Grammatiken

Automatentheorie und formale Sprachen rechtslineare Grammatiken Automatentheorie und formale Sprachen rechtslineare Grammatiken Dozentin: Wiebke Petersen 17.6.2009 Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 1 Pumping lemma for regular languages

Mehr

Grundbegriffe der Informatik Tutorium 10

Grundbegriffe der Informatik Tutorium 10 Grundbegriffe der Informatik Tutorium 10 Tutorium Nr. 32 Philipp Oppermann 17. Januar 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Anwenundg regulärer Sprachen und endlicher Automaten

Anwenundg regulärer Sprachen und endlicher Automaten Proseminar Theoretische Informatik Dozent: Prof. Helmut Alt Anwenundg regulärer Sprachen und endlicher Automaten Madlen Thaleiser 30. Oktober 2012 Reguläre Sprachen Regulärer Ausdruck definiert über einem

Mehr

Endliche Automaten Jörg Roth 101

Endliche 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

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

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer, Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen

Mehr

Kapitel 2: Formale Sprachen Gliederung

Kapitel 2: Formale Sprachen Gliederung Gliederung. Einleitung und Grundbegriffe. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.. Chomsky-Grammatiken 2.2. Reguläre Sprachen Reguläre Grammatiken, ND-Automaten

Mehr

2.2 Nichtdeterministische endliche Automaten

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

Mehr

Automaten und Formale Sprachen

Automaten und Formale Sprachen Automaten und Formale Sprachen Einführung Ralf Möller Hamburg Univ. of Technology Übung Fr. 14:30-15:15 Max Berndt, D1025 Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik,

Mehr

5.2 Endliche Automaten

5.2 Endliche Automaten 114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch

Mehr

Einführung in die Computerlinguistik Satz von Kleene

Einführung in die Computerlinguistik Satz von Kleene Einführung in die Computerlinguistik Satz von Kleene Dozentin: Wiebke Petersen 17.11.2009 Wiebke Petersen Einführung CL (WiSe 09/10) 1 Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von

Mehr

Informatik III - WS07/08

Informatik III - WS07/08 Informatik III - WS07/08 Kapitel 5 1 Informatik III - WS07/08 Prof. Dr. Dorothea Wagner dwagner@ira.uka.de Kapitel 5 : Grammatiken und die Chomsky-Hierarchie Informatik III - WS07/08 Kapitel 5 2 Definition

Mehr

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

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

Mehr

Einführung in die Computerlinguistik Satz von Kleene

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

Mehr

Automaten und Formale Sprachen ε-automaten und Minimierung

Automaten und Formale Sprachen ε-automaten und Minimierung Automaten und Formale Sprachen ε-automaten und Minimierung Ralf Möller Hamburg Univ. of Technology Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik, Vieweg Verlag 2 Danksagung

Mehr

Diskrete Mathematik. Arne Dür Kurt Girstmair Simon Legner Georg Moser Harald Zankl

Diskrete 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

Mehr

2.6 Verdeutlichung verwendeter Begriffe

2.6 Verdeutlichung verwendeter Begriffe 2.6 Verdeutlichung verwendeter Begriffe endlich/finit: die Mengen der Zustände und der Ein- bzw. Ausgabezeichen sind endlich synchron: die Ausgabezeichen erscheinen synchron mit dem Einlauf der Eingabezeichen

Mehr

Grundbegriffe der Informatik Tutorium 11

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

Mehr

2.3 Abschlusseigenschaften

2.3 Abschlusseigenschaften 2.3 Abschlusseigenschaften 2.3 Abschlusseigenschaften In diesem Abschnitt wollen wir uns mit Abschlusseigenschaften der regulären Sprachen, d.h. mit der Frage, ob, gegeben eine Operation und zwei reguläre

Mehr

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 15 + 16 vom 17.12.2012 und 20.12.2012 Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

Mehr

Endliche Akzeptoren. Inhalt

Endliche Akzeptoren. Inhalt Endliche Akzeptoren Inhalt Endliche Akzeptoren... 1 1 Endliche Akzeptoren... 2 1.1 Vorbemerkung zur Darstellungsweise... 2 1.2 Definitionen: Zustandsübergangsfunktion... 3 2 Varianten endlicher Akzeptoren...

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Automatentheorie und formale Sprachen

Automatentheorie und formale Sprachen Automatentheorie und formale Sprachen VL 8 Chomsky-Grammatiken Kathrin Hoffmann 23. Mai 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 23.5. 2012 250 Wortproblem Wortproblem ist das

Mehr

Das Pumping-Lemma Formulierung

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

Mehr

THIA - Übungsblatt 2.

THIA - Übungsblatt 2. THIA - Übungsblatt 2. Aufgabe 12 (Eine einfache Sprache). Endliche Ziffernfolgen, die mit einer 0 beginnen, auf die mindestens eine weitere Ziffer folgt, wobei nur die Ziffern 0,..., 7 vorkommen, sollen

Mehr

Die mathematische Seite

Die mathematische Seite Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion

Mehr

Einführung in die Informatik

Einführung in die Informatik Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle 24. November 28 Einführung in die Informatik Übung 7 Allgemeines Für die Abgabe der

Mehr

Grundbegriffe der Informatik Tutorium 33

Grundbegriffe der Informatik Tutorium 33 Tutorium 33 02.02.2017 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Gliederung 1 2 3 Ein ist ein Tupel A = (Z, z 0, X, f, Y, h)

Mehr

1 Lokale Sprachen. 2 Verallgemeinerung

1 Lokale Sprachen. 2 Verallgemeinerung 1 Lokale Sprachen Es soll um Sprachen gehen die nur aufgrund ihrer Teilworte einer festen Länge entschieden werden können. Anschaulich heisst dies man kann ein Fenster der Länge k über das Eingabewort

Mehr

Automatentheorie und formale Sprachen

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

Mehr

Überführung regulärer Ausdrücke in endliche Automaten. Der Algorithmus von Glushkov und McNaughton/Yamada

Überführung regulärer Ausdrücke in endliche Automaten. Der Algorithmus von Glushkov und McNaughton/Yamada Überführung regulärer Ausdrücke in endliche Automaten Der Algorithmus von Glushkov und McNaughton/Yamada Karin Haenelt 14.5.2010 1 Inhalt Quelle Prinzip des Algorithmus Algorithmus Parsing des regulären

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Einheit 2.5 Eigenschaften regulärer Sprachen. Abschlußeigenschaften 2. Prüfen von Eigenschaften 3. Wann sind Sprachen nicht regulär? Abschlußeigenschaften, wozu? Zeige, daß bestimmte

Mehr

Einführung in die Computerlinguistik deterministische und nichtdeterministische endliche Automaten

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

Mehr

Unentscheidbare Probleme bei formalen Sprachen

Unentscheidbare Probleme bei formalen Sprachen Unentscheidbare Probleme bei formalen Sprachen Maximilian Zagler 22.01.2008 Freie Universität Berlin, Institut für Informatik Proseminar Theoretische Informatik WS 07/08 Dozent: Prof. Dr. Helmut Alt 1

Mehr

Automatentheorie und formale Sprachen Pumping-Lemma für reguläre Sprachen

Automatentheorie und formale Sprachen Pumping-Lemma für reguläre Sprachen Automatentheorie und formale Sprachen Pumping-Lemma für reguläre Sprachen Dozentin: Wiebke Petersen 10.6.2009 Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 1 Finite-state automatons accept

Mehr

Kurz-Skript zur Theoretischen Informatik I

Kurz-Skript zur Theoretischen Informatik I Kurz-Skript zur Theoretischen Informatik I Inhaltsverzeichnis 1 Grundlagen 2 2 Reguläre Ausdrücke 4 3 Endliche Automaten 5 3.1 Vollständige endliche Automaten................................... 6 3.2 ε

Mehr

Software Engineering Ergänzung zur Vorlesung

Software Engineering Ergänzung zur Vorlesung Ergänzung zur Vorlesung Prof. Dr. Markus Müller-Olm WS 2008 2009 2.6.1 Endliche und reguläre Sprachen Endliche und reguläre Sprache: fundamental in vielen Bereichen der Informatik: theorie Formale Sprachen

Mehr

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

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64 Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Pumping Lemma Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges

Mehr

Automaten und Formale Sprachen SoSe 2013 in Trier

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

Mehr

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

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

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Tutorium 2 Professor Dr. Hartmut Schmeck Miniaufgabe * bevor es losgeht * Finden Sie die drei Fehler in der Automaten- Definition. δδ: AA = EE, SS, δδ, γ, ss 0, FF, EE = 0,1,

Mehr

Determinisierung von Transduktoren

Determinisierung von Transduktoren Determinisierung von Transduktoren Inhalt Determinisierung von Transduktoren... Beschreibung der Funktion... 2 Grundgedanken und Beispiele... 2 2. Sequentialisierung... 2 2.2 Prinzip des Algorithmus: Teilmengenkonstruktion...

Mehr

Theorie der Informatik

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

Mehr

Das Pumping Lemma: Ein Anwendungsbeispiel

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

Mehr

Determinisierung von endlichen Automaten

Determinisierung von endlichen Automaten Thomas Hanneforth Institut für Linguistik Universität Potsdam May 14, 2014 Thomas Hanneforth (Universität Potsdam) May 14, 2014 1 / 21 Outline 1 Einführung 2 Beispiel 3 Ein verbesserter Determinisierungsalgorithmus

Mehr

Automaten und Coinduktion

Automaten und Coinduktion Philipps-Univestität Marburg Fachbereich Mathematik und Informatik Seminar: Konzepte von Programmiersprachen Abgabedatum 02.12.03 Betreuer: Prof. Dr. H. P. Gumm Referentin: Olga Andriyenko Automaten und

Mehr

ALP I Turing-Maschine

ALP I Turing-Maschine ALP I Turing-Maschine Teil I WS 2012/2013 Äquivalenz vieler Berechnungsmodelle Alonzo Church λ-kalkül Kombinatorische Logik Alan Turing Turing-Maschine Mathematische Präzisierung Effektiv Berechenbare

Mehr

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann

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

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. Sascha Böhme, Lars Noschinski Sommersemester 2 Lösungsblatt 2 3. Mai 2 Einführung in die Theoretische Informatik Hinweis:

Mehr

Mathematische Grundlagen

Mathematische Grundlagen Mathematische rundlagen raphen und Operationen auf raphen Karin Haenelt 1 raphen Definitionen Operationen auf raphen raph-repräsentationen 2 Vorbemerkung Wenn hier von Knoten und Kanten gesprochen wird,

Mehr

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

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch TU Dresden, 17. Oktober 2016 Rückblick Markus Krötzsch, 17. Oktober 2016 Formale Systeme Folie 2 von 31 Wiederholung Mit Grammatiken können

Mehr

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

Der Earley-Algorithmus.

Der Earley-Algorithmus. 1 Der Earley-Algorithmus. Eine Erläuterung der formalen Spezifikation mit linguistischen Beispielen Kursskript Karin Haenelt, 25.07.2001 1 Einleitung In diesem Skript wird die formale Spezifikation des

Mehr