 Am Ende der letzten Stunde hatten wir über die Grenzen unserer Automaten-Modell gesprochen. Dr. Lars Ettelt2  Tipp: Parkhaus.  Einfahrt erst wenn.

Slides:



Advertisements
Ähnliche Präsentationen
Die Erstellung einer Lückentext-Übung mit
Advertisements

Sortieren I - Bubblesort -
Kellerautomaten und Turingmaschinen
7. Automaten Ein Automat ist ein Sechstupel A= (I, O, Q, , q0, F).
Institut für Informatik Abt. Intelligente Systeme
Kapitel 5. Stacks und Queues
8. Formale Sprachen und Grammatiken
Synonyme: Stapel, Keller, LIFO-Liste usw.
Christian A. Kopf Institut für Informatik FU Berlin Episode Recognizer Framework - Rahmenwerk zur Episodenerkennung.
Imperative Programmierung
Markus Tank, Wie arbeitet man mit dem Rich Text Editor?
Suche in CINAHL Lernprogramm support.ebsco.com.
Support.ebsco.com EBSCOhost Page Composer Lernprogramm.
Paul, Morten, Yannick Blue J. Entwicklungsumgebung versteht Java Programmcode versteht Java Programmcode Für die Entwicklung eigener Software.
Gliederung Motivation / Grundlagen Sortierverfahren
CFGs und Kellerautomaten
REKURSION + ITERATION. Bemerkung: Die in den folgenden Folien angegebenen "Herleitungen" sind keine exakten Beweise, sondern Plausibilitätsbetrachtungen.
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
WS Algorithmentheorie 13 - Kürzeste (billigste) Wege 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.
Lösungen
© Karin Haenelt 2006, Äquivalenzen Reg.Ausdrücke, Reg.Sprachen, EA ( ) 1 Reguläre Sprachen Karin Haenelt.
Parsing regulärer Ausdrücke
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/ Vorlesung Dominic Dumrauf.
Eine Homepage für die Fachberatung Thomas Scholz.
Stacks Referat im Fach Basisinformationstechnologien von Venelina Koleva.
EXCEL Anfang 2005 Copyright by Maximilian Prinz, Timmy Ruppert, Benjamin Peppel.
Endliche Automaten Informatik JgSt. 13, Abitur 2009
Grenzen der Regularität
Formale Sprachen Teil 2 Klaus Becker 2006.
Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Basisinformationstechnologie HK-Medien
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
2. Zustandsorientiertes Modellieren 2.1 Einfachauswahl
1.6 Die Datenstruktur Stapel Ein Stapel (Stack) ist ein Sonderfall einer Liste. Die Elemente werden nach dem Prinzip LIFO (Last In First Out) angefügt.
Eine Präsentation von Lena Sauter & Corinna Nawatzky
Das Statistikmodul Omicron Syntax Data AB vor.
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Entwurf und Implementierung eines Scanner-Generatorsystems
Wie mache ich eine PowerPoint Präsentation??!
POCKET TEACHER Mathematik Algebra
Städtisches Gymnasium Beverungen Friedel Berlage
Spracherkennung mit Automaten
Html basics. html ist… Auszeichnungssprache (Seiten werden beschrieben) unterscheidet zwischen Inhalt und Anweisung jede!! Webseite besteht nur aus (Quell)-Text.
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
Leere Menge, Teilmenge, N, Z
Maya Kindler 5c. 1.Voraussetzungen für die Installation 2.Installation 3.Template lade, installieren und anpassen 4.Kategorie und Inhalt 5.Menü.
Turing-Maschine als Akzeptor.
1 Erstellung eines Lebenslaufes
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Anmerkung des Autor Diese Präsentation ist mit Powerpoint für MacOS erstellt. Leider ist sie nicht vollständig mit Powerpoint für Windows kompatibel.
PhotoShop Elements & Organizer
Benutzeranleitung für den JBFOne-Master der Fiducia & GAD IT AG

242/102/49 0/51/59 181/172/166 Primary colors 248/152/29 PMS 172 PMS 137 PMS 546 PMS /206/ /227/ /129/123 Secondary colors 114/181/204.
ResA am Arbeitsplatz Das Vorgehen ist angelehnt an „5 S“ und bietet Ihnen die Möglichkeit das Konzept der 5 Disziplinen ressourcenschonenden Arbeitens.
CMS … Content Management System. Erster Schritt Das CMS funktioniert (leider) nicht mit allen Browsern. Eine fehlerfreie Bearbeitung ist mit Mozilla firefox.
Automatentheorie Jendrik und Jeyhannes. Allgemeines Modelle mit Zuständen, die Eingaben annehmen und Ausgaben erstellen Endliche Automaten Auch Zustandsmaschine.
Schlange und Stapel.
1. Die rekursive Datenstruktur Liste 1.6 Die Datenstruktur Stapel
 Präsentation transkript:

 Am Ende der letzten Stunde hatten wir über die Grenzen unserer Automaten-Modell gesprochen. Dr. Lars Ettelt2  Tipp: Parkhaus.  Einfahrt erst wenn wieder ein Platz frei ist.

Beispiel: TaschenrechnerBeispiel: Taschenrechner  Jeder moderne Taschenrechner beherrscht die Klammerung von Ausdrücken, d. h. zu jeder öffnenden Klammer muss es eine schließende Klammer geben.  Dabei müssen sich an jeder beliebigen Stelle der Eingabe stets rechts von der Eingabemarke mehr oder gleich viele öffnende Klammern sein wie schließende Klammern und am Eingabeende gleich viele öffnende und schließende Klammern, sonst wird die Eingabe nicht akzeptiert.  Beispiel: ((3 + 5) / 6) * (10 / ( ) + 44) = ? Dr. Lars Ettelt3

Automaten - ErweiterungAutomaten - Erweiterung  Dabei wird der endliche Automat um eine Art Gedächtnis erweitert, dem so genannten Kellerspeicher.  Dieser Keller funktioniert wie ein Stapel.  Man kann nur etwas oben auf den Stapel legen.  Oder etwas von oben wegnehmen. Dr. Lars Ettelt5

6

Der Keller / StapelDer Keller / Stapel  Dabei wird der endliche Automat um eine Art Gedächtnis erweitert, dem so genannten Kellerspeicher.  Dieser akzeptiert Push- und Pop-Operationen.  Bei einer Push-Operation wird ein Element dem Speicher hinzugefügt.  Die Pop-Operation entfernt das als letztes hinzugefügte Element aus dem Speicher und gibt es zurück. Dr. Lars Ettelt7

 Dabei gilt: das zuletzt abgelegte Objekt muss als erstes wieder entnommen werden. Dieses Prinzip bezeichnet man mit Last in – First out (LIFO). Dr. Lars Ettelt8

Beispiel 9  Ein Zustandsübergang erfolgt nur in Abhängigkeit von einem Eingabesymbol und den obersten Kellersymbolen. Ein Zustandsübergang aktualisiert zudem den Keller, indem Symbole vom Keller entfernt und neue Symbole im Keller abgelegt werden.

Beispiel Dr. Lars Ettelt10  Im Zustandsdiagramm werden diese Informationstripel in der Gestalt (Eingabe, zu entfernende oberste Kellersymbole; hinzuzufügende oberste Kellersymbole) an die Übergangspfeile geschrieben.

Beispiel Dr. Lars Ettelt11  Das Tripel (, (; (( bedeutet: Wenn die Eingabe ( vorliegt und im Keller oben das Kellersymbol ( liegt, dann entferne dieses oberste Kellersymbol und lege die Symbole des Worts (( der Reihe nach in den Keller

Beispiel Dr. Lars Ettelt12  Das Tripel ), (; λ bedeutet: Wenn die Eingabe ) vorliegt und im Keller oben das Kellersymbol ( liegt, dann entferne dieses oberste Kellersymbol und lege die Symbole des leeren Worts - also nichts - in den Keller

Beispiel Dr. Lars Ettelt13  Das Tripel (, Z; (Z bedeutet: Wenn die Eingabe ( vorliegt und im Keller oben das Kellersymbol Z liegt, dann entferne dieses oberste Kellersymbol und lege die Symbole des Wort (Z der Reihe nach in den Keller. Beachte, dass Z hier ein zusätzliches Kellersymbol ist, das einen leeren Keller beschreibt.

Beispiel Dr. Lars Ettelt14  Das Tripel λ, Z; λ bedeutet: Wenn die Eingabe λ vorliegt - wenn also keine Eingabesymbole mehr vorhanden sind - und im Keller oben das Kellersymbol Z liegt - wenn der Keller also leer ist -, dann entferne dieses oberste Kellersymbol und lege die Symbole des leeren Worts - also nichts - in den Keller.

Beispiel Dr. Lars Ettelt15 Gesamtbetrachtung: Beschreibt, was dieser Automat tut.

Zusammenfassung: Kellerautomat  Ein Kellerautomat ist ein Automat, der die Symbole eines Eingabeworts verarbeitet, sich dabei stets in einem bestimmten Zustand befindet und die zum Zwischenspeichern von Symbolen einen Stapel / Keller benutzt. Dr. Lars Ettelt16

Quellen  "Nichtdeterministischer Kellerautomat",, Hessischer Bildungsserver, tik/programmierung/Kellerautomat.zip, (Stand: )  schule.de/sprachen/sprachenundautomaten/kelleraut omat ( ) schule.de/sprachen/sprachenundautomaten/kelleraut omat Dr. Lars Ettelt17

Aufgabe Erstelle einen Keller Automaten, der prüft, ob eine HTML-Seite eine korrekte Syntax hat. Der Automat soll HTML- Elemente erkennen und andere Inhalte ignorieren. Korrekt ist die Syntax, wenn jedes Element wieder geschlossen wird. (Nur für die Elemente des Beispiels!) Dr. Lars Ettelt18 Beispiel: eine HTML-Seite Beispieltitel Eine Überschrift! Dies ist ein Beispiel

Aufgabe Erstelle einen Keller Automaten, der prüft, ob eine HTML-Seite eine korrekte Syntax hat. Der Automat soll HTML- Elemente erkennen und andere Inhalte ignorieren. Korrekt ist die Syntax, wenn jedes Element wieder geschlossen wird. (Nur für die Elemente des Beispiels!) Dr. Lars Ettelt19 Beispiel: eine HTML-Seite Beispieltitel Eine Überschrift! Dies ist ein Beispiel