Endliche Automaten Einführung in den Themenbereich

Slides:



Advertisements
Ähnliche Präsentationen
Baumautomaten Christian Klein Betreuer : Tim Priesnitz
Advertisements

Christian Schindelhauer
Institut für Informatik Abt. Intelligente Systeme
8. Formale Sprachen und Grammatiken
3. Berechenbarkeit Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar? Intuitiv: Wenn es einen Algorithmus gibt, der sie berechnet! Was heißt,
Theoretische Informatik und Algorithmen Post und Kleene.
Art der Arbeit (Projekt-/Studien-/Diplomarbeit/
Grammatiken, Definitionen
Christian Schindelhauer
Formale Sprachen – Mächtigkeit von Maschinenmodellen
Automatentheorie „Berechnungsmodell für logische Sprachen“
Stoyan Mutafchiev Betreuer: Ilhan, Tim
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (02 – Endliche Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (03 – Nichtdeterminierte endliche Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (17 –Turingmaschinen) Prof. Dr. Th. Ottmann.
Reguläre Sprachen Karin Haenelt.
Endliche Automaten Akzeptoren
Grundbegriffe der Wahrscheinlichkeitstheorie
Transduktoren für die Sprachverarbeitung
Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung
1 Endliche Automaten in der Sprachtechnologie Einführung Karin Haenelt
Formale Grundlagen der Faktenextraktion mit endlichen Automaten
Endliche Automaten Überführung regulärer Ausdrücke in endliche Automaten Karin Haenelt
Reguläre Ausdrücke Karin Haenelt
© Karin Haenelt 2006, Äquivalenzen Reg.Ausdrücke, Reg.Sprachen, EA ( ) 1 Reguläre Sprachen Karin Haenelt.
1 Endliche Automaten in der Sprachtechnologie Kursthemen Karin Haenelt
Parsing regulärer Ausdrücke
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, ( ) 1 Operationen auf endlichen Akzeptoren und Transduktoren.
Endliche Automaten in der Sprachtechnologie
© Karin Haenelt 2005, Endliche Automaten: Alphabet, Zeichenreihe, Sprache, Endliche Automaten Grundlagen: Alphabet, Zeichenreihe, Sprache.
Transduktoren für die Sprachverarbeitung: Komposition zweier Transduktoren Karin Haenelt
Mathematische Grundlagen
© Karin Haenelt, Transduktoren, Transduktoren für die Sprachverarbeitung Vereinigung von Transduktoren Karin Haenelt Karin Haenelt, Transduktoren,
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Überführung regulärer Ausdrücke in endliche Automaten Der Algorithmus von Glushkov und McNaughton/Yamada Karin Haenelt
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Endliche Automaten Informatik JgSt. 13, Abitur 2009
Grenzen der Regularität
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
Eine Präsentation von Lena Sauter & Corinna Nawatzky
Generalisiertes Vektorraummodell (Generalized Vector Space Model, GSVM) Karin Haenelt
Akzeptor & Sprache.
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Städtisches Gymnasium Beverungen Friedel Berlage
Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S  Ac | Bd A  aAb | ab B  aBbb | abb Definieren Sie.
Technische Informatik II
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
Arne Vater Wintersemester 2006/ Vorlesung
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Wintersemester 2005 / Vorlesung
Sprachneuerungen des .NET Frameworks 3.5
Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele (Frist: ) Beispiel 1: Sei  = {a, b} ein Alphabet und Q = {q 0, q 1 } eine.
Die Fragen Wörter Wer? Was? Wann?.
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Stephanie Müller, Rechtswissenschaftliches Institut, Universität Zürich, Rämistrasse 74/17, 8001 Zürich, Criminal liability.
Literary Machines, zusammengestellt für ::COLLABOR:: von H. Mittendorfer Literary MACHINES 1980 bis 1987, by Theodor Holm NELSON ISBN
? What is Open PS? SAP Open PS based on EPS 4.0
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
(Name of presenter) (Short title of presentation).
Automatentheorie Jendrik und Jeyhannes. Allgemeines Modelle mit Zuständen, die Eingaben annehmen und Ausgaben erstellen Endliche Automaten Auch Zustandsmaschine.
Your Logo Presentation Title Presentation Subtitle.
FREE ICONS POWERPOINT TEMPLATE.
 Präsentation transkript:

Endliche Automaten Einführung in den Themenbereich Karin Haenelt 18.04.2010

Inhalt Informelle Einführung: Was sind endliche Automaten? Abstrakte Automaten Endliche abstrakte Automaten Beispiele T ypen endlicher Automaten Akzeptoren, Transduktoren deterministisch, nicht-deterministisch, stochastisch Definitionen Abstrakte Automaten als mathematische Strukturen Einordnung endlicher Automaten Automatentheorie: Art des Speichers Theorie formaler Sprachen: Strukturelle Komplexität © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Informelle Einführung Abstrakter Automat ein abstrakter Automat ist ein mathematisches Modell für einfache Maschinen/Programme, die bestimmte Probleme lösen beschreibt nicht einen bestimmten Automaten, sondern gemeinsame Grundprinzipien einer Klasse von Automaten Grundlegende Komponenten Zustände Eingabesymbole Zustandsübergänge: reagiert auf Eingaben durch Übergang in einen anderen Zustand Zustände des Automaten Eingabe Ausgabe © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Informelle Einführung Endlicher abstrakter Automat Ein abstrakter Automat ist ein „endlicher Automat“, wenn die Anzahl der Zustände, der Eingaben u. der Ausgaben endlich ist Komponenten der Modelle endliche Menge von Zuständen (Q) interne Konfigurationen, in denen sich ein System befinden kann zeitliche Ordnung (δ) definiert die möglichen Sequenzen von Zuständen endliche Menge von Eingaben (Σ) endliche Menge von Ausgaben (Reaktionen) (Δ) System zeigt abhängig vom aktuellen Zustand eine bestimmte Reaktion und geht in einen Folgezustand über © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Endliche Automaten: Beispiele Kippschalter und Lexikon an aus Start drücken Lexikon d 1 e 2 m 3 n r 5 s 4 7 6 © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Typen endlicher Automaten Akzeptoren Automaten ohne Ausgabe Transduktoren Automaten mit Ausgabe deterministisch jedem Paar [p,i] ist ein Paar [o,q] eindeutig zugeordnet nicht-deterministisch einem Paar [p,i] können mehrere mögliche Paare [o,q] zugeordnet sein stochastisch jedem Paar [p,i] ist für ein Paar [o,q] ein Wahrscheinlichkeitsmaß zugeordnet p q i o p q2 q1 i o2 o1 p q2 q1 i o2/w2 o1/w1 © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Typen endlicher Automaten Beispiele Akzeptor Transduktor deterministisch 1 S q t 2 3 a 6 d 4 7 5 1 [ʃ] S q [t] t 2 3 [a] a dt 4 tt nicht-deterministisch 1 S 7 t 2 3 a 9 d 4 6 8 10 5 1 [ʃ] S q [t] t 2 3 [a] a 6 d 4 7 5 stochastisch 1 S/1 q t/1 2 3 a/1 6 d/.65 4 t/.35 7 5 [t] 1 [ʃ] S/1 q t/1 2 3 [a] a/1 6 d/.65 4 t/.35 7 5 © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Inhalt Informelle Einführung: Was sind endliche Automaten? Abstrakte Automaten Endliche abstrakte Automaten Beispiele T ypen endlicher Automaten Akzeptoren, Transduktoren deterministisch, nicht-deterministisch, stochastisch Definitionen Abstrakte Automaten als mathematische Strukturen Einordnung endlicher Automaten Automatentheorie: Art des Speichers Theorie formaler Sprachen: Strukturelle Komplexität © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Definitionen Abstrakte Automaten als mathematische Strukturen: Historie David A. Huffman (1954), George H. Mealy (1955) und Edward F. Moore (1956) untersuchten Schaltkreise beschrieben voneinander unabhängig den konventionellen deterministischen Automaten in ähnlichen Varianten Huffman entwickelte den Begriff des abstrakten Automaten Mealy und Moore führten abstrakte Automaten als mathematische Strukturen ein. © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Definitionen Mathematische Struktur Eine Struktur  ist eine Zusammenfassung einer Menge und ausgewählter interessanter Eigenschaften dieser Menge Relationen, Funktionen und/oder ausgezeichnete Elemente die Eigenschaften definieren eine Struktur auf der Menge Darstellung als Tupel  = (Menge, Relation1, …, Relationo, ausgezeichnetes Element1, .., Ep) Beispiel (ℕ, +,×, 0,1) Name dieser Beispielstruktur in der abstrakten Algebra: Semiring Semiringe spielen in der Theorie endlicher Automaten eine grundlegende Rolle © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Definitionen Determinierter abstrakter Automat Mengentheoretische Definition (Version: Starke 1.1) determinierter abstrakter Automat (Starke 1969: 22) A = (X, Y, Z, γ) heißt determinierter abstrakter Automat, falls X, Y, Z beliebige nichtleere Mengen sind, und γ eine auf Z  X definierte Funktion ist, deren Werte in Y  Z liegen. ■ Interpretation X Menge der Eingabesymbole Y Menge der Ausgabesymbole Z Menge der Zustände Z × X a b Y × Z A 1 B © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Definitionen Determinierter abstrakter Automat Mengentheoretische Definition (Version: Starke 1.2 = Version Mealy 1955) determinierter Mealy-Automat (Starke 1969: 22) Ein determinierter Automat A = (X, Y, Z, γ) heißt determinierter Mealy-Automat, falls für alle x X, zZ, γ(z,x) = [λ(z,x),δ(z,x)] ist, wobei λ die Ergebnis und δ die Überführungsfunktion von A ist. ■ Interpretation X Menge der Eingabesymbole Y Menge der Ausgabesymbole Z Menge der Zustände λ(z,x ) a b A B δ(z,x ) a b 1 © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Defintionen Nichtdeterministischer und stochastischer Automat Mengentheoretische Definition nichtdeterministischer Automat (Starke 1969: 121) B = (X, Y, Z, h) heißt nicht-deterministischer Automat, falls X, Y, Z nichtleere Mengen sind, und h eine eindeutige Abbildung von Z  X in *(Z  Y) ist. ■ (Starke 1969: 121) stochastischer Automat (Starke 1969: 211) C = (X, Y, Z, H) heißt stochastischer Automat, wenn X, Y, Z beliebige nichtleere Mengen sind, und H eine auf Z  X definierte Funktion ist, die diskrete Wahrscheinlichkeitsmaße über Y  Z als Werte H(z,x) hat ■ © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Definitionen Endlicher Automat Mengentheoretische Definition endlicher determinierter Automat (Starke 1969: 25) Ein determinierter Automat A = [X,Y,Z,δ,λ] heißt X-endlich, Y-endlich bzw. Z-endlich bzw. (X,Y)-endlich usw., wenn die jeweils angegebenen Mengen endlich sind. (X,Y,Z)-endliche Automaten bezeichnen wir schlechthin als endlich ■ (X,Y,Z)-endliche nichtdeterministische Automaten …endlich. (X,Y,Z)-endliche stochastische Automaten … endlich. © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Definitionen Mengentheoretische Notation endlicher Automaten – eine Standardnotation EA = (Q,q0,F,Σ,Δ,,δ,σ,ρ) p,q  Q Zustände p q i o Zustand Folgezustand Eingabesymbol Ausgabesymbol w / Gewicht q0  Q Startzustand F  Q Endzustände i  Σ Eingabesymbole o  Δ Ausgabesymbole w   Gewichte δ(p,i) = q Zustandsübergangsfunktion σ(p,i,q) = o Ausgabefunktion ρ(p,i,o,q) = w Gewichtungsfunktion © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Inhalt Informelle Einführung: Was sind endliche Automaten? Abstrakte Automaten Endliche abstrakte Automaten Beispiele T ypen endlicher Automaten Akzeptoren, Transduktoren deterministisch, nicht-deterministisch, stochastisch Definitionen Abstrakte Automaten als mathematische Strukturen Einordnung endlicher Automaten Automatentheorie: Art des Speichers Theorie formaler Sprachen: Strukturelle Komplexität © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Einordnung endlicher Automaten Automatentheorie Klassifikation von Algorithmen nach der Art des Speichers klassifiziert Algorithmen nach der Art des Speichers, der für die Implementierung zum Merken von Zwischergebnissen gebraucht wird Speziali- sierungen © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Einordnung endlicher Automaten Automatentheorie Endliche Automaten haben kein Gedächtnis Mengen der Zustände, der Eingabesignale, der Ausgabesignale sind endlich kein Gedächtnis zur Speicherung durchlaufener Zustände: Übergang von Zustand zur Zeit t in Zustand zur Zeit t+1 nur abhängig von Zustand zur Zeit t und Eingabe im Zustand zur Zeit t Vorhergehende Zustände nur dadurch wirksam, dass sie über eine bestimmte Eingabe in den aktuellen Zustand geführt haben, und dieser aktuelle Zustand ein bestimmtes Ergebnis repräsentiert. B Bu Buc Buch Start u c h © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Einordnung endlicher Automaten Theorie formaler Sprachen mit endlichen Automaten ist die Klasse der regulären Sprachen erkennbar und generierbar Sprachklassen nach struktureller Komplexität (Chomsky-Hierarchie) © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Äquivalenzen: Endliche Automaten, reguläre Sprachen, reguläre Ausdrücke de([mnrs]|“ssen“) sind äquivalent spezifizieren d 1 e 2 m 3 n r 5 s 4 7 6 Endliche Automaten {dem, den, der, des, dessen} Reguläre Sprachen akzeptieren © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Literatur Hopcroft, John E. Rajeev Motwani und Jeffrey D. Ullman (2001). Einführung in die Automatentheorie, Formale Sprachen und Komplexität. Pearson Studium engl. Original: Introduction to Automata Theory, Languages and Computation. Addison-Wesley. Hopcroft, John E. und Jeffrey D. Ullman (1988). Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie. Bonn u. a.: Addison-Wesley, 1988 (engl. Original Introduction to automata theory, languages and computation). [Anm.: Diese Fassung enthält die Beweise] Huffman, D. A. (1954). The synthesis of sequential switching circuits. J. Franklin Inst. 257: 3-4, S. 161-190 und 275-303 Lawson, Mark V. (2005). Finite automata. In: Hritsu-Varsakelis, D. und W.S.Levine (Hg).: Handbook of networked and embedded Control Systems. Lawson, Mark V. (2004). Finite Automata. In: D. Hristu-Varsakelis and W. S. Levine (eds.): Handbook of networked and embedded control systems Mealy, George H. (1955). A method for synthesizing sequential circuits. Bell System Technical Journal 34:5, 1045-1079 Moore, Edward F. (1956). Gedanken experiments on sequential machines. In: Automata Studies, S. 129-153, Princeton: Princeton University Press Starke, Peter H. (1969). Abstrakte Automaten. VEB Deutscher Verlag der Wissenschaften: Berlin (ältere, aber sehr gute mathematische Darstellung) © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Copyright © 2009 Karin Haenelt. All rights reserved. The German Urheberrecht shall be applied to these slides. In accordance with these laws these slides are a publication which may be quoted and used for non-commercial purposes, if the bibliographic data is included as described below. Please quote correctly. If you use the presentation or parts of it for educational and scientific purposes, please include the bibliographic data (author, title, date, page, URL) in your publication (book, paper, course slides, etc.). Deletion or omission of the footer (with name, data and copyright sign) is not permitted Bibliographic data. Karin Haenelt (2010). Endliche Automaten. Einführung in den Themenbereich. Kursfolien 18.4.2010 http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_FSA-IntroV4.pdf Any further use requires the prior permission in writing from the author. For commercial use: No commercial use is allowed without written permission from the author. In case you are interested in commercial use please contact the author. Court of Jurisdiction is Darmstadt. © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010

Versionen v 4.1- 18.04.2010, v 4.0 – 30.03.2009 V03.01 – 16.04.2008 V03.00 – 12.04.2008 V02.03 - 14.04.2007 V02.02 - 11.04.2007 V02.01 - 15.04.2006 © Karin Haenelt, Endliche Automaten, Einführung, V 4.1, 18.04.2010