1. Einführung und Begriffsbildung
|
|
|
- Manfred Bösch
- vor 9 Jahren
- Abrufe
Transkript
1 Endliche Automaten 1. Einführung und Begriffsbildung 1.1. Warum Automaten? Unsere Zeit wird von Automaten geprägt und die Szenarien der Zukunft werden von ihnen beherrscht. Was kennzeichnet einen Automaten? Wir erwarten von Automaten, dass auf Knopfdruck, gelegentlich nach Geldeinwurf, eine oder mehrere Aktionen selbstständig ablaufen. Der Ablauf wird häufig, tendenziell zunehmend, elektronisch gesteuert. Die Vielfalt hinsichtlich der Art und Komplexität dieser Geräte ist riesig. Das Spektrum in unserem Alltag reicht von der Waschmaschine, dem Warenautomaten oder der Ampelanlage bis zum heimischen PC. Viele Beispiele sind erst bei genauer Betrachtung als Automaten zu erkennen: Eine Stoppuhr, die Steuerung eines Aufzugs, ja sogar ein simpler Ein-/Aus- Schalter können als Automat verstanden werden. Ein Automat muss auch nicht zwangsläufig materiell sein. Es gibt Simulationen für Lehr- und Forschungszwecke, wie z.b. JavaFSM, das z.b. der Modellierung beim Chipdesign dient. Unser Ziel ist es, die typischen Eigenschaften von Automaten kennen zu lernen. Welche prinzipiellen Gemeinsamkeiten, welche grundlegenden Eigenschaften gibt es, unabhängig von der Bauart und der spezifischen Bestimmung? Ein Automat, in dieser Art auf das Wesentliche reduziert, bildet die Grundlage einer ergiebigen Modellbildung in der Informatik. Im Folgenden sollen Begriff und Darstellung von Automaten, wie man sie in der Informatik verwendet, vorbereitet werden. Die Theorie der endlichen Automaten bildet einen Einstieg in die Betrachtungsweise der Informatik. Ausgehend von Alltagsbeispielen (Getränke- / Fahrkartenautomat) sollen zunächst allereinfachste Maschinen der Begriffsbildung dienen. An verschiedenartigen Beispielen wird danach das Konzept angewendet und in Simulationen ausgebaut. Wir beschränken uns auf deterministische Automaten, d.h. solche mit eindeutig definierten Übergängen. Da es zu jedem endlichen Automaten einen äquivalenten deterministischen gibt, halten wir es für richtig, von vorne herein diese zur Modellierung heranzuziehen. Über die Eingabefolgen, die von endlichen Automaten akzeptiert werden, wird im zweiten Teil die Beschäftigung mit formalen Sprachen eingeleitet. Dieses Thema wird jedoch über die regulären Sprachen hinaus nicht weiter vertieft. Wenn das Modell der endlichen Automaten ausgeschöpft ist, wenden wir uns im dritten Teil als Erweiterung den Turing-Maschinen zu. Mit ihrer Hilfe gelangen wir bis an die Grenzen der Berechenbarkeit. Auf dem Weg zu diesen Zielen kommt man mit weiteren wichtigen Gebieten der Informatik in Berührung. Von diesen haben wir der Graphentheorie und der Lehre von den Algorithmen jeweils eine eigene Beschreibung gewidmet. Auf die Abbildung von Automaten in einer Programmiersprache haben wir verzichtet, weil so die Automatentheorie an den Anfang des Kurslehrgangs gestellt werden kann und es andererseits ergiebigere Themen zum Erlernen von Programmiersprachen gibt. Seminargruppe Informatik Seite 1 von
2 1.2. Waren-Automaten An zwei einfachen Modellen, ein Fahrscheinautomat und ein Getränkeautomat, die einigermaßen realistisch und doch einfach genug sind, sollen die charakteristischen Eigenschaften eines Automaten herausgearbeitet werden. Anhand dieser konkreten Automaten werden die für die Automatentheorie benötigten Begriffe erarbeitet. Die sind dabei als Orientierung gedacht Modell eines Fahrscheinautomaten Die Bedienung des Automaten erfolgt als Eingabe mit der Maus oder durch Tastendruck. Man kann 1 oder 2 einwerfen, dann eine Erwachsenen- oder Kinderkarte wählen oder das eingeworfene Geld zurückgeben lassen. Die Entnahme der Tickets oder des Rückgelds ist Aufgabe des Benutzers; sie erfolgt im Programm beim nächsten Mausklick. Der Ende-Button beendet die Simulation und gehört nicht zum Automaten. Das Modell des Fahrscheinautomaten liegt als ausführbare Datei Fahrkart.exe vor. Abb Erprobe die Funktionsweise des Fahrscheinautomaten. 2. Was geschieht, wenn nach Eingabe von 2 die Taste für eine Erwachsenenkarte gedrückt wird? 3. Skizziere eine Folge von Eingaben, die zum Erwerb einer Kinderkarte führen. 4. Notiere die Reaktionen auf die verschiedenen Eingaben. Passiert immer dasselbe, wenn man einen bestimmten Knopf drückt? 5. Wovon hängt es ab, was nach dem Drücken der K-Taste passiert? 6. Welche Informationen über zurückliegende Handlungen muss der Automat speichern, um korrekt zu reagieren? 7. Welche Ausgaben sind möglich? Seminargruppe Informatik Seite 2 von
3 Modell eines Getränkeautomaten Zunächst müssen Geldstücke in Form von 1, 2, oder 0,50 eingeworfen werden. Danach kann entweder der Geldrückgabe- Knopf, der Warenausgabe-Knopf oder das Warenausgabe Fach bei ausreichendem Geldbetrag betätigt werden. Das Rückgeld- Fach und der Ende-Knopf können je nach Situation betätigt werden. Das Modell des Getränkeautomaten liegt als Java-Applet vor. Gestartet wird das Applet mit Hilfe der Datei automaten.html und dort den Link einfacher Getränkeautomat anklicken. (Hinweis: Zum Ausführen des Applets wir ein neuerer Browser benötigt. Außerdem muss entweder das Java Development Kit (JDK ) oder das Java Runtime Environment (JRE) von Sun Microsystem ab der Version 1.2 installiert sein). Abb Erprobe die Funktionsweise des Getränkeautomaten (automaten.html in einem Browser öffnen und dort den Link einfacher Getränkeautomat anklicken). 2. Was geschieht, wenn nach Eingabe von 1,50 der Warenausgabeknopf gedrückt wird? 3. Skizziere eine Folge von Eingaben, die zum Erwerb eines Getränks führen. 4. Notiere die Reaktionen auf die verschiedenen Eingaben. Passiert immer dasselbe, wenn man einen bestimmten Knopf drückt? 5. Wovon hängt es ab, was nach dem Drücken des Geldrückgabeknopfs passiert? 6. Welche Informationen über zurückliegende Handlungen muss der Automat speichern, um korrekt zu reagieren? 7. Welche Ausgaben sind möglich? Erweiterter Getränkeautomat Man kann jetzt auch 10 Ct Münzen einwerfen und den Automaten bis zu einem Betrag von 10 füttern. 1. Erbrobe die Funktionsweise des erweiterten Getränkeautomaten (automaten.html in einem Browser öffnen und dort den Link erweiterter Getränkeautomat anklicken). 2. Skizziere verschiedene Eingabefolgen, die zum Erwerb eines Getränks führen. 3. Welche Informationen über zurückliegende Handlungen muss der Automat speichern, um korrekt zu reagieren? Vergleiche ihre Anzahl mit der Anzahl der Informationen des ersten Getränkeautomaten. 4. Welche Ausgaben sind möglich? Seminargruppe Informatik Seite 3 von
4 1.3. Einfachste Automaten Zunächst wollen wir äußerst einfache Automaten betrachten, um die Möglichkeiten zu ihrer Darstellung zu kennen zu lernen. Diese Automaten können mit Simulationsprogrammen wie JavaFSM dargestellt werden. Gegebenenfalls können hier auch Programme selbst geschrieben werden Ein-/Aus-Schalter 2 Zustände {s 0, s 1 }, Eingabe {e, a} a s 0 e s 1 e a e a s 0 s 1 s 0 s 1 s 1 s 0 Zustandstafel Programm EinAus.exe Dieser Automat besitzt auch eine Ausgabe: Je nach Schaltzustand erscheint das "Licht" in der Kreisfläche weiß oder schwarz. Seminargruppe Informatik Seite 4 von
5 Ampel Die Ampel hat 4 Zustände {grün, gelb, rot, rot-gelb}, die durch Eingabe des Taktes {T} ineinander überführt werden. Zustandsdiagramm grün T gelb T T rot-gelb T rot Programm Ampel.exe grün gelb T gelb rot Zustandstafel rot rot-gelb rot-gelb grün Aufgabe Ein Plattenspieler hat 2 Schalter für Ein-Aus-Schalten und die Wahl der Geschwindigkeit. Eingabe ist {P, G}, die Zustände sind { z aus, z 33, z 45 }. Gib die Zustandstafel an und erstelle ein Zustandsdiagramm. Seminargruppe Informatik Seite 5 von
6 1.4. Begriffsbildung - Beispiel Fahrscheinautomat Eingaben Der Benutzer hat folgende Möglichkeiten der Eingabe: Einwurf von 1, Einwurf von 2, Taste für Erwachsenenticket, Taste für Kinderticket, Rückgabetaste. Damit erhält man folgende Menge von Eingaben, das Eingabealphabet: E = { 1, 2, E, K, R } Zustände Die Reaktion des Automaten auf eine Eingabe ist abhängig vom jeweiligen Zustand. In unserem Fall können die Zustände mit dem zuvor erfolgten Einwurf beschrieben werden. Wenn kein Geld eingeworfen wurde nennen wir den Zustand z0. Zwei 1 -Stücke und ein 2 -Stück ergeben dann z112, wobei die Reihenfolge des Einwurfs unerheblich ist. Die Art der eingeworfenen Münzen ist an der Bezeichnung des Zustands zu erkennen und wird bei der Rückgabe berücksichtigt. In unserem Beispiel erhalten wir die Zustandsmenge: S = { z0, z1, z2, z11, z12, z111, z22, z112, z1111 } s Zustand Anfangszustand Am Anfang (z.b. nach dem Einschalten) ist der Automat in einem definierten Anfangszustand: s 0 = z0 s 0 Anfangszustand Endzustände Wenn wir Fehlfunktionen ausschließen und annehmen, dass niemand auf sein Geld verzichtet, gibt es nur einen möglichen Endzustand z0. Es kann auch mehrere Endzustände geben, die Menge der Endzustände: F = { z0 } s F Endzustand Seminargruppe Informatik Seite 6 von
7 Zustandsübergänge Jedem Zustand s und jeder Eingabe e ist eindeutig ein neuer Zustand s' zugeordnet. Diese Zuordnung nennt man Übergangsfunktion. Sie wird meist als Zustandstafel angegeben. δ : (s,e) a s' s e s' Zustandsübergang Für kleine Automaten ist das Zustandsdiagramm, dessen Bestandteile oben dargestellt sind, eine anschauliche Darstellung. Es enthält alle Zustände, alle Übergänge einschließlich der zugehörigen Eingabe, sowie, besonders gekennzeichnet, den Anfangs- und die Endzustände. Dies zusammen ergibt die formale Beschreibung eines endlichen Automaten durch sein Eingabealphabet E, die Zustandsmenge S, den Anfangszustand s 0, die Menge der Endzustände F und die Übergangsfunktion δ : EA = (E, S, s 0, F, δ) 1. In welchen Zustand geht der Automat über, wenn in z2 ein 1 -Stück eingeworfen wird (in z111 die R-Taste gedrückt wird)? 2. Aus welchen Gründen muss man die Zustände z22 und z112 unterscheiden? 3. Warum werden die Zustände z211 oder z121 nicht benötigt? Beschreibung von Automaten Grundsätzlich kann man jeden Automaten auf 4 Ebenen darstellen: Verbale Beschreibung Formale Beschreibung EA = (E, S, s 0, F, δ) mit Angabe des Eingabealphabets, der Zustände und der Überführungsfunktion als Funktionstafel Zustandsdiagramm Simulation mit geeigneter Software (JavaFSM) Gegebenenfalls Kodierung in einer Programmiersprache Seminargruppe Informatik Seite 7 von
8 1.5. Beispiel und (1) - Getränkeautomat Um die Kenntnisse von Automaten und ihrer Beschreibung auf eine breitere Basis zu stellen, sollen die folgenden Beispiele untersucht und die zugehörigen gelöst werden. Die bestehen zum großen Teil darin, die gegebene Darstellung in eine andere zu transformieren oder diese zu ergänzen. Getränkeautomat Entspricht dem Fahrkarten-Automat, ist aber etwas einfacher. E = { 1, GA, R } S = { s0, s1, s2 } s 0 = s0 Dieser Getränkeautomat ist ein Beispiel für einen Automaten mit Ausgabe (Mealy- Maschine), ein Aspekt, der beim Fahrscheinautomaten aus Gründen der Einfachheit nicht thematisiert wurde. Programm Getraenke.exe Ausgaben Der Getränkeautomat hat die folgende Ausgaben: Die Getränkeflasche (G), das Rückgeld von 1 (r1) oder von 2 (r2). Da bei manchen Übergängen keine Ausgabe erfolgt, gehört auch das leere Zeichen (-) dazu. Die Menge der möglichen Ausgaben ist das Ausgabealphabet: A = { G, r1, r2, - } Ausgabefunktion Jedem Zustand s und jeder Eingabe e ist eindeutig eine bestimmte Ausgabe a zugeordnet. Diese Zuordnung nennt man Ausgabefunktion. Sie wird meist in der Zustandstafel mit angegeben. γ : (s,e) a a 1 GA R s0 s1, - s0, - s0, - s1 s2, - s1, - s0, r1 s e,a s' s2 s2, r1 s0, G s0, r2 Übergang mit Eingabe und Ausgabe 1. Beschreibe den Automaten (nach ausreichender Erprobung) mit Worten. 2. Zeichne für den Getränkeautomaten ein Zustandsdiagramm. 3. Welche Ergänzungen im Funktionsumfang erscheinen dir sinnvoll? Seminargruppe Informatik Seite 8 von
9 1.6. Beispiel und (2) - Aufzugs-Steuerung Steuerung eines Aufzugs Der Aufzug soll durch die abgebildeten Tasten in seinem Innern gesteuert werden. Eine oder mehrere Etagen können gewählt werden, wobei die Wahl der aktuellen Etage ignoriert wird. Die Taste für "Fahren" startet die Simulation. Eigenschaften des Automaten: Jeder Zustand wird durch das aktuelle Stockwerk und die Fahrtrichtung bestimmt. S = { 0, 1, 2, -1 }, wobei -1 das 1. Stockwerk mit Fahrtrichtung nach unten darstellt. Die Eingabe erfolgt als Tripel von gewählten Etagen ( 1 / 0 steht für Checkbox gesetzt / nicht gesetzt ) in der Reihenfolge: Erdgeschoss, 1. Etage, 2. Etage. E = { (0,0,0), (0,0,1),..., (1,1,1) } Anfangszustand ist Erdgeschoss s 0 = 0 Alle Zustände können Endzustände sein F = S Der Übergang der Zustände ergibt sich aus der Regel, dass der Fahrstuhl in der 1. Etage mit erster Priorität seine Fahrtrichtung beibehält. Der Aufzug "fährt" jeweils nur eine Etage weit, dann kann eine neue Eingabe erfolgen oder auch Eingaben, die noch nicht ausgeführt sind, gelöscht werden. 1. Gib alle möglichen Eingaben an. Erläutere, was die Eingabe (0,1,1) bedeutet. 2. Welche Eingaben bewirken a) in keinem Zustand, b) in allen Zuständen eine Veränderung? 3. In welchen Zuständen führen die Eingaben (110) und (100) zum gleichen Resultat? 4. Stelle in einem Teildiagramm alle Zustände und alle Übergänge von und nach Zustand "2" dar. 5. Gib die Spalte der Übergangsfunktion an, die zur Eingabe (101) gehört. 6. Erweitere die Fahrstuhlsteuerung auf 4 Etagen. Seminargruppe Informatik Seite 9 von
10 1.7. Beispiel und (3) - Stoppuhr Stoppuhr Dieser Automat ist in seiner Funktionsweise einer in die Armbanduhr integrierten Stoppuhr nachempfunden. Obwohl er nur 2 Eingabemöglichkeiten besitzt, ist er wegen der Möglichkeit der Zwischenzeitnahme ziemlich komplex. Kurz beschrieben dient die Eingabe S zum Starten/Stoppen der Uhr (auch im Hintergrund); R schaltet die Anzeige aus/ein und zeigt damit die Zwischenzeit/aktuelle oder zuletzt gemessene Zeit und stellt, wenn die Uhr gestoppt ist, alles zurück (Reset). Zum Verständnis kann ein Zustandsdiagramm, das man gemeinsam entwickelt, wesentlich beitragen. Zustandsdiagramm ZUSDE R ZUSDZw R Z0 S S S S Display zeigt Zwischenzeit R S ZULDL R R ZULDZw Uhr läuft Beschreibung der Zustände: Z0 Startzustand (Uhr steht, Display zeigt 0) ZULDL Uhr läuft, Display läuft ZULDZw Uhr läuft, Display zeigt Zwischenzeit ZUSDZw Uhr steht, Display zeigt Zwischenzeit ZUSDE Uhr steht, Display zeigt Endzeit 1. Gib die Übergangsfunktion als Tabelle an. 2. Umrande im Diagramm mit verschiedenen Farben die Zustände, in welchen die Uhr läuft und in denen das Display die Zwischenzeit zeigt. 3. Vergleiche die gegebene Stoppuhr mit einer einfachen Version, wie man sie im Sport häufig verwendet, die keine Zwischenzeit anzeigt und 3 Tasten hat. 4. Modelliere eine Schachuhr. Seminargruppe Informatik Seite 10 von
Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17
Endliche Automaten Im Hauptseminar Neuronale Netze LMU München, WS 2016/17 RS- Flipflop RS-Flipflop Ausgangszustand 0 1 0 1 0 1 Set Reset neuer Zustand 0 0 0 0 0 1 1 0 1 1 0 1 0 1 0 0 1 0 Was ist ein endlicher
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
Grundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 14: Endliche Automaten Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/38 Überblick Erstes Beispiel: ein Getränkeautomat Mealy-Automaten
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
4. Modellieren und Diagrammarten
4. Modellieren und Diagrammarten Zur Entwicklung einer Software ist eine strukturierte Planung notwendig. Erst auf der Grundlage eines Modells (z.b. geeignete Klassendiagramme) kann eine Implementierung
Kapitel 3 Ereignisdiskrete Systeme (III)
Systemmodellierung Teil 1: Ereignisdiskrete Systeme Kapitel 3 Ereignisdiskrete Systeme (III) Modellierung mit E/A-Automaten Modellbildung mit Automaten Verfeinerte Modellbildung Beispiel: Fahrstuhltür
Das aktuelle Objekt der Klasse AMPEL gibt an die Objekte gruen, gelb und rot der Klasse LAMPE die Botschaft, die Methode aus() aufzurufen.
Übung 1 Ampel Öffne das BlueJ-Projekt Ampel_Vorlage und öffne die Klasse AMPEL. a) Erzeuge ein Objekt von AMPEL und mach dich mithilfe des Objektinspektors und dem Quelltext über die Funktionsweise kundig.
Einführung in die Informatik Turing Machines
Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard 1 Motivation und Einleitung Bisher haben wir verschiedene Programmiersprachen
Lexikalische Programmanalyse der Scanner
Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung
Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP
Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07 Vortrag am 17.11.2006 Nichtdeterministische Turingmaschinen und NP Yves Radunz Inhaltsverzeichnis 1 Wiederholung 3 1.1 Allgemeines........................................
Einführung in die Informatik Turing Machines
Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard Cyrill Stachniss 1/14 Motivation und Einleitung Bisher haben wir verschiedene
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
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
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
Test Ereignisdiskrete Systeme
Test Ereignisdiskrete Systeme Sommersemester 2012 Prof. Dr.-Ing. J. Lunze Dipl.-Ing. Y. Nke Dauer: 30 Minuten Name:....................................................................... Matrikel-Nr.:................................................................
1 Endliche Automaten mit Ausgabe
1.1 Autokorrektur und Smileys 9 Theorie bedeutet meist, dass die Bestandteile und Eigenschaften von Systemen auf das Elementare reduziert werden, um deren Prinzipien, Zusammenhänge, Möglichkeiten und Grenzen
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, λ}?
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
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
4.2.4 Reguläre Grammatiken
4.2.4 Reguläre Grammatiken Eine reguläre Grammatik ist eine kontextfreie Grammatik, deren Produktionsregeln weiter eingeschränkt sind Linksreguläre Grammatik: A w P gilt: w = ε oder w = Ba mit a T und
Prüfung Programming, Automation, Computation
Prüfung Programming, Automation, Computation Programming: Visualisierung ung mit Google Code Playground (5 Punkte) Die Software GoalScape stellt Hierarchien kreisförmig dar. Die Visualisierung links unten
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
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.
Das Informatik-Kochstudio Sortieren Alltagsalgorithmen Komplexe Algorithmen... 55
Inhalt Vorwort... 9 Binäre Codierung 0 oder 1 der kleine Unterschied... 14 Das Prinzip der digitalen Tonaufzeichnung... 16 Binäre Codierung... 18 Wiedergabequalität und Datenmengen... 21 Digitale Codierung
18 E N D L I C H E AU T O M AT E N erstes beispiel: ein getränkeautomat
18 E N D L I C H E AU T O M AT E N 18.1 erstes beispiel: ein getränkeautomat Als erstes Beispiel betrachten wir den folgenden primitiven Getränkeautomaten (siehe Abbildung 18.1). Man kann nur 1-Euro-Stücke
Theoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
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,
A8: Prinzipien der Datenverarbeitung (14)
A8: Prinzipien der Datenverarbeitung (14) Die Schüler lernen Prinzipien kennen, die zum Grundverständnis für die Verarbeitung von Daten nötig sind. Sie erhalten Einblicke in grundlegende Funktionsprinzipien
Ü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
Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 1. Automaten und Sprachen 1.1 Endlicher Automat Einen endlichen Automaten stellen wir uns als Black Box vor, die sich aufgrund einer Folge von
6 Schaltwerke und endliche Automaten
6 Schaltwerke und endliche Automaten 6.1 Entwicklungsstufen 143 In diesem Abschnitt wird gezeigt, wie das Blockschaltbild aus 1.4 realisiert werden kann. Mithilfe der entwickelten Speicherbausteine und
Turingmaschinen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen
Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: und effiziente Algorithmen Wintersemester 2011/12 Schematische Darstellung einer Turing-Maschine: Kopf kann sich nach links und
Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23
1/23 Formale Methoden 1 Gerhard Jäger [email protected] Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich
Berechenbarkeit. Script, Kapitel 2
Berechenbarkeit Script, Kapitel 2 Intuitiver Berechenbarkeitsbegriff Turing-Berechenbarkeit WHILE-Berechenbarkeit Church sche These Entscheidungsprobleme Unentscheidbarkeit des Halteproblems für Turingmaschinen
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
2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:
Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter
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
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
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
1936 von Alan Turing zum theoretischen Studium der Berechenbarkeit eingeführt Besteht aus
//5 Abstrakte Maschinenmodelle: Turingmaschine (TM) 96 von Alan Turing zum theoretischen Studium der Berechenbarkeit eingeführt Besteht aus einem festen Teil ( "Hardware ) einem variablen Teil ( "Software
1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie
1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 15 Ziele vgl. AFS: Berechnungsmodelle für Typ-0- und Typ-1-Sprachen (Nicht-)Abschlußeigenschaften
Deterministische endliche Automaten - Wiederholung
Deterministische endliche Automaten - Wiederholung Die folgende Klasse Zahl stellt einen endlichen Automaten dar. Ermittle die Größen des Automaten und zeichne den Zustandsgraphen. Gib Zeichenfolgen an,
Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004
Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,
Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 13. Vorlesung 07.12.2006 1 Überblick: Die Church- Turing-These Turing-Maschinen 1-Band Turing-Maschine Mehrband-Turing-Maschinen Nichtdeterministische
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
PDA, Übergangsfunktion
Die Übergangsfunktion Was bedeutet das? PDA, Übergangsfunktion haben wir so definiert: : Z ( [{"})!P e (Z ) (z, a, A) ist eine Menge von Paaren der Form (z 0, B 1...B k ). Jedes dieser Paare beschreibt
Turing Maschinen II Wiederholung
Organisatorisches VL-03: Turing Maschinen II (Berechenbarkeit und Komplexität, WS 2017) Gerhard Woeginger Nächste Vorlesung: Mittwoch, Oktober 25, 14:15 15:45 Uhr, Roter Hörsaal Webseite: http://algo.rwth-aachen.de/lehre/ws1718/buk.php
WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven
WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.
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)
Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014
Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014 Klausurnummer Nachname: Vorname: Matr.-Nr.: Aufgabe 1 2 3 4 5 6 7 max. Punkte 6 8 4 7 5 6 8 tats. Punkte Gesamtpunktzahl: Note: Punkte Aufgabe
Systemmodellierung. Teil Ereignisdiskrete Systeme
Prüfungsklausur Im Modul Systemmodellierung Teil Ereignisdiskrete Systeme 12. März 2018 Name: Vorname: Matrikelnummer: Zugelassene Hilfsmittel: Taschenrechner, Schreib- und Zeichenwerkzeug (kein roter
Theoretische Informatik. Berechenbarkeit
Theoretische Informatik Berechenbarkeit 1 Turing Maschine Endlicher Automat mit unendlichem Speicher Ein Modell eines realen Computers Was ein Computer berechnen kann, kann auch eine TM berechnen. Was
VL-03: Turing Maschinen II. (Berechenbarkeit und Komplexität, WS 2017) Gerhard Woeginger
VL-03: Turing Maschinen II (Berechenbarkeit und Komplexität, WS 2017) Gerhard Woeginger WS 2017, RWTH BuK/WS 2017 VL-03: Turing Maschinen II 1/27 Organisatorisches Nächste Vorlesung: Mittwoch, Oktober
Automaten und formale Sprachen Klausurvorbereitung
Automaten und formale Sprachen Klausurvorbereitung Rami Swailem Mathematik Naturwissenschaften und Informatik FH-Gießen-Friedberg Inhaltsverzeichnis 1 Definitionen 2 2 Altklausur Jäger 2006 8 1 1 Definitionen
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 ε
7 Endliche Automaten. 7.1 Deterministische endliche Automaten
7 Endliche Automaten 7.1 Deterministische endliche Automaten 7.2 Nichtdeterministische endliche Automaten 7.3 Endliche Automaten mit g-übergängen Endliche Automaten 1 7.1 Deterministische endliche Automaten
Kapitel 1: Die ersten Schritte 1
Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte 1 Starten Sie Eclipse. Importieren Sie das Eclipse-Projekt scenarios-chapter-1. Gehen Sie in den Unterordner
(Prüfungs-)Aufgaben zu formale Sprachen
(Prüfungs-)Aufgaben zu formale Sprachen (siehe auch bei den Aufgaben zu endlichen Automaten) 1) Eine Grammatik G sei gegeben durch: N = {S, A}, T = {a, b, c, d}, P = { (S, Sa), (S, ba), (A, ba), (A, c),
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
Grundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Wintersemester 2007 / 2008 Prof. Dr. Heribert Vollmer Institut für Theoretische Informatik 29.10.2007 Reguläre Sprachen Ein (deterministischer) endlicher Automat
2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht
Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der
Schatzsuche - Endliche Automaten
Schatzsuche - Endliche Automaten Altersgruppe Voraussetzungen Zeit Gruppengröße Quelle ab 9 Jahre Lesen einfacher Karten ca. 15 Minuten, eher etwas länger ab 10 Personen http:// Fokus Karten Abstrakte
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
Endliche Automaten. Endliche Automaten 1 / 115
Endliche Automaten Endliche Automaten 1 / 115 Endliche Automaten Endliche Automaten erlauben eine Beschreibung von Handlungsabläufen: Wie ändert sich ein Systemzustand in Abhängigkeit von veränderten Umgebungsbedingungen?
Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat
Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann [email protected] 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat
Theoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 3288
Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Wiederholung Kapitel 2 http://pingo.upb.de Zugangsnummer: 3288 Dozent: Jun.-Prof. Dr. D. Baumeister
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
Beispiel zum Schaltungsentwurf mithilfe endlicher Automaten Ein Zähler modulo 3 mit Reset
Eckart Modrow Beispiel zum Schaltungsentwurf S. 1 Beispiel zum Schaltungsentwurf mithilfe endlicher Automaten Ein Zähler modulo 3 mit Reset Inhalt: 1. Bezug zum Unterricht 2. Beschreibung durch einen endlichen
Mikrocontroller: Einführung
Abbildung 1 Mikrocontroller sind heute allgegenwärtig; ob Zahnbürste, Türschloss, Backofen, Fahrradcomputer, Stereoanlage, Multimeter oder Postkarte, überall sind sie zu finden. Im Prinzip handelt es sich
Automaten und Formale Sprachen SoSe 2013 in Trier
Automaten und Formale Sprachen SoSe 2013 in Trier Henning Fernau Universität Trier [email protected] 2. Juni 2013 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche
GTI ÜBUNG 11 AUTOMATEN
1 GTI ÜBUNG 11 AUTOMATEN Aufgabe 1 Automaten 2 Beschreibung (kurz und knackig) Entwerfen Sie einen endlichen Zustandsautomat (FSM) für eine Armbanduhr, der eines von vier internen Registern auf dem Display
Einführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 3 14. Mai 2010 Einführung in die Theoretische
Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:
Sprachen und Automaten 1 Deterministische endliche Automaten (DFA) Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: M = (Z,3,*,qo,E) Z = Die Menge der Zustände 3 = Eingabealphabet
2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:
Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter
Ein ROM soll aus mehreren ROMs (vgl. Abbildung rechts: Enable-Leitung EN, Adressleitungen ADDR, Datenleitungen DATA) aufgebaut werden.
VU Technische Grundlagen der Informatik Übung 4: Schaltwerke 183.579, 2015W Übungsgruppen: Mo., 23.11. Mi., 25.11.2015 Aufgabe 1: ROM-Erweiterung Ein 256 64 ROM soll aus mehreren 128 16 ROMs (vgl. Abbildung
Theoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung
Theoretische Informatik und Logik Übungsblatt (26S) en Aufgabe. Sei L = {w#w r w {, } }. Geben Sie eine deterministische Turingmaschine M an, welche die Sprache L akzeptiert. Wählen Sie mindestens einen
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Rolf Socher ISBN 3-446-22987-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22987-6 sowie im Buchhandel Einführung.. 13 2 Endliche
Grundlagen der Technischen Informatik. 13. Übung
Grundlagen der Technischen Informatik 13. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 13. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Automaten VHDL VHDL VHDL 13.
, SS2012 Übungsgruppen: Do., Mi.,
VU Technische Grundlagen der Informatik Übung 4: Schaltwerke 83.579, SS202 Übungsgruppen: Do., 26.04. Mi., 02.05.202 ufgabe : Zahlenumwandlung mittels Tabellenspeicher Konstruieren Sie eine Schaltung,
Kontextsensitive und Typ 0 Sprachen Slide 2. Die Turingmaschine
Kontextsensitive und Typ 0 Sprachen Slide 2 Die Turingmaschine DTM = Deterministische Turingmaschine NTM = Nichtdeterministische Turingmaschine TM = DTM oder NTM Intuitiv gilt: DTM = (DFA + dynamischer
Klausur zur Vorlesung Informatik III Wintersemester 2007/2008
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Klausur zur Vorlesung Informatik III Wintersemester 2007/2008 Hier Aufkleber mit Name und Matrikelnr. anbringen Vorname: Nachname: Matrikelnummer:
