Universelle Turingmaschinen

Ähnliche Dokumente
Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

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

Wir haben eine Beziehung zwischen entscheidbar und rekursiv aufzählbar hergeleitet.

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

Rekursiv aufzählbare Sprachen

Ausgewählte unentscheidbare Sprachen

Theoretische Informatik

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

Probeklausur zur Vorlesung Berechenbarkeit und Komplexität

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

Entscheidungsprobleme. Berechenbarkeit und Komplexität Entscheidbarkeit und Unentscheidbarkeit. Die Entscheidbarkeit von Problemen

Grammatiken und die Chomsky-Hierarchie

Formale Sprachen. Script, Kapitel 4. Grammatiken

Referat rekursive Mengen vs. rekursiv-aufzählbare Mengen

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

Theoretische Grundlagen der Informatik

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

Theorie der Informatik

Theoretische Informatik 2

Lösungen zur 3. Projektaufgabe TheGI1

Wie viel Mathematik kann ein Computer?

Berechenbarkeit und Komplexität

Theoretische Informatik 2

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

abgeschlossen unter,,,, R,

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Deterministische endliche Automaten

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

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

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Reduzierbarkeit und das Post'sche Korrespondenzproblem

Suche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften

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

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

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

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

2.4 Kontextsensitive und Typ 0-Sprachen

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

Berechenbarkeit. Script, Kapitel 2

LOOP-Programme: Syntaktische Komponenten

Formale Sprachen und Automaten

Automaten, Spiele, und Logik

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

Theoretische Informatik 1

Theoretische Informatik SS 03 Übung 3

Wortproblem für kontextfreie Grammatiken

Informatik II. Registermaschinen. Registermaschinen. Registermaschinen. Rainer Schrader. 7. Dezember 2005

1 Varianten von Turingmaschinen

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).

Theoretische Informatik 1

Zusammenfassung Grundzüge der Informatik 4

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

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

1 3 1є7 1є7 1є7 1є7 1є7 1є7 1є7 1є7 1є7 1є7 1є7

Theorie der Informatik

Einführung in die Theoretische Informatik

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Komplexität und Komplexitätsklassen

2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Algorithmen und Berechnungskomplexität II

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

Einführung in die Computerlinguistik Berechenbarkeit, Entscheidbarkeit, Halteproblem

Grundlagen der Theoretischen Informatik

Theoretische Grundlagen der Informatik

Was bisher geschah: Formale Sprachen

Formale Sprachen und Automaten

liefern eine nicht maschinenbasierte Charakterisierung der regulären

Übung Theoretische Grundlagen

Einführung in die Theoretische Informatik

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

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

Formale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

1 Prädikatenlogik: Korrektheit, Vollständigkeit, Entscheidbarkeit

2. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

Berechenbarkeitsmodelle

Deterministische endliche Automaten - Wiederholung

Speicherplatz-Komplexität 1 / 30

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

äußere Klammern können entfallen, ebenso solche, die wegen Assoziativität von + und Konkatenation nicht notwendig sind:

1- und 2-Wege QFAs. Stephan Sigg Quantentheoretische Grundlagen. 3. DFAs und QFAs. 4. Einige bekannte Ergebnisse

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai HA-Lösung. TA-Lösung

Kapitel 3: Berechnungstheorie Gliederung

8. Turingmaschinen und kontextsensitive Sprachen

BuK 2000 Lösungen Übungen

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Deterministischer Kellerautomat (DPDA)

Theoretische Informatik Testvorbereitung Moritz Resl

Theoretische Informatik Mitschrift

Theoretische Informatik Kap 2: Berechnungstheorie

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Mächtigkeit von WHILE-Programmen

Komplexität des Äquivalenzproblems für reguläre Ausdrücke

Grammatik konstruieren, Beispiel Ausdrücke der Aussagenlogik in zwei Prädikaten p und q und den Verknüpfungsoperationen. Produktionsregeln:

Transkript:

Universelle Turingmaschinen bisher: zum Erkennen einer rekursiven Sprache L wurde jeweils eine spezielle dtm M L angegeben jetzt: konstruieren feste dtm ( universelle Turingmaschine ), die als Eingabe eine (Kodierung einer) dtm und ein Wort w bekommt und die M auf w simuliert ( Interpreter ) 1 Normierte Turingmaschinen Def.: dtm M=(Q,Σ,Γ,δ,q 0,b,F) heisst normiert, falls Q = {1,,n}, Σ = {0,1}, Γ= {0, 1, 2}, q 0 =1, b=2, F={2,3}, F ja ={2}, F nein ={3} Satz: dtm M kann von einer normierten dtm S mit t S (n) = O(t M (n)) und s S (n) = O(s M (n)) simuliert werden. Übung 2

Kodierung normierter Turingmaschinen Def.: falls M = (Q,Σ,Γ,δ,q 0,b,F) normierte dtm, und δ(i,j) = (k,l,d m ) (wobei L=d 1, R=d 2 und S=d 3 ), so ist <i,j> := 0 i 10 j 10 k 10 l 10 m und <M> := 111<1,0>11<1,1>11<1,2>11<2,0>11 11<i,j>11 11<n,1>11<n,2>111є{0,1}* heisst Gödelnummer von M Gödelisierung von Turingmaschinen 3 Zur Kodierung von Turingmaschinen Bem.: jede normierte dtm M kann durch ein Wort <M>є{0,1}* kodiert werden jedes Wort wє{0,1}* beschreibt (unter dieser Kodierung) höchstens eine normierte dtm Konvention: jedes wє{0,1}* das nicht Kodierung einer normierten dtm ist, kodiert eine dtm die {} akzeptiert 4

Eine universelle Turingmaschine Satz: es gibt eine dtm U, die bei Eingabe <M>#w die Berechnung der dtm M auf der Eingabe w simuliert konstruieren 3-dtm Eingabe <M>#w auf Band 1 (Arbeitsband von M) Programm <M> auf Band 2 Aktueller Zustand i auf Band 3 5 Eine universelle Turingmaschine Vorbereitung: Ist die Eingabe syntaktisch korrekt? Falls ja, bewege den Kopf auf den 1. Buchstaben von w Kopiere das Programm <M> auf Band 2 Aktueller Zustand i wird als 0 i auf Band 3 geschrieben (am Anfang q 0 =1) 6

Eine universelle Turingmaschine Arbeitsweise von U im Zustand i Falls iє{2,3} stoppt U Falls i=2, wird akzeptiert, ansonsten (i=3) verworfen Lese auf Band 1 den Buchstaben j Suche auf Band 2 den Block der Form 0 i 10 j 10 k 10 l 10 m Falls der Block nicht existiert, stoppt U Ersetze Inhalt von Band 3 durch k Ersetze auf Band 1 den gelesenen Buchstaben durch l Bewege den Kopf auf Band 1 in Richtung d m 7 Diagonalsprache lexikographische Aufzählung von {0,1}* ε,0,1,00,01,10,11,000,001, Def.: Zu wє{0,1}* bezeichnet T w die dtm mit Gödelnummer w und L(T w ) die Sprache, die von akzeptiert wird Def.: {w i i 0} sei lexikographische Aufzählung von {0,1}* L D := {w i є{0,1}* T wi akzeptiert w i nicht} heisst Diagonalsprache 8

Diagonalsprache Satz: L D Angenommen, L D ist entscheidbar, d.h. es gibt dtm M mit Gödelnummer w j, die auf alleneingabenhältund L(M)=L D Falls w j є L D, so gilt M akzeptiert w j (Definition von L(M)) M verwirft w j (Definition von L D ) Falls w j є L c D, so gilt M verwirft w j (Definition von L(M)) M akzeptiert w j (Definition von L D ) 9 Komplement der Diagonalsprache Satz: L c D L D entscheidbare Sprachen sind unter Komplementbildung abgeschlossen 10

Reduktionskonzept Def.: Sei L 1, L 2 сσ*. Falls es eine totale, berechenbare Funktion f : Σ* Σ* gibt, mit wєσ* : wєl 1 gdw. f(w)єl 2, so heisst L 1 auf L 2 reduzierbar mittels f L 1 L 2 Wortproblem für L 1 wird übersetzt in Wortproblem für L 2 11 Eigenschaften von Reduktionen Satz: Sei L 1, L 2 сσ* mit L 1 L 2. Dann gilt L 2 entscheidbar L 1 entscheidbar L 1 nicht entscheidbar L 2 nicht entscheidbar L 1 L 2 mittels f es gibt dtm T mit f T =f L 2 ist entscheidbar es gibt dtm M mit L(M)=L 2 Konstruiere dtm N mit L(N)=L 1 berechne mittels T den Wert f(w) bei Eingabe w entscheide mittels M, ob f(w)єl 2 12

Das Halteproblem Problem: Entscheide, ob dtm gegeben durch ihr Programm in eine Endlosschleife gerät oder nicht Def.: H = {p#w T p hält auf wє{0,1}*} Halteproblem Def.: H ε = {p T p hält auf ε} spezielles Halteproblem 13 Unentscheidbarkeit des Halteproblems Satz: H für w=<m> mit M = (Q,Σ,Γ,δ,q 0,b,F) normierte dtm, sei w * =<M * > wobei M * = (Q,Σ,Γ,δ *,q 0,b,Fυ{ }) dtm mit δ * (i,j) := (k,l,d m ) falls δ(i,j) =(k,l,d m ), kєf\{3} δ * (i,j) := (,l,d m ) falls δ(i,j) =(3,l,d m ) δ * (,j) := (,j,3) für jєγ (ersetze nicht akzeptierende Endzustände von <w> durch Endlosschleifen) 14

Unentscheidbarkeit des Halteproblems Satz: H für totale, berechenbare Funktion f : w w * #w gilt wєl c D gdw. T w akzeptiert w gdw. T w* hält auf w gdw. f(w)єh, d.h. L c D H L c D Beh. 15 Unentscheidbarkeit des spez. Halteproblems Satz: H ε für p,wє{0,1}* sei M p#w є{0,1}* die Beschreibung einer dtm die auf das leere Band zunächst w schreibt und dann wie T p arbeitet die Funktion f : p#w <M p#w > ist total & berechenbar p#wєh gdw. T p akzeptiert w gdw. f(p#w)єh ε, d.h. H H ε H 16

Die universelle Sprache Def.: L univ = {p#w wєl(t p )} Satz: L univ L c D L univ ( Übung) Satz: L univ ist semi-entscheidbar betrachte universelle dtm U auf Eingabe p#w wird w von T p akzeptiert, d.h. wєl(t p ), geschieht dies nach endlich vielen Schritten und U akzeptiert auch ansonsten hält/akzeptiert U nicht 17 Die universelle Sprache Satz: L c univ ist nicht semi-entscheidbar (indirekt) angenommen L c univ ist semi-entscheidbar L univ ist semi-entscheidbar L univ ist entscheidbar Folgerung: Semi-entscheidbare Sprachen sind nicht unter Komplementbildung abgeschlossen Folgerung: Es gibt semi-entscheidbare Sprachen, die nicht entscheidbar sind 18

Eine natürliche unentscheidbare Sprache Def.: L regdtm = {<M> M ist dtm und L(M) ist regulär} Satz: L regdtm 19 Eine natürliche unentscheidbare Sprache Bew. : Sei p,wє{0,1}*. Für dtm M p#w, die eine Eingabe x akzeptiert, falls x=0 n 1 n für ein n 0, und sonst genau dann akzeptiert, falls die Simulation von T p auf w akzeptiert gilt: T p akzeptiert w L(M p#w )=Σ* (regulär) T p akzeptiert w nicht (d.h. verwirft oder terminiert nicht) L(M p#w )={0 n 1 n n 0} (nicht regulär) 20

Eine natürliche unentscheidbare Sprache f : p#w <M p#w > ist total und berechenbar p#wєl univ gdw. wєl(t p ) gdw. L(M p#w )=Σ* gdw. L(M p#w ) regulär gdw. <M p#w >єl regdtm gdw. f(p#w)єl regdtm, d.h. L univ L regdtm L univ 21 Der Satz von Rice Satz (ohne Bew.): Sei P eine Sprache mit: dtm M 1,M 2 : L(M 1 )=L(M 2 ) (<M 1 >єp <M 2 >єp) dtm M 1,M 2 : <M 1 >єp, <M 2 >єp c Dann ist P unentscheidbar. 22