Theorie der Informatik

Ähnliche Dokumente
11.1 Kontextsensitive und allgemeine Grammatiken

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

2.4 Kontextsensitive und Typ 0-Sprachen

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Theorie der Informatik

8. Turingmaschinen und kontextsensitive Sprachen

Theoretische Informatik 2

Rekursiv aufzählbare Sprachen

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

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

Formale Sprachen. Script, Kapitel 4. Grammatiken

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011

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

Kontextfreie Sprachen

Automaten und formale Sprachen Klausurvorbereitung

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Berechenbarkeit und Komplexität

Zusammenfassung Grundzüge der Informatik 4

Einführung in die Theoretische Informatik

Formale Sprachen und Automaten

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

Teil V. Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie

Aufgabentypen: Spickerblatt: kontextfrei (Typ 2): zusätzlich: u ist eine!"# v 1

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

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

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

Berechenbarkeit. Script, Kapitel 2

Grundlagen der Theoretischen Informatik

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis:

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

Sprachen und Automaten. Tino Hempel

Theorie der Informatik

Grundlagen der Theoretischen Informatik

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Theoretische Informatik 1

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

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

Formale Sprachen und endliche Automaten

Theoretische Informatik Testvorbereitung Moritz Resl

Vorlesung Theoretische Informatik

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Ausgewählte unentscheidbare Sprachen

Sanders: Informatik III December 14, Kontextsensitive und Typ 0-Sprachen

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Grundlagen der Theoretischen Informatik

Das Postsche Korrespondenzproblem

Satz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2

Theoretische Informatik 1

Deterministischer Kellerautomat (DPDA)

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

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

1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Einige Beispiele zur Turingmaschine

Deterministische Turing-Maschinen

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

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}}

Grundlagen der Theoretischen Informatik

(Prüfungs-)Aufgaben zu formale Sprachen

Theoretische Grundlagen der Informatik

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Formale Sprachen und Automaten

Wir müssen wissen, und wir werden wissen.

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik

Sprachen/Grammatiken eine Wiederholung

Lexikalische Programmanalyse der Scanner

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Grundlagen der Theoretischen Informatik

Wortproblem für kontextfreie Grammatiken

GTI. Hannes Diener. 6. Juni Juni. ENC B-0123, diener@math.uni-siegen.de

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten

Einführung in die Theoretische Informatik

Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Kontextsensitive und Typ 0 Sprachen

Kapitel 7: Kellerautomaten und kontextfreie Sprachen

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

Endliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für

... = für δ(z, a i ) = z. Abbildung 4.4: Interpretation der Arbeitsweise eines endlichen Automaten

Theoretische Grundlagen der Informatik

Reguläre Sprachen und endliche Automaten

LOOP-Programme: Syntaktische Komponenten

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2013

Induktive Definition

Kapitel 2: Formale Sprachen Gliederung

Kontextfreie Grammatiken

Das Rechenmodell namens. Turing-Maschine. Hans U. Simon (RUB) Homepage:

Theoretische Informatik 1

Transkript:

Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014

Kontextsensitive und allgemeine Grammatiken

Wiederholung: (kontextsensitive) Grammatiken Definition (Grammatik) Eine Grammatik ist ein 4-Tupel (Σ, V, P, S) mit Σ endliches Terminalalphabet, V endliche Menge von Variablen (mit V Σ = ), P (V Σ) + (V Σ) endliche Menge von Regeln, und S V Startvariable. Typ 0 und Typ 1 Jede Grammatik ist eine Typ-0-Grammatik. Bei kontextsensitiven (Typ-1) Grammatiken gilt für alle Regeln w 1 w 2, dass w 1 w 2. Einzige Ausnahme: Regel S ε ist für Startsymbol S erlaubt, falls S auf keiner rechten Regelseite vorkommt.

Fragen Fragen?

Turingmaschinen

Automatenmodell für Typ-1- und Typ-0-Sprachen? Endliche Automaten akzeptieren genau die regulären Sprachen, Kellerautomaten genau die kontextfreien Sprachen. Gibt es auch ein Automatenmodell für kontextsensitive und Typ-0-Sprachen? Foto mit freundlicher Genehmigung von imagerymajestic / FreeDigitalPhotos.net

Automatenmodell für Typ-1- und Typ-0-Sprachen? Endliche Automaten akzeptieren genau die regulären Sprachen, Kellerautomaten genau die kontextfreien Sprachen. Gibt es auch ein Automatenmodell für kontextsensitive und Typ-0-Sprachen? Ja! (Linear beschränkte) Turingmaschinen. Foto mit freundlicher Genehmigung von imagerymajestic / FreeDigitalPhotos.net

Alan Turing (1912-1954) Foto mit freundlicher Genehmigung von Jon Callas / wikimedia commons Britischer Logiker, Mathematiker, Kryptoanalytiker und Informatiker Wichtigste Arbeit (für uns): On Computable Numbers, with an Application to the Entscheidungsproblem Turingmaschine Mitarbeit an Enigma-Entschlüsselung Wegen Homosexualität zu Gefängnisstrafe verurteilt, wurde aber im Dezember 2013 von Elizabeth II begnadigt Turing-Award wichtigster Wissenschaftspreis in der Informatik

Turingmaschine: konzeptuell unendliches Band... B A C A C A C A... Schreib-Lese-Kopf

Nichtdeterministische Turingmaschine: Definition Definition (Nichtdeterministische Turingmaschine) Eine (nichtdeterministische) Turingmaschine (NTM) ist gegeben durch ein 7-Tupel M = Z, Σ, Γ, δ, z 0,, E mit: Z endliche, nicht-leere Menge von Zuständen Σ endliches Eingabealphabet Γ Σ endliches Bandalphabet δ : (Z \ E) Γ P(Z Γ {L, R, N}) Übergangsfunktion z 0 Z Startzustand Γ \ Σ Blank-Zeichen E Z Endzustände

Turingmaschine: Übergangsfunktion Sei M = Z, Σ, Γ, δ, z 0,, E nichtdeterministische Turingmaschine. Was bedeutet Übergangsfunktion δ intuitiv? (z, b, B) δ(z, a): Wenn M im Zustand z das Zeichen a liest, dann kann M im nächsten Schritt in Zustand z übergehen, a durch b ersetzen, und den Schreib-Lesekopf in Richtung B {L, N, R} bewegen. Dabei bedeutet L einen Schritt nach links, N die neutrale Bewegung (also Stehenbleiben), und R einen Schritt nach rechts. a b, B z z

Nichtdeterministische Turingmaschine: Beispiel M = ({z 0, z 1,..., z 6 }, {1, +, =}, {1, +, =, X, }, δ, z 0,, {z 6 }) X X, R 1 1, R + +, R + +, R X X, R z 2 = =, R z 1 1 X, R z 0 = =, R z 5 1 X, L, N X X, R z 3 z 4 = =, L z 6 X X, L 1 1, L + +, L

Turingmaschine: Konfiguration Definition (Konfiguration einer Turingmaschine) Eine Konfiguration einer Turingmaschine M = Z, Σ, Γ, δ, z 0,, E ist gegeben durch ein Wort k Γ ZΓ +. Konfiguration w 1 zw 2 bedeutet, dass der nicht-leere bzw. bereits besuchte Teil des Bandes das Wort w 1 w 2 enthält, der Schreib-Lesekopf auf dem ersten Zeichen von w 2 steht und die TM sich in Zustand z befindet. Beispiel... V O R A B... z Konfiguration VORzAB.

Turingmaschine: Berechnungsschritt Definition (Berechnungsschritt einer Turingmaschine) Eine NTM M = Z, Σ, Γ, δ, z 0,, E kann nach den folgenden Regeln in einem Berechnungsschritt von Konfiguration k in Konfiguration k übergehen (k M k ): a 1... a m zb 1... b n M a 1... a m z cb 2... b n, falls (z, c, N) δ(z, b 1 ), m 0, n 1 a 1... a m cz b 2... b n, falls (z, c, R) δ(z, b 1 ), m 0, n 2 a 1... a m 1 z a m cb 2... b n, falls (z, c, L) δ(z, b 1 ), m 1, n 1 a 1... a m cz, falls (z, c, R) δ(z, b 1 ), m 0, n = 1 z cb 2... b n, falls (z, c, L) δ(z, b 1 ), m = 0, n 1

Turingmaschine: Erreichbarkeit von Konfigurationen Definition (Erreichbare Konfiguration) Konfiguration k ist mit NTM M von Konfiguration k aus erreichbar (k M k ), falls k = k oder es gibt Konfigurationen k 0,..., k n (n 1), so dass k 0 = k, k i M k i+1 für i {0,..., n 1}, und k n = k.

Turingmaschine: Erkanntes Wort Definition (erkanntes Wort bei Turingmaschinen) NTM M = Z, Σ, Γ, δ, z 0,, E erkennt das Wort w genau dann, wenn M von der Startkonfiguration z 0 w mit endlich vielen Berechnungsschritten in eine Konfiguration mit einem Endzustand übergehen kann: M erkennt w gdw. z 0 w M w 1zw 2 mit z E, w 1 Γ, w 2 Γ +. Spezialfall: Für w = ε ist die Startkonfiguration z 0. Beispiel: Tafel

Quiz

Quiz M = ({z 0, z 1,..., z 6 }, {x}, {x, Y, }, δ, z 0,, {z 6, z 7 }) Y Y, R Y Y, R Y Y, R x x, R z 0 x x, R x Y, R z 1 z 2 x Y, R z 3, N x x, R, L z 6, N z 5, R z 4 Y Y, R x x, L Y Y, L

Turingmaschine: Akzeptierte Sprache Definition (akzeptierte Sprache einer NTM) Sei M eine nichtdeterministische Turingmaschine mit Eingabealphabet Σ. Die von M akzeptierte Sprache ist definiert durch L(M) = {w Σ w wird von M erkannt}. Beispiel: Tafel

Fragen Fragen?

Linear beschränkte Turingmaschinen Brauchen wir nicht unterschiedliche Automatenmodelle für kontextsensitive und Typ-0-Sprachen? Foto mit freundlicher Genehmigung von stockimages / FreeDigitalPhotos.net

Linear beschränkte Turingmaschinen: Idee Linear beschränkte Turingmaschinen dürfen nur den Teil des Bandes verwenden, der durch das Eingabewort belegt wird. Kann vorderes Ende der Eingabe im ersten Schritt markieren. Problem: Muss verhindern, über das hintere Bandende hinauszulaufen Für Sprache über Σ hat linear beschränkte Turingmaschine modifiziertes Eingabealphabet Σ {â a Σ}. Eigentliche Eingabe a 1... a n wird auf dem Band repräsentiert als a 1... a n 1 â n.

Linear beschränkte Turingmaschinen: Idee Linear beschränkte Turingmaschinen dürfen nur den Teil des Bandes verwenden, der durch das Eingabewort belegt wird. Kann vorderes Ende der Eingabe im ersten Schritt markieren. Problem: Muss verhindern, über das hintere Bandende hinauszulaufen Für Sprache über Σ hat linear beschränkte Turingmaschine modifiziertes Eingabealphabet Σ {â a Σ}. Eigentliche Eingabe a 1... a n wird auf dem Band repräsentiert als a 1... a n 1 â n.

Linear beschränkte Turingmaschinen: Idee Linear beschränkte Turingmaschinen dürfen nur den Teil des Bandes verwenden, der durch das Eingabewort belegt wird. Kann vorderes Ende der Eingabe im ersten Schritt markieren. Problem: Muss verhindern, über das hintere Bandende hinauszulaufen Für Sprache über Σ hat linear beschränkte Turingmaschine modifiziertes Eingabealphabet Σ {â a Σ}. Eigentliche Eingabe a 1... a n wird auf dem Band repräsentiert als a 1... a n 1 â n.

Linear beschränkte Turingmaschinen: Idee Linear beschränkte Turingmaschinen dürfen nur den Teil des Bandes verwenden, der durch das Eingabewort belegt wird. Kann vorderes Ende der Eingabe im ersten Schritt markieren. Problem: Muss verhindern, über das hintere Bandende hinauszulaufen Für Sprache über Σ hat linear beschränkte Turingmaschine modifiziertes Eingabealphabet Σ {â a Σ}. Eigentliche Eingabe a 1... a n wird auf dem Band repräsentiert als a 1... a n 1 â n.

Linear beschränkte Turingmaschinen: Idee Linear beschränkte Turingmaschinen dürfen nur den Teil des Bandes verwenden, der durch das Eingabewort belegt wird. Kann vorderes Ende der Eingabe im ersten Schritt markieren. Problem: Muss verhindern, über das hintere Bandende hinauszulaufen Für Sprache über Σ hat linear beschränkte Turingmaschine modifiziertes Eingabealphabet Σ {â a Σ}. Eigentliche Eingabe a 1... a n wird auf dem Band repräsentiert als a 1... a n 1 â n.

Linear beschränkte Turingmaschinen: Definition Definition (Linear beschränkte NTM) Eine (nichtdeterministische) Turingmaschine heisst linear beschränkt, wenn für alle a 1... a n Σ + und alle Konfigurationen w 1 zw 2 mit z 0 a 1... a n 1 â n w 1 zw 2 gilt w 1 w 2 = n.

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Satz Die von linear beschränkten, nichtdeterministischen Turingmaschinen (LBAs) akzeptierbaren Sprachen sind genau die kontextsensitiven (Typ 1) Sprachen.

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Satz Die von linear beschränkten, nichtdeterministischen Turingmaschinen (LBAs) akzeptierbaren Sprachen sind genau die kontextsensitiven (Typ 1) Sprachen. Beweis. Sei G = (V, Σ, P, S) eine kontextsensitive Grammatik. Wir beschreiben eine TM M mit L(M) = L(G)....

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Gestartet auf Eingabe x Σ wählt M nichtdeterministisch eine Regel u v P und sucht ein Vorkommen von v auf dem Band. Falls sie eines findet, ersetzt sie v durch u, wobei im Fall u < v die Bandsymbole hinter u entsprechend nach vorne verschoben werden. Falls der nicht-leere Teil des Bandes nur noch aus der Startvariable S besteht, wechselt die TM in einen Endzustand. Sonst wiederholt sie die nichtdeterministische Ersetzung. Es gilt:...

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Gestartet auf Eingabe x Σ wählt M nichtdeterministisch eine Regel u v P und sucht ein Vorkommen von v auf dem Band. Falls sie eines findet, ersetzt sie v durch u, wobei im Fall u < v die Bandsymbole hinter u entsprechend nach vorne verschoben werden. Falls der nicht-leere Teil des Bandes nur noch aus der Startvariable S besteht, wechselt die TM in einen Endzustand. Sonst wiederholt sie die nichtdeterministische Ersetzung. Es gilt: x L(G) gdw. es gibt Ableitung S x mit G gdw. es gibt Rechnung von M, die diese Ableitung in umgekehrter Richtung simuliert gdw. x L(M)...

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Gestartet auf Eingabe x Σ wählt M nichtdeterministisch eine Regel u v P und sucht ein Vorkommen von v auf dem Band. Falls sie eines findet, ersetzt sie v durch u, wobei im Fall u < v die Bandsymbole hinter u entsprechend nach vorne verschoben werden. Falls der nicht-leere Teil des Bandes nur noch aus der Startvariable S besteht, wechselt die TM in einen Endzustand. Sonst wiederholt sie die nichtdeterministische Ersetzung. Es gilt: x L(G) gdw. es gibt Ableitung S x mit G gdw. es gibt Rechnung von M, die diese Ableitung in umgekehrter Richtung simuliert gdw. x L(M) Da für u v P gilt, dass u v, ist M linear beschränkt....

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Sei M eine LBA. Wir konstruieren Grammatik G, die auf Wörten operiert, die Konfigurationen von M entsprechen. Die Wörter sollen nicht länger werden als die Eingabe. Verwende daher Alphabet = Γ (Z Γ). Eine Konfiguration azbcd wird dann z.b. durch das Wort a(z, b)cd repräsentiert....

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Sei M eine LBA. Wir konstruieren Grammatik G, die auf Wörten operiert, die Konfigurationen von M entsprechen. Die Wörter sollen nicht länger werden als die Eingabe. Verwende daher Alphabet = Γ (Z Γ). Eine Konfiguration azbcd wird dann z.b. durch das Wort a(z, b)cd repräsentiert. Ein δ-übergang (z, b, L) δ(z, a) von M kann dann zum Beispiel durch Grammatikregeln c(z, a) (z, c)b für alle c Γ beschrieben werden. Die Menge aller solcher Regeln sei P. Dann gilt k M k gdw. k k mit P, wobei k die oben beschriebene Darstellung von k ist....

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Insgesamt wollen wir eine Grammatik konstruieren, die folgendermassen Wörter a 1... a n ableiten kann: 1 S ((z 0, a 1 ), a 1 )(a 2, a 2 )... (a n 1, a n 1 )(â n, a n ), wobei die erste Komponente dabei eine TM-Konfiguration, und die zweite Komponente das Eingabewort ist. Idee: Starte von Startkonfiguration. 2 (γ 1, a 1 )... (γ n, a n ), wobei für ein i {1,..., n} gilt γ i E Γ und für alle j i gilt γ j Γ. Idee: Simuliere Berechnung der TM auf erster Komponente (mit Regeln aus P ) bis Endzustand erreicht ist. 3 a 1... a n Idee: Lösche dann erste Komponente....

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Dies wird durch die Grammatik G = (Σ, V, P, S) erreicht, wobei: V = {S, A} ( Σ)

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Dies wird durch die Grammatik G = (Σ, V, P, S) erreicht, wobei: V = {S, A} ( Σ) P = {S A(â, a) a Σ} {A A(a, a) a Σ} {A ((z 0, a), a) a Σ}

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Dies wird durch die Grammatik G = (Σ, V, P, S) erreicht, wobei: V = {S, A} ( Σ) P = {S A(â, a) a Σ} {A A(a, a) a Σ} {A ((z 0, a), a) a Σ} {(α 1, a)(α 2, b) (β 1, a)(β 2, b) α 1 α 2 β 1 β 2 P, {(α 1, a)(α 2, b) (β 1, a)(β 2, b) a, b Σ}

Linear beschränkte NTMs akzeptieren Typ-1-Sprachen Beweis (Fortsetzung). Dies wird durch die Grammatik G = (Σ, V, P, S) erreicht, wobei: V = {S, A} ( Σ) P = {S A(â, a) a Σ} {A A(a, a) a Σ} {A ((z 0, a), a) a Σ} {(α 1, a)(α 2, b) (β 1, a)(β 2, b) α 1 α 2 β 1 β 2 P, {(α 1, a)(α 2, b) (β 1, a)(β 2, b) a, b Σ} {((z, a), b) b z E, a Γ, b Σ} {(a, b) b a Γ, b Σ} Offensichtlich sind alle Regeln vom Typ 1.

NTMs akzeptieren Typ-0-Sprachen Satz Die durch nichtdeterministische Turingmaschinen akzeptierbaren Sprachen sind genau die Typ-0-Sprachen. Beweisskizze. Analog zum Beweis für LBAs und kontextsensitive Sprachen.

Fragen Fragen?

Deterministische Turingmaschinen Definition (Deterministische Turingmaschine) Eine deterministische Turingmaschine (DTM) ist eine Turingmaschine M = Z, Σ, Γ, δ, z 0,, E mit δ : (Z \ E) Γ Z Γ {L, R, N}.

Deterministische Turingmaschinen Satz Für jede Typ-0-Sprache L gibt es eine deterministische Turingmaschine M mit L(M) = L.

Deterministische Turingmaschinen Satz Für jede Typ-0-Sprache L gibt es eine deterministische Turingmaschine M mit L(M) = L. Beweisskizze. Sei M eine nichtdeterministische Turingmaschine mit L(M ) = L. Man konstruiert eine deterministische Turingmaschine, die systematisch den Berechnungsbaum von M nach einer Konfiguration mit Endzustand untersucht.

Deterministische Turingmaschinen Satz Für jede Typ-0-Sprache L gibt es eine deterministische Turingmaschine M mit L(M) = L. Beweisskizze. Sei M eine nichtdeterministische Turingmaschine mit L(M ) = L. Man konstruiert eine deterministische Turingmaschine, die systematisch den Berechnungsbaum von M nach einer Konfiguration mit Endzustand untersucht. Bemerkung: Es ist ein offenes Problem, ob der Satz analog für Typ-1-Sprachen und deterministische LBAs gilt.

Abschlusseigenschaften und Entscheidbarkeit

Abschlusseigenschaften Schnitt Vereinigung Komplement Produkt Stern Typ 3 Ja Ja Ja Ja Ja Typ 2 Nein Ja Nein Ja Ja Typ 1 Ja (1) Ja (3) Ja (1) Ja (3) Ja (3) Typ 0 Ja (3) Ja (3) Nein (2) Ja (3) Ja (3) Beweise? (1) ohne Beweis (2) Beweis in späteren Vorlesungskapiteln (3) Beweis in den Übungen

Entscheidbarkeit Wortproblem Leerheitsproblem Äquivalenzproblem Schnittproblem Typ 3 Ja Ja Ja Ja Typ 2 Ja Ja Nein Nein Typ 1 Ja Nein (1) Nein (1) Nein (1) Typ 0 Nein (2) Nein (2) Nein (2) Nein (2) (1) ohne Beweise (2) Beweis in Vorlesungsabschnitt 3 Wortproblem bei kontextsensitiven Sprachen: Mit Typ-1-Grammatiken werden Wörter durch Ableitungen niemals kürzer, daher kann man alle Ableitungsmöglichkeiten bis zur Grösse des gegebenen Wortes ausprobieren.

Fragen Fragen?

Zusammenfassung

Zusammenfassung Turingmaschinen haben zwar nur endlich viele Zustände, aber ein unendlich grosses Band als Speicher. Turingmaschinen akzeptieren genau die Typ-0-Sprachen. Dies gilt auch für deterministische Turingmaschinen. Linear beschränkte Turingmaschinen akzeptieren genau die kontextsensitiven Sprachen. Die kontextsensitiven und Typ-0-Sprachen sind unter fast allen gängigen Operationen abgeschlossen. Ausnahme: Typ-0 nicht unter Komplement abgeschlossen Für kontextsensitive und Typ-0-Sprachen ist fast kein Problem entscheidbar. Ausnahme: Wortproblem für Typ-1 ist entscheidbar.

Wo sind wir und wie geht es weiter? Inhalte dieser Vorlesung Logik Wie kann man Wissen und Zusammenhänge repräsentieren und automatisiert verarbeiten? Automatentheorie und formale Sprachen Was ist eine Berechnung? Berechenbarkeitstheorie Was kann überhaupt berechnet werden? Komplexitätstheorie Was kann effizient berechnet werden?

Wo sind wir und wie geht es weiter? Inhalte dieser Vorlesung Logik Wie kann man Wissen und Zusammenhänge repräsentieren und automatisiert verarbeiten? Automatentheorie und formale Sprachen Was ist eine Berechnung? Berechenbarkeitstheorie Was kann überhaupt berechnet werden? Komplexitätstheorie Was kann effizient berechnet werden?