Formale Grundlagen der Wirtschaftsinformatik

Ähnliche Dokumente
Formale Grundlagen der Wirtschaftsinformatik

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

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

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

8. Turingmaschinen und kontextsensitive Sprachen

Theorie der Informatik

Rekursiv aufzählbare Sprachen

Turingmaschinen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen

11.1 Kontextsensitive und allgemeine Grammatiken

Informatik III - WS07/08

Grundlagen der Theoretischen Informatik

Definition 98 Eine Turingmaschine heißt linear beschränkt (kurz: LBA), falls für alle q Q gilt:

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Theoretische Informatik Mitschrift

Kontextfreie Sprachen

11.3 Eindimensionale Turingmaschinen

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Ist eine algorithmische Problemstellung lösbar und wenn ja, mit welchen Mitteln? was ist eine algorithmische Problemstellung?

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Kontextfreie Sprachen

Das Halteproblem für Turingmaschinen

Typ-1-Sprachen. Satz 1 (Kuroda ( ) 1964)

Kontextsensitive und Typ 0 Sprachen Slide 2. Die Turingmaschine

Einfache Turing Maschine. Formale Spezifikation einer einfachen Turing Maschine. M = (Σ,Γ,#,Q,s,F, ) Σ

Turing Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.

Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014

Typ-0-Sprachen und Turingmaschinen

Übersicht. 3 3 Kontextfreie Sprachen

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Weitere universelle Berechnungsmodelle

10 Kellerautomaten. Kellerautomaten

Theoretische Grundlagen der Informatik

Klausur zur Vorlesung Informatik III Wintersemester 2007/2008

Automaten und formale Sprachen Klausurvorbereitung

Sprachen und Automaten. Tino Hempel

ALP I Turing-Maschine

Theoretische Informatik II

Theoretische Informatik I (Winter 2018/19) Prof. Dr. Ulrich Hertrampf. 1.5 Tabellen

Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP

Theoretische Informatik 2

Definition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:

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

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Grundlagen der Theoretischen Informatik

Beispiel: NTM. M = ({q 0,q 1,q 2 }, {0, 1}, {0, 1, #},δ, q 0, #, {q 2 }) q 2

Kapitel 7: Kellerautomaten und kontextfreie Sprachen

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Musterlösung Informatik-III-Nachklausur

4.2.4 Reguläre Grammatiken

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Sprachen und Grammatiken

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik. SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Theoretische Informatik Testvorbereitung Moritz Resl

Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist

2.4 Kontextsensitive und Typ 0-Sprachen

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

Informatik III. Arne Vater Wintersemester 2006/ Vorlesung

4 Kontextsensitive und Typ 0 Sprachen

DKA und dkfs (mit Übungen)

Die oben aufgelisteten Sprachfamilien werden von oben nach unten echt mächtiger, d.h. die Familie der regulären Sprachen ist eine echte Teilfamilie

(Prüfungs-)Aufgaben zu formale Sprachen

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

Theoretische Informatik. Berechenbarkeit

Grundlagen der Theoretischen Informatik

Mehrdeutige Grammatiken

Automaten und Formale Sprachen SoSe 2013 in Trier

Die mathematische Seite

Grundlagen der Theoretischen Informatik

Berechenbarkeit/Entscheidbarkeit

Grundlagen der Theoretischen Informatik

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel

Fragen 1. Muss eine DTM ein Wort zu Ende gelesen haben, um es zu akzeptieren? a) Ja! b) Nein!

a b b a Vom DFA zur TM Formale Grundlagen der Informatik 1 Kapitel 9 Turing-Maschinen Der Lese-/Schreibkopf Bedeutung der TM

Berechenbarkeit. Script, Kapitel 2

Grundlagen der Theoretischen Informatik

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

Berechenbarkeit und Komplexität

Einführung in die Computerlinguistik

Transkript:

Formale Grundlagen der Wirtschaftsinformatik Nikolaj Popov Research Institute for Symbolic Computation popov@risc.uni-linz.ac.at Turingmaschinen und Kontextsensitive Sprachen

Eine Turingmaschine besteht aus einem unendlichen Band, d.h., einem Band mit unendlichvielen Feldern. Auf diesen Feldern steht je ein Zeichen, wobei nur auf endlichen vielen Feldern nicht das Bandzeichen steht. Zeichen steht für ein unbeschriftetes Feld.

Es gibt einen Schreib- und Lesekopf (kurz SLK), der immer auf einem bestimmten Feld des Bandes steht. Die Steuereinheit (endliche Kontrolle) ist immer in einem bestimmten Zustand.

Ein Schritt der Maschine besteht aus 4 Teilen: der SLK liest das Zeichen im aktuellen Feld; der SLK schreibt ein Zeichen auf das aktuelle Feld; der SLK bewegt sich nach links (L), rechts (R) oder bleibt stehen (N); die Kontrolle (Steuereinheit) geht in den nächsten Zustand über.

Definition: Eine Turingmaschine ist ein Tupel M = (Q, Σ, G,, d, q 0, q f ) mit: Q einer endlichen Menge von Zuständen; Σ dem Alphabet der Maschine; G dem Bandalphabet der Maschine (Zeichen, die als Feldbeschriftungen verwende werden dürfen). G, Σ G.

Definition: Eine Turingmaschine ist ein Tupel M = (Q, Σ, G,, d, q 0, q f ) mit: d (Q G ) (Q G {L, R, N}) ist die Übergangsrelation; q 0 ist der Anfangszustand; q f ist der Endzustand.

Ein Konfiguration ist ein Wort a q b mit a,b G *, q Q wobei: q ist der momentane Zustand; a ist die Beschriftung des Bandes links vom aktuellen Feld; b ist die Beschriftung des Bandes rechts vom aktuellen Feld.

Die aktuelle Konfiguration ist q a b b a a.

Definition: Ein Wort w S * liegt in der von einer gegebenen Turingmaschine M akzeptierten Sprache L(M), wenn ausgehend von der Anfangskonfiguration q 0 w durch die Übergangsrelationen der Endzustand q f erreicht werden kann.

Definition: Zwei Turingmaschinen M 1 und M 2 heissen sprachäquivalent, wenn L(M 1 ) = L(M 2 ). In dieser Definition muss nicht zwischen einer DTM und einer NTM unterschieden werden, da zu jeder nichtderministischen Turingmaschine eine sprachäquivalente deterministische Turingmaschine gefunden werden kann.

Beispiel: Die Sprache L 1 = {a n b n c n n N} ist Turing-akzeptierbar. Die Turingmaschine geht wie folgt vor: das erste a wird durch ein x ersetzt, dann wird das erste b gesucht und durch ein y ersetzt und dann das erste c durch ein z;

man geht zurück zum zweiten a, ersetzt es durch ein x, läuft zum zweiten b, ersetzt es durch ein y, läuft zum zweiten c und ersetzt es durch ein z; diese Schritte werden wiederholt solange, bis nach dem erzeugten z ein steht;

dann wird überprüft, ob es nur noch einen z-block, gefolgt von einem y-block, gefolgt von einem x-block gibt (abgeschlossen mit ); in dem Fall wird das Wort akzeptiert; die Maschine blockiert, wenn das nicht eintritt, oder schon vorher, falls das erwartete Zeichen (a, b, c) nicht gefunden wird.

Satz: Sei S ein Alphabet und L S *. Dann ist L vom Typ Chomsky-0, genau dann wenn L Turing-akzeptierbar ist.

Zur Charakterisierung von Typ 1-Sprachen benötigt man eine Unterklasse von NTM, bei der sich die Maschine nie über die linke oder rechte Grenze des Eingabeworts hinausbewegt. Diese speziellen NTMs werden linear beschränkte Automaten genannt.

Satz: Sei S ein Alphabet und L S *. Dann ist L vom Typ Chomsky-1, genau dann wenn L von einem linear beschränkten Automaten akzeptiert wird.

Kellerautomat Pushdown Automat PDA

Reguläre Sprachen Beispiel: Sei L 1 = {b m (aaa) n b k m,n,k N}. Diese Sprache ist regulär. Es gibt einen Automaten DEA oder NEA, der die Sprache akzeptiert.

Kontextfreie Sprachen Beispiel: Sei L 2 = {a n b n n N}. Diese Sprache ist kontextfrei, aber nicht regulär. Sie wird von einem Kellerautomaten akzeptiert.

Kontexsensitive Sprachen Beispiel: Sei L 3 = {a n b n c n n N}. Diese Sprache ist kontexsensitiv, aber nicht kontextfrei. Sie wird von eine TM akzeptiert.