Endliche Automaten Überführung regulärer Ausdrücke in endliche Automaten Karin Haenelt 25.4.2009.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen (EI)
Advertisements

Baumautomaten Christian Klein Betreuer : Tim Priesnitz
Christian Schindelhauer
Art der Arbeit (Projekt-/Studien-/Diplomarbeit/
Einführung in Berechenbarkeit und Formale Sprachen
Grammatiken, Definitionen
Automatentheorie „Berechnungsmodell für logische Sprachen“
Stoyan Mutafchiev Betreuer: Ilhan, Tim
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (05 – Reguläre Ausdrücke) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
Basisinformationstechnologie I Dozent T.Schaßan Ableitungsbaum Referentin: Munkhnast Dembereldalai.
Endliche Automaten Einführung in den Themenbereich
Reguläre Sprachen Karin Haenelt.
Endliche Automaten Akzeptoren
Transduktoren für die Sprachverarbeitung
1 Endliche Automaten in der Sprachtechnologie Einführung Karin Haenelt
1 Abstrakte Operatoren für komplexe reguläre Ausdrücke Karin Haenelt
Formale Grundlagen der Faktenextraktion mit endlichen Automaten
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
© Karin Haenelt, Modellierung Menschlicher.Sprachen mit Regulären Ausdrücken, Modellierung menschlicher Sprachen mit Regulären Ausdrücken.
Parsing regulärer Ausdrücke
Mathematische Grundlagen
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, ( ) 1 Operationen auf endlichen Akzeptoren und Transduktoren.
Erweiterte Fassung Karin Haenelt, IR-Evaluierung Evaluierung von Information Retrieval Systemen Kursfolien Karin Haenelt.
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
© Karin Haenelt, Transduktoren, Transduktoren für die Sprachverarbeitung Vereinigung von Transduktoren Karin Haenelt Karin Haenelt, Transduktoren,
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Theoretische Informatik 2
Can you think of some KEY phrases which would be useful in multiple contexts? Take 2 minutes with a partner and come up with as many as you can!
Überführung regulärer Ausdrücke in endliche Automaten Der Algorithmus von Glushkov und McNaughton/Yamada Karin Haenelt
Herzlich Willkommen zu „Einführung in die Programmierung mit Java“
| DC-IAP/SVC3 | © Bosch Rexroth Pneumatics GmbH This document, as well as the data, specifications and other information set forth in.
Klassische Information Retrieval Modelle Einführung Kursfolien Karin Haenelt
XML-Query. Übersicht Was ist XML-Query? Vergleich RDB XML-Dokument Syntaktisches und Use-Cases Kritik und Diskussion.
Guten Morgen!.
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Christian Schindelhauer Wintersemester 2006/07 1. Vorlesung
Christian Schindelhauer Wintersemester 2006/07 3. 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.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Sprachneuerungen des .NET Frameworks 3.5
Review of Verb Tense & Expressing Opinions
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
E STUNDE Deutsch AP. Freitag, der 19. April 2013 Deutsch AP (E Stunde)Heute ist ein G Tag Goal: to understand authentic written text, audio material and.
? What is Open PS? SAP Open PS based on EPS 4.0
Possessive Adjectives How to show belonging… The information contained in this document may not be duplicated or distributed without the permission of.
E STUNDE Deutsch AP. Dienstag, der 23. April 2013 Deutsch AP (E Stunde)Heute ist ein B Tag Goal: to understand authentic written text, audio material.
Übung Macht den Meister! (Practice Makes Perfect!)
The Chicago Style (2 e-publication) -1- The Practice of Citing Scientific Sources in the Chicago Style Part 2 - Electronic sources -
© 2012 IBM Corporation © 2013 IBM Corporation IBM Storage Germany Community Josef Weingand Infos / Find me on:
Technische Universität München Institute of Aeronautical Engineering Prof. Dr.-Ing. Horst Baier Presentation of the Institute (December 2009)
(Name of presenter) (Short title of presentation).
Custom error page for timeout Gergely Andó / Application Innovation July 10, 2013 Customer.
Your Logo Presentation Title Presentation Subtitle.
FREE ICONS POWERPOINT TEMPLATE.
Safe but attractive. Bike accessories
Dativ Sven Koerber-Abe, 2015.
WIE DER APOSTEL LEBE DEINE BERUFUNG!
 Präsentation transkript:

Endliche Automaten Überführung regulärer Ausdrücke in endliche Automaten Karin Haenelt 25.4.2009

Inhalt Anwendung: Spezifikation linguistischer Regeln Theoretische Basis: Äquivalenz regulärer Ausdrücke und endlicher Automaten Überführung regulärer Ausdrücke in endliche Automaten Vorbereitung: Parsing regulärer Ausdrücke Algorithmus von Thompson Algorithmus von Glushkov und von McNaughton/Yamada Algorithmus von Fox © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Linguistische Anwendungen: Lexikon (ab) (aber) ... (denk:denk) (dach:denk) start a b e r 1 2 3 4 d e a n c k h 5 6 7 k e n 8 9 © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Linguistische Anwendungen: Regeln Stamm (Fuge? Stamm)* Flexiv 1 3 start Stamm Flexiv Fuge 2 Artikel? Adjektiv* Nomen Adjektiv Adjektiv start Artikel Nomen 1 2 Nomen © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Inhalt Anwendung: Spezifikation linguistischer Regeln Theoretische Basis: Äquivalenz regulärer Ausdrücke und endlicher Automaten Überführung regulärer Ausdrücke in endliche Automaten Vorbereitung: Parsing regulärer Ausdrücke Algorithmus von Thompson Algorithmus von Glushkov und von McNaughton/Yamada Algorithmus von Fox © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Äquivalenzen Endliche Automaten Reguläre Ausdrücke spezifizieren akzeptieren sind äquivalent Sprachen © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Äquivalenzen: Beispiel e = (dete,adje,nomn) | (dete,nomn) | (adje,nomn) | (nomn) e = (dete|ε) (adje|ε) nomn e = dete? adje? nomn spezifizieren beschreiben L(e) = L(A) = { (dete,adje,nomn), (dete,nomn), (adje, nomn), (nomn) } dete 1 adje 2 nomn 3 A erkennen © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Äquivalenz endlicher Automaten und regulärer Ausdrücken Satz: Die von endlichen Automaten akzeptierten Sprachen sind genau die Sprachen, die durch reguläre Ausdrücke spezifiziert werden können. Beweis durch Konstruktion eines endlichen Automaten zu einem regulären Ausdruck und umgekehrt Konstruktion RegEx → EA Beispiel für Konstruktion eines εNEA: nach Thompson (1968) auch andere Verfahren bekannt Hopcroft/Ullmann 1988:29 © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Äquivalenz endlicher Automaten und regulärer Ausdrücke Satz (zum Thompson-Verfahren). Sei E ein regulärer Ausdruck. Dann gibt es einen εNEA, der L(E) akzeptiert Beweis mit Thompson-Konstruktion Wir zeigen durch Induktion über die Struktur der Operatoren im regulären Ausdruck, dass es einen NEA M mit ε-Transitionen und einem Endzustand, aus dem keine Transitionen herausführen, gibt, so dass L(M) = L(E) Induktionsanfang: elementare reguläre Ausdrücke Induktionsschritt: zusammengesetzte reguläre Ausdrücke Vereinigung Konkatenation Kleenesche Hülle © Kari n Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Prinzip des Beweises der Äquivalenz regulärer Ausdrücke und endlicher Automaten (mit Thompson-Konstruktion) Angabe von Automaten für elementare reguläre Ausdrücke zusammengesetzte reguläre Ausdrücke Feststellung durch einfache Beobachtung: die Sprachen L(M), die von den Automaten akzeptiert werden und die Sprachen L(E), die von den regulären Ausdrücken beschrieben werden sind identisch RegEx L(E) EA Reguläre Sprachen L(M) © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Beweis Induktionsanfang: elementare reguläre Ausdrücke Feststellung durch einfache Beobachtung: Automat akzeptiert nur ε , ist also äquivalent zu E = ε E = ε Automat hat keine Kante vom Startzustand zum Zielzustand, ist also äquivalent zu E = Ø E = {} a Automat akzeptiert nur a, ist also äquivalent zu E = a E = a © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Beweis Induktionsschritt: zusammengesetzte Ausdrücke Pfade vom Start- zum Zielzustand: durch den Automaten R oder durch den Automaten S. EA ist also äquivalent zu E = R|S S R E=R|S Pfade vom Start- zum Zielzustand: erst durch den Automaten R, dann durch den Automaten S. EA ist also äquivalent zu E = RS R S E=RS R Pfade vom Start- zum Zielzustand: gar nicht, einmal oder mehrmals durch den Automaten für R. EA ist also äquivalent zu E = R* E=R* © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Inhalt Anwendung: Spezifikation linguistischer Regeln Theoretische Basis: Äquivalenz regulärer Ausdrücke und endlicher Automaten Überführung regulärer Ausdrücke in endliche Automaten Vorbereitung: Parsing regulärer Ausdrücke Algorithmus von Thompson Algorithmus von Glushkov und von McNaughton/Yamada Algorithmus von Fox © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Thompson-Konstruktion Algorithmen Thompson-Konstruktion für allgemeine Ausdrücke erzeugt einen ε -NEA meist als Standardverfahren und Beweis der Äquivalenz regulärer Ausdrücke und endlicher Automaten vorgestellt Glushkov oder McNaughton/Yamada-Konstruktion erzeugt einen DEA interessant für linguistische Anwendungen Fox-Konstruktion für Ausdrücke, die nur durch Konkatenation gebildet werden (Lexika) © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Übersicht der Algorithmen © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

Literatur Erkennung regulärer Ausdrücke Algorithmus von Thompson 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). Hopcroft, John E., Rajeev Motwani und Jeffrey D. Ullman (2002). Einführung in die Automatentheorie, Formale Sprachen und Komplexität. Pearson Studium engl. Original: Introduction to Automata Theory, Languages and Computation. Addison-Wesley. www-db.stanford.edu/~ullman/ialc.html Algorithmus von Thompson Thompson, Ken (1968). Regular expression search algorithms. In: CACM 11(6): 419-422. Algorithmus von Glushkov und McNaughton/Yamada Glushkov, Viktor M.(1961). The abstract theory of automata. In: Russian Mathematical Surveys 16, S. 1-53. Glushkov, Viktor M.(1960). On Synthesis Algorithm for Abstract Automata, Ukr. Mathem. Zhurnal, 12(2), S.147-156. Aho, Alfred V.; Sethi, Ravi und Jeffrey D. Ullman (1986). Compilers. Principles, Techniques and Tools. Addison-Wesley Publishing Company. (S. 141) McNaughton, Robert und Hisao Yamada (1960). Regular expressions and state graphs for automata. In IEEE Transactions on Electronic Computers 9 (1): S. 39-47. © Karin Haenelt, Endliche Automaten, Akzeptoren, 20.4.2009

Literatur Algorithmus von Fox Fox, Christopher J. (1992). Lexical Analysis and Stoplists. In: Frakes, William; Baeza-Yates, Ricardo (eds.): Information Retrieval. Data Structures and Algorithms. Prentice Hall: New Jersey, 1992, Kap. 7 (S.102-130) http://www-lsi.upc.es/~rbaeza/iradsbook/irbook.html http://www.dcc.uchile.cl/~rbaeza/iradsbook/ (Inhaltsverzeichnis und Programme in C) Algorithmen und Datenstrukturen (veschiedene Bücher zu verschiedenen Programmiersprachen), z.B. Sedgewick, Robert (1992). Algorithmen in C++. München; Paris; Reading, Mass. et al.: Addison-Wesley. http://www.cs.princeton.edu/~rs/ (gleiche Bücher auch für C und Java) Standish, Thomas A.(1998). Data Structures in Java. Addison Wesley Longman ftp://ftp.aw.com/cseng/authors/standish/dsj/progs/ch8.txt) © Karin Haenelt, Endliche Automaten, RegEx → FSA 25.4.2009

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 (2009). Endliche Automaten. Überführung regulärrer Ausrücke in endliche Automaten. 25.4.2009 http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_FSA-RegExFSA.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, Akzeptoren, 20.4.2009