10.07.2015 Aufrufe

Vorlesung Theoretische Grundlagen - Entscheidbarkeit - IKS - KIT

Vorlesung Theoretische Grundlagen - Entscheidbarkeit - IKS - KIT

Vorlesung Theoretische Grundlagen - Entscheidbarkeit - IKS - KIT

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Vorlesung</strong> <strong>Theoretische</strong> <strong>Grundlagen</strong><strong>Entscheidbarkeit</strong>Nico Döttling | November 19, 2009INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT<strong>KIT</strong> – University of the State of Baden-Wuerttemberg andNational Laboratory of the Helmholtz Associationwww.kit.edu


Themen1 Universelle Turingmaschinen und Gödelnummern2 Diagonalisierung3 Nicht-entscheidbare Probleme4 Semi-<strong>Entscheidbarkeit</strong>Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 2/32


Letztes malUniverselle Turingmaschine U: Nimmt als Eigabe eine{0,1}-Codierung einer Turingmaschine M und eineEingabe w ∈ {0, 1} ∗ . U simuliert dann die Berechnung vonM bei Eingabe w und akzeptiert genau dann wenn Makzeptiert.Eine Codierung einer Turingmaschine über einemendlichen Alphabet Σ oder äquivalent dazu N nennt sichGödelisierung (nach Kurt Gödel). Für eine gegebeneTuringmaschine M schreiben wir 〈M〉 für dieGödelnummer von M. Für gegebene Gödelnummer wschreiben wir M w für die zugehörige Turingmaschine.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 3/32


Letztes malUniverselle Turingmaschine U: Nimmt als Eigabe eine{0,1}-Codierung einer Turingmaschine M und eineEingabe w ∈ {0, 1} ∗ . U simuliert dann die Berechnung vonM bei Eingabe w und akzeptiert genau dann wenn Makzeptiert.Eine Codierung einer Turingmaschine über einemendlichen Alphabet Σ oder äquivalent dazu N nennt sichGödelisierung (nach Kurt Gödel). Für eine gegebeneTuringmaschine M schreiben wir 〈M〉 für dieGödelnummer von M. Für gegebene Gödelnummer wschreiben wir M w für die zugehörige Turingmaschine.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 3/32


Letztes malUniverselle Turingmaschine U: Nimmt als Eigabe eine{0,1}-Codierung einer Turingmaschine M und eineEingabe w ∈ {0, 1} ∗ . U simuliert dann die Berechnung vonM bei Eingabe w und akzeptiert genau dann wenn Makzeptiert.Eine Codierung einer Turingmaschine über einemendlichen Alphabet Σ oder äquivalent dazu N nennt sichGödelisierung (nach Kurt Gödel). Für eine gegebeneTuringmaschine M schreiben wir 〈M〉 für dieGödelnummer von M. Für gegebene Gödelnummer wschreiben wir M w für die zugehörige Turingmaschine.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 3/32


Letztes malBei inkonsistenter Codierung w (w keine korrekteGödelnummer) von M lehnt U die Eingabe ab. Zu einerinkonsistenten Gödelnummer gehört also immer dieMaschine die die leere Menge entscheidet.Man kann sich Gödelnummer als eine Formalisierung vonComputerprogrammen vorstellen.Die universelle Turingmaschine ist dann der Interpreterder dieses Programm ausführt (Perl, Python etc.).Die Codierung selber ist eindeutig (injektiv), die Wahl derCodierung ist aber nicht eindeutig! Die in der letzten<strong>Vorlesung</strong> angegebene Codierung stammt aus [Weg99],es gibt effizientere (d.h nicht unäre) Codierungen.Codierabbildung selber ist also vergleichbar mitProgrammiersprachen (wovon es ja auch mehrere gibt)Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 4/32


Letztes malBei inkonsistenter Codierung w (w keine korrekteGödelnummer) von M lehnt U die Eingabe ab. Zu einerinkonsistenten Gödelnummer gehört also immer dieMaschine die die leere Menge entscheidet.Man kann sich Gödelnummer als eine Formalisierung vonComputerprogrammen vorstellen.Die universelle Turingmaschine ist dann der Interpreterder dieses Programm ausführt (Perl, Python etc.).Die Codierung selber ist eindeutig (injektiv), die Wahl derCodierung ist aber nicht eindeutig! Die in der letzten<strong>Vorlesung</strong> angegebene Codierung stammt aus [Weg99],es gibt effizientere (d.h nicht unäre) Codierungen.Codierabbildung selber ist also vergleichbar mitProgrammiersprachen (wovon es ja auch mehrere gibt)Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 4/32


Letztes malBei inkonsistenter Codierung w (w keine korrekteGödelnummer) von M lehnt U die Eingabe ab. Zu einerinkonsistenten Gödelnummer gehört also immer dieMaschine die die leere Menge entscheidet.Man kann sich Gödelnummer als eine Formalisierung vonComputerprogrammen vorstellen.Die universelle Turingmaschine ist dann der Interpreterder dieses Programm ausführt (Perl, Python etc.).Die Codierung selber ist eindeutig (injektiv), die Wahl derCodierung ist aber nicht eindeutig! Die in der letzten<strong>Vorlesung</strong> angegebene Codierung stammt aus [Weg99],es gibt effizientere (d.h nicht unäre) Codierungen.Codierabbildung selber ist also vergleichbar mitProgrammiersprachen (wovon es ja auch mehrere gibt)Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 4/32


Letztes malBei inkonsistenter Codierung w (w keine korrekteGödelnummer) von M lehnt U die Eingabe ab. Zu einerinkonsistenten Gödelnummer gehört also immer dieMaschine die die leere Menge entscheidet.Man kann sich Gödelnummer als eine Formalisierung vonComputerprogrammen vorstellen.Die universelle Turingmaschine ist dann der Interpreterder dieses Programm ausführt (Perl, Python etc.).Die Codierung selber ist eindeutig (injektiv), die Wahl derCodierung ist aber nicht eindeutig! Die in der letzten<strong>Vorlesung</strong> angegebene Codierung stammt aus [Weg99],es gibt effizientere (d.h nicht unäre) Codierungen.Codierabbildung selber ist also vergleichbar mitProgrammiersprachen (wovon es ja auch mehrere gibt)Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 4/32


HeuteGrenzen der <strong>Entscheidbarkeit</strong>.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 5/32


HeuteGrenzen der <strong>Entscheidbarkeit</strong>.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 5/32


Akzeptoren und EntscheiderSei L ⊆ Σ ∗ eine Sprache.L ∈ R, also L ist entscheidbar (älter: rekursiv) genau dannwenn es eine Turingmaschine M gibt die L entscheidet.Ein Entscheider M hält bei jeder Eingabe w ∈ Σ ∗ ,unabhängig davon ob x ∈ L oder nicht.L ∈ RE, also L ist semi-entscheidbar (älter: rekursivaufzählbar, engl. recursively enumerable) genau dannwenn es eine Turingmaschine M gibt die L akzeptiert.Falls ein Wort w ∈ Σ ∗ /∈ L, so ist das Verhalten von M beiEingabe w nicht spezifiziert, es kann also sein dass dieBerechnung von M unter Umständen garnicht terminiert.Wir sagen in einem solchen Fall: M hält nicht(Endlosschleife).L ∈ co − RE falls L = Σ ∗ \L ∈ REUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 6/32


Akzeptoren und EntscheiderSei L ⊆ Σ ∗ eine Sprache.L ∈ R, also L ist entscheidbar (älter: rekursiv) genau dannwenn es eine Turingmaschine M gibt die L entscheidet.Ein Entscheider M hält bei jeder Eingabe w ∈ Σ ∗ ,unabhängig davon ob x ∈ L oder nicht.L ∈ RE, also L ist semi-entscheidbar (älter: rekursivaufzählbar, engl. recursively enumerable) genau dannwenn es eine Turingmaschine M gibt die L akzeptiert.Falls ein Wort w ∈ Σ ∗ /∈ L, so ist das Verhalten von M beiEingabe w nicht spezifiziert, es kann also sein dass dieBerechnung von M unter Umständen garnicht terminiert.Wir sagen in einem solchen Fall: M hält nicht(Endlosschleife).L ∈ co − RE falls L = Σ ∗ \L ∈ REUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 6/32


Akzeptoren und EntscheiderSei L ⊆ Σ ∗ eine Sprache.L ∈ R, also L ist entscheidbar (älter: rekursiv) genau dannwenn es eine Turingmaschine M gibt die L entscheidet.Ein Entscheider M hält bei jeder Eingabe w ∈ Σ ∗ ,unabhängig davon ob x ∈ L oder nicht.L ∈ RE, also L ist semi-entscheidbar (älter: rekursivaufzählbar, engl. recursively enumerable) genau dannwenn es eine Turingmaschine M gibt die L akzeptiert.Falls ein Wort w ∈ Σ ∗ /∈ L, so ist das Verhalten von M beiEingabe w nicht spezifiziert, es kann also sein dass dieBerechnung von M unter Umständen garnicht terminiert.Wir sagen in einem solchen Fall: M hält nicht(Endlosschleife).L ∈ co − RE falls L = Σ ∗ \L ∈ REUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 6/32


Akzeptoren und EntscheiderSei L ⊆ Σ ∗ eine Sprache.L ∈ R, also L ist entscheidbar (älter: rekursiv) genau dannwenn es eine Turingmaschine M gibt die L entscheidet.Ein Entscheider M hält bei jeder Eingabe w ∈ Σ ∗ ,unabhängig davon ob x ∈ L oder nicht.L ∈ RE, also L ist semi-entscheidbar (älter: rekursivaufzählbar, engl. recursively enumerable) genau dannwenn es eine Turingmaschine M gibt die L akzeptiert.Falls ein Wort w ∈ Σ ∗ /∈ L, so ist das Verhalten von M beiEingabe w nicht spezifiziert, es kann also sein dass dieBerechnung von M unter Umständen garnicht terminiert.Wir sagen in einem solchen Fall: M hält nicht(Endlosschleife).L ∈ co − RE falls L = Σ ∗ \L ∈ REUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 6/32


Der Barbier von SevillaDiagonalisierung: Beweistechnik um Nichtexistenz vonObjekten zu zeigen.Beginn der Mengenlehre (Ende 19tes Jhd.): Die Menge Asei die Menge die alle anderen Mengen als TeilmengenenthältTheorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selberZu jeder Menge M ist die Potenzmenge P(M)wohldefiniert."‘Echt mächtiger"’ im Sinne der Mathematik: Es gibt keinesurjektive (volle) Abbildung von M nach P(M).Damit: A kann P(A) nicht als Teilmenge enthalten! Es gibtdie Menge A nicht!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 7/32


Der Barbier von SevillaDiagonalisierung: Beweistechnik um Nichtexistenz vonObjekten zu zeigen.Beginn der Mengenlehre (Ende 19tes Jhd.): Die Menge Asei die Menge die alle anderen Mengen als TeilmengenenthältTheorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selberZu jeder Menge M ist die Potenzmenge P(M)wohldefiniert."‘Echt mächtiger"’ im Sinne der Mathematik: Es gibt keinesurjektive (volle) Abbildung von M nach P(M).Damit: A kann P(A) nicht als Teilmenge enthalten! Es gibtdie Menge A nicht!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 7/32


Der Barbier von SevillaDiagonalisierung: Beweistechnik um Nichtexistenz vonObjekten zu zeigen.Beginn der Mengenlehre (Ende 19tes Jhd.): Die Menge Asei die Menge die alle anderen Mengen als TeilmengenenthältTheorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selberZu jeder Menge M ist die Potenzmenge P(M)wohldefiniert."‘Echt mächtiger"’ im Sinne der Mathematik: Es gibt keinesurjektive (volle) Abbildung von M nach P(M).Damit: A kann P(A) nicht als Teilmenge enthalten! Es gibtdie Menge A nicht!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 7/32


Der Barbier von SevillaDiagonalisierung: Beweistechnik um Nichtexistenz vonObjekten zu zeigen.Beginn der Mengenlehre (Ende 19tes Jhd.): Die Menge Asei die Menge die alle anderen Mengen als TeilmengenenthältTheorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selberZu jeder Menge M ist die Potenzmenge P(M)wohldefiniert."‘Echt mächtiger"’ im Sinne der Mathematik: Es gibt keinesurjektive (volle) Abbildung von M nach P(M).Damit: A kann P(A) nicht als Teilmenge enthalten! Es gibtdie Menge A nicht!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 7/32


Der Barbier von SevillaDiagonalisierung: Beweistechnik um Nichtexistenz vonObjekten zu zeigen.Beginn der Mengenlehre (Ende 19tes Jhd.): Die Menge Asei die Menge die alle anderen Mengen als TeilmengenenthältTheorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selberZu jeder Menge M ist die Potenzmenge P(M)wohldefiniert."‘Echt mächtiger"’ im Sinne der Mathematik: Es gibt keinesurjektive (volle) Abbildung von M nach P(M).Damit: A kann P(A) nicht als Teilmenge enthalten! Es gibtdie Menge A nicht!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 7/32


Der Barbier von SevillaDiagonalisierung: Beweistechnik um Nichtexistenz vonObjekten zu zeigen.Beginn der Mengenlehre (Ende 19tes Jhd.): Die Menge Asei die Menge die alle anderen Mengen als TeilmengenenthältTheorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selberZu jeder Menge M ist die Potenzmenge P(M)wohldefiniert."‘Echt mächtiger"’ im Sinne der Mathematik: Es gibt keinesurjektive (volle) Abbildung von M nach P(M).Damit: A kann P(A) nicht als Teilmenge enthalten! Es gibtdie Menge A nicht!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 7/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Beweis des Satzes von Cantor(Halmos)Annahme: Es gibt eine surjective Abbildung σ : M → P(M).Wir definieren folgende Menge H = {x ∈ M|x /∈ σ(x)}.Klar: H ist eine Teilmenge von M, also H ∈ P(M).Da σ surjektiv ist gibt es ein h ∈ M mit σ(h) = H.Frage: Ist h ∈ H?h ∈ H Def ⇔ Hh /∈ σ(h)⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ HWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 8/32


Korrolare von Cantors SatzDie reellen Zahlen R sind echt mächtiger als N, alsoüberabzählbar. Dazu gibt man (fast) injektive Abb.P(N) → R an.Da für jedes endliche Σ gilt #Σ ∗ = #N gibt es#P(Σ ∗ ) = #P(N) (überabzählbar viele) Sprachen über Σ.Da die Gödelisierung eindeutig ist gibt es aber nur #N(abzählbar viele) Turingmaschinen. Eine Turingmaschineakzeptiert aber genau eine Sprache. Es gibt alsoSprachen die nicht entscheidbar sind!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 9/32


Korrolare von Cantors SatzDie reellen Zahlen R sind echt mächtiger als N, alsoüberabzählbar. Dazu gibt man (fast) injektive Abb.P(N) → R an.Da für jedes endliche Σ gilt #Σ ∗ = #N gibt es#P(Σ ∗ ) = #P(N) (überabzählbar viele) Sprachen über Σ.Da die Gödelisierung eindeutig ist gibt es aber nur #N(abzählbar viele) Turingmaschinen. Eine Turingmaschineakzeptiert aber genau eine Sprache. Es gibt alsoSprachen die nicht entscheidbar sind!Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 9/32


NichtentscheidbarkeitDas war ein nichtkonstruktives Argument.Wir wissen nun dass es nicht-entscheidbare Sprachen gibtaber wissen noch von keiner konkreten Sprache dienicht-entscheidbar ist.Wir gehen nun ähnlich wie im Beweis des Satzes vonCantor vor.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 10/32


NichtentscheidbarkeitDas war ein nichtkonstruktives Argument.Wir wissen nun dass es nicht-entscheidbare Sprachen gibtaber wissen noch von keiner konkreten Sprache dienicht-entscheidbar ist.Wir gehen nun ähnlich wie im Beweis des Satzes vonCantor vor.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 10/32


NichtentscheidbarkeitDas war ein nichtkonstruktives Argument.Wir wissen nun dass es nicht-entscheidbare Sprachen gibtaber wissen noch von keiner konkreten Sprache dienicht-entscheidbar ist.Wir gehen nun ähnlich wie im Beweis des Satzes vonCantor vor.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 10/32


Die DiagonalspracheWir definieren folgende Sprache über o.B.d.A Σ = {0, 1}.L D = {w ∈ Σ ∗ | M w akzeptiert w nicht }Behauptung: Die Diagonalsprache ist nicht entscheidbar.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 11/32


Die DiagonalspracheWir definieren folgende Sprache über o.B.d.A Σ = {0, 1}.L D = {w ∈ Σ ∗ | M w akzeptiert w nicht }Behauptung: Die Diagonalsprache ist nicht entscheidbar.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 11/32


Die DiagonalspracheAnnahme: L D ist entscheidbar.Dann gibt es eine Turingmaschine T die L D entscheidet.Es sei t = 〈T 〉 die Gödelnummer von T .Frage: Ist t ∈ L D ?Def Lt ∈ LDD ⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ L DWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 12/32


Die DiagonalspracheAnnahme: L D ist entscheidbar.Dann gibt es eine Turingmaschine T die L D entscheidet.Es sei t = 〈T 〉 die Gödelnummer von T .Frage: Ist t ∈ L D ?Def Lt ∈ LDD ⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ L DWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 12/32


Die DiagonalspracheAnnahme: L D ist entscheidbar.Dann gibt es eine Turingmaschine T die L D entscheidet.Es sei t = 〈T 〉 die Gödelnummer von T .Frage: Ist t ∈ L D ?Def Lt ∈ LDD ⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ L DWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 12/32


Die DiagonalspracheAnnahme: L D ist entscheidbar.Dann gibt es eine Turingmaschine T die L D entscheidet.Es sei t = 〈T 〉 die Gödelnummer von T .Frage: Ist t ∈ L D ?Def Lt ∈ LDD ⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ L DWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 12/32


Die DiagonalspracheAnnahme: L D ist entscheidbar.Dann gibt es eine Turingmaschine T die L D entscheidet.Es sei t = 〈T 〉 die Gödelnummer von T .Frage: Ist t ∈ L D ?Def Lt ∈ LDD ⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ L DWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 12/32


Die DiagonalspracheAnnahme: L D ist entscheidbar.Dann gibt es eine Turingmaschine T die L D entscheidet.Es sei t = 〈T 〉 die Gödelnummer von T .Frage: Ist t ∈ L D ?Def Lt ∈ LDD ⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ L DWiderspruch!□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 12/32


Die DiagonalspracheDamit erhalten wir:TheoremDie Diagonalsprache L D ist nicht entscheidbar.Klar: L D ∈ co − RE. Um dies zu zeigen gibt man Akzeptor Tfür L D an. Eingabe 〈M〉Simuliere M bei Eingabe 〈M〉Falls M akzeptiert dann akzeptiereUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 13/32


Die DiagonalspracheDamit erhalten wir:TheoremDie Diagonalsprache L D ist nicht entscheidbar.Klar: L D ∈ co − RE. Um dies zu zeigen gibt man Akzeptor Tfür L D an. Eingabe 〈M〉Simuliere M bei Eingabe 〈M〉Falls M akzeptiert dann akzeptiereUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 13/32


Die DiagonalspracheDamit erhalten wir:TheoremDie Diagonalsprache L D ist nicht entscheidbar.Klar: L D ∈ co − RE. Um dies zu zeigen gibt man Akzeptor Tfür L D an. Eingabe 〈M〉Simuliere M bei Eingabe 〈M〉Falls M akzeptiert dann akzeptiereUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 13/32


Die DiagonalspracheWarum nennt sich das Diagonalisierung?→ Wir können die Wörter in Σ ∗ lexikographisch ordnen underhalten so eine aufsteigende Folge w 0 , w 1 , w 2 , . . . die alleWörter in Σ ∗ umfasst.w 0 w 1 w 2 w 3 . . .M w0 0 1 1 0 . . .M w1 1 1 0 0 . . .M w2 0 0 0 1 . . .M w3 1 1 0 1 . . ... . . . . ..Wir betrachten nun interessante nicht-entscheidbareProbleme/SprachenUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 14/32


Die DiagonalspracheWarum nennt sich das Diagonalisierung?→ Wir können die Wörter in Σ ∗ lexikographisch ordnen underhalten so eine aufsteigende Folge w 0 , w 1 , w 2 , . . . die alleWörter in Σ ∗ umfasst.w 0 w 1 w 2 w 3 . . .M w0 0 1 1 0 . . .M w1 1 1 0 0 . . .M w2 0 0 0 1 . . .M w3 1 1 0 1 . . ... . . . . ..Wir betrachten nun interessante nicht-entscheidbareProbleme/SprachenUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 14/32


Das Wortproblem fürTuringmaschinenDefinition (Das Wortproblem)A TM = {〈M〉w ∈ Σ ∗ | M akzeptiert Eingabe w }Das ist äquivalent zum Wortproblem für Chomsky-Typ 0Grammatiken (letzte <strong>Vorlesung</strong>)Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 15/32


Das Wortproblem fürTuringmaschinenLemmaDas Wortproblem A TM ist nicht entscheidbar.Proof.Wäre A TM entscheidbar, dann gäbe es einen Entscheider T für A TM .Daraus lässt sich ein Entscheider T ′ für L D konstruieren. Wirspezifizieren T ′ bei Eingabe 〈M〉:Simuliere T mit Eingabe 〈M〉〈M〉Falls T akzeptiert dann akzeptiere nichtFalls T nicht akzeptiert dann akzeptiereT ′ entscheidet also L D .Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 16/32


Das Wortproblem fürTuringmaschinenLemmaDas Wortproblem A TM ist nicht entscheidbar.Proof.Wäre A TM entscheidbar, dann gäbe es einen Entscheider T für A TM .Daraus lässt sich ein Entscheider T ′ für L D konstruieren. Wirspezifizieren T ′ bei Eingabe 〈M〉:Simuliere T mit Eingabe 〈M〉〈M〉Falls T akzeptiert dann akzeptiere nichtFalls T nicht akzeptiert dann akzeptiereT ′ entscheidet also L D .Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 16/32


Berechenbare FunktionenSei Σ ein endliches Alphabet.DefinitionEine Funktion f : Σ ∗ → Σ ∗ heißt berechenbar falls es eineTuringmaschine M gibt, die bei Eingabe w ∈ Σ ∗ nach endlichvielen Schritten hält mit Ausgabe f(w) auf dem Band.Eine solche Maschine unterscheidet sich von Akzeptoren /Entscheidern dadurch dass die Ausgabe auf das Bandcodiert ist.So gut wie alle natürlichen Funktionen auf diskretenStrukturen wie N, Z, Q sind berechenbar. Z.B. +, −, ×, ÷.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 17/32


Berechenbare FunktionenSei Σ ein endliches Alphabet.DefinitionEine Funktion f : Σ ∗ → Σ ∗ heißt berechenbar falls es eineTuringmaschine M gibt, die bei Eingabe w ∈ Σ ∗ nach endlichvielen Schritten hält mit Ausgabe f(w) auf dem Band.Eine solche Maschine unterscheidet sich von Akzeptoren /Entscheidern dadurch dass die Ausgabe auf das Bandcodiert ist.So gut wie alle natürlichen Funktionen auf diskretenStrukturen wie N, Z, Q sind berechenbar. Z.B. +, −, ×, ÷.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 17/32


Berechenbare FunktionenSei Σ ein endliches Alphabet.DefinitionEine Funktion f : Σ ∗ → Σ ∗ heißt berechenbar falls es eineTuringmaschine M gibt, die bei Eingabe w ∈ Σ ∗ nach endlichvielen Schritten hält mit Ausgabe f(w) auf dem Band.Eine solche Maschine unterscheidet sich von Akzeptoren /Entscheidern dadurch dass die Ausgabe auf das Bandcodiert ist.So gut wie alle natürlichen Funktionen auf diskretenStrukturen wie N, Z, Q sind berechenbar. Z.B. +, −, ×, ÷.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 17/32


Many-One-ReduzierbarkeitDefinitionEine Sprache A ist many-one reduzierbar auf eine Sprache B,kurz A ≤ m B, falls eine berechenbare Funktion f : Σ ∗ → Σ ∗existiert, sodass für alle w ∈ Σ ∗w ∈ A ⇔ f(w) ∈ BMan sagt auch informell: B ist schwieriger als AUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 18/32


Many-One-ReduzierbarkeitDefinitionEine Sprache A ist many-one reduzierbar auf eine Sprache B,kurz A ≤ m B, falls eine berechenbare Funktion f : Σ ∗ → Σ ∗existiert, sodass für alle w ∈ Σ ∗w ∈ A ⇔ f(w) ∈ BMan sagt auch informell: B ist schwieriger als AUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 18/32


Many-One-ReduzierbarkeitLemmaSei A ≤ m B. Wenn B entscheidbar ist, dann ist auch Aentscheidbar.Proof.Sei A ≤ m B und B entscheidbar. Es gibt also einen EntscheiderM für B und eine many-one Reduktion f von A auf B. Wirbauen einen Entscheider M ′ für A. Bei Eingabe wBerechne f(w)Simuliere M bei Eingabe f(w) und akzeptiere genau dannwenn M akzeptiertEs gilt klar: Wenn w ∈ A dann ist f(w) ∈ B womit M ′ wakzeptiert, weil M f(w) akzeptiert. Ist w /∈ A dann ist f(w) /∈ Bund M ′ akzeptiert w nicht, weil M f(w) nicht akzeptiert.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 19/32


Many-One-ReduzierbarkeitLemmaSei A ≤ m B. Wenn B entscheidbar ist, dann ist auch Aentscheidbar.Proof.Sei A ≤ m B und B entscheidbar. Es gibt also einen EntscheiderM für B und eine many-one Reduktion f von A auf B. Wirbauen einen Entscheider M ′ für A. Bei Eingabe wBerechne f(w)Simuliere M bei Eingabe f(w) und akzeptiere genau dannwenn M akzeptiertEs gilt klar: Wenn w ∈ A dann ist f(w) ∈ B womit M ′ wakzeptiert, weil M f(w) akzeptiert. Ist w /∈ A dann ist f(w) /∈ Bund M ′ akzeptiert w nicht, weil M f(w) nicht akzeptiert.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 19/32


Many-One-ReduzierbarkeitCorollaryIst A ≤ m B und A nicht entscheidbar, dann ist auch B nichtentscheidbar.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 20/32


Das HalteproblemGerne hätte man eine Möglichkeit von Computerprogrammenzu entscheiden ob sie immer das tun was der Programmierervon ihnen wünscht.Definition (Das Halteproblem)HALT = {〈M〉w ∈ Σ ∗ | M hält bei Eingabe w }Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 21/32


Das HalteproblemGerne hätte man eine Möglichkeit von Computerprogrammenzu entscheiden ob sie immer das tun was der Programmierervon ihnen wünscht.Definition (Das Halteproblem)HALT = {〈M〉w ∈ Σ ∗ | M hält bei Eingabe w }Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 21/32


Das HalteproblemLemmaDas Halteproblem HALT ist nicht entscheidbar.Proof.Wir geben eine many-one Reduktion f von A TM auf HALT an. Seix = 〈M〉w eine Instanz von A TM . Wir definieren nun f(x) = 〈M ′ 〉wund spezifizieren die Turingmaschine M ′ bei Eingabe vSimuliere M mit Eingabe vFalls M das Wort v nicht akzeptiert, gehe in EndlosschleifeFalls M das Wort v akzeptiert, dann akzeptiereNun ist klar dass M ′ bei Eingabe w genau dann hält wenn M dieEingabe w akzeptiert. Also ist f eine many-one Reduktion.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 22/32


Das HalteproblemLemmaDas Halteproblem HALT ist nicht entscheidbar.Proof.Wir geben eine many-one Reduktion f von A TM auf HALT an. Seix = 〈M〉w eine Instanz von A TM . Wir definieren nun f(x) = 〈M ′ 〉wund spezifizieren die Turingmaschine M ′ bei Eingabe vSimuliere M mit Eingabe vFalls M das Wort v nicht akzeptiert, gehe in EndlosschleifeFalls M das Wort v akzeptiert, dann akzeptiereNun ist klar dass M ′ bei Eingabe w genau dann hält wenn M dieEingabe w akzeptiert. Also ist f eine many-one Reduktion.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 22/32


Semi-<strong>Entscheidbarkeit</strong>LemmaEs gilt A TM ∈ RE und HALT ∈ REProof.Wir zeigen die Semi <strong>Entscheidbarkeit</strong> von A TM . Dazu gebenwir einen Akzeptor T für A TM an. Wir spezifizieren T für dieEingabe 〈M〉w.Simuliere M bei Eingabe wAkzeptiere wenn M akzeptiert.Für HALT gehts fast genauso.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 23/32


Semi-<strong>Entscheidbarkeit</strong>LemmaEs gilt A TM ∈ RE und HALT ∈ REProof.Wir zeigen die Semi <strong>Entscheidbarkeit</strong> von A TM . Dazu gebenwir einen Akzeptor T für A TM an. Wir spezifizieren T für dieEingabe 〈M〉w.Simuliere M bei Eingabe wAkzeptiere wenn M akzeptiert.Für HALT gehts fast genauso.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 23/32


Semi-<strong>Entscheidbarkeit</strong>LemmaEs gilt R = RE ∩ co − RE. Ein Sprache ist also genau dannentscheidbar wenn sie und ihr Komplement entscheidbar sind.Proof."⊆": trivial."⊇": Wir habe Akzeptoren M 1 für L und M 2 für L. Wir konstruiereneinen Entscheider M für L. Wir spezifizieren M bei Eingabe w.Simuliere parallel M 1 mit Eingabe w und M 2 mit Eingabe wSobald M 1 akzeptiert dann akzeptiereSobald M 2 akzeptiert dann lehne abDa w entweder in L oder L liegt wird eine der beiden Maschinenirgendwann akzeptieren. Somit ist M ein Entscheider.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 24/32


Semi-<strong>Entscheidbarkeit</strong>LemmaEs gilt R = RE ∩ co − RE. Ein Sprache ist also genau dannentscheidbar wenn sie und ihr Komplement entscheidbar sind.Proof."⊆": trivial."⊇": Wir habe Akzeptoren M 1 für L und M 2 für L. Wir konstruiereneinen Entscheider M für L. Wir spezifizieren M bei Eingabe w.Simuliere parallel M 1 mit Eingabe w und M 2 mit Eingabe wSobald M 1 akzeptiert dann akzeptiereSobald M 2 akzeptiert dann lehne abDa w entweder in L oder L liegt wird eine der beiden Maschinenirgendwann akzeptieren. Somit ist M ein Entscheider.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 24/32


Ein schönes Problem zum SchlußDefinition (Das Post’sche Korrespondenzproblem)Gegeben: Eine endliche Menge von Puzzlestücken{( ) ( )}t1 t1S = , . . .,b 1 b 1mit t 1 , . . .,t n , b 1 , . . .,b n ∈ Σ ∗ .Frage: Gibt es i 1 , . . .,i k ∈ {1, . . .,n} mit t i1 . . . t ik = b i1 . . . b ik ?Das läßt sich auch als Sprache formulieren, schreibt sich aberbequemer als Problem. In der zugehörigen Sprache liegen alleJa-Instanzen des Problems.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 25/32


Ein schönes Problem zum SchlußDefinition (Das Post’sche Korrespondenzproblem)Gegeben: Eine endliche Menge von Puzzlestücken{( ) ( )}t1 t1S = , . . .,b 1 b 1mit t 1 , . . .,t n , b 1 , . . .,b n ∈ Σ ∗ .Frage: Gibt es i 1 , . . .,i k ∈ {1, . . .,n} mit t i1 . . . t ik = b i1 . . . b ik ?Das läßt sich auch als Sprache formulieren, schreibt sich aberbequemer als Problem. In der zugehörigen Sprache liegen alleJa-Instanzen des Problems.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 25/32


BeispielSei Σ = {a, b, c}.Sei{( ( ) ( ) ( )}b a ca abcS = , , ,ca)ab a cGibt es ein Matching für S?Antwort: Ja!( )( )( )a b ca a abcab)(ca)(a ab cUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 26/32


BeispielSei Σ = {a, b, c}.Sei{( ( ) ( ) ( )}b a ca abcS = , , ,ca)ab a cGibt es ein Matching für S?Antwort: Ja!( )( )( )a b ca a abcab)(ca)(a ab cUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 26/32


BeispielSei Σ = {a, b, c}.Sei{( ( ) ( ) ( )}b a ca abcS = , , ,ca)ab a cGibt es ein Matching für S?Antwort: Ja!( )( )( )a b ca a abcab)(ca)(a ab cUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 26/32


BeispielSei Σ = {a, b, c}.Sei{( ( ) ( ) ( )}b a ca abcS = , , ,ca)ab a cGibt es ein Matching für S?Antwort: Ja!( )( )( )a b ca a abcab)(ca)(a ab cUniverselle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 26/32


Das Post’scheKorrespondenzproblemTheoremDas Post’sche Korrespondezproblem ist nicht entscheidbarDas erstaunt!Nochmal für alle die heut nicht aufgepasst haben: Es kannkeinen Algorithmus geben der dieses Puzzlespiel allgemeinlöst.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 27/32


Das Post’scheKorrespondenzproblemTheoremDas Post’sche Korrespondezproblem ist nicht entscheidbarDas erstaunt!Nochmal für alle die heut nicht aufgepasst haben: Es kannkeinen Algorithmus geben der dieses Puzzlespiel allgemeinlöst.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 27/32


Das Post’scheKorrespondenzproblemTheoremDas Post’sche Korrespondezproblem ist nicht entscheidbarDas erstaunt!Nochmal für alle die heut nicht aufgepasst haben: Es kannkeinen Algorithmus geben der dieses Puzzlespiel allgemeinlöst.Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 27/32


BeweisWir reduzieren das Wortproblem für Chomsky-Typ 0 auf dasPost’sche Korrespondenzproblem (PKP).Nochmal Wortproblem Ch-0Gegeben: Ch-0 Grammatik G = (T , V, S, P) und Wort w ∈ T ∗Frage: Liegt w in der von G erzeugten Sprache, d.h. giltS ⇒ ∗ w?Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 28/32


BeweisWir reduzieren das Wortproblem für Chomsky-Typ 0 auf dasPost’sche Korrespondenzproblem (PKP).Nochmal Wortproblem Ch-0Gegeben: Ch-0 Grammatik G = (T , V, S, P) und Wort w ∈ T ∗Frage: Liegt w in der von G erzeugten Sprache, d.h. giltS ⇒ ∗ w?Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 28/32


BeweisIst T = {t 1 , . . .,t n } so setzen wirT ′ = {t ′ 1 , . . .,t′ n}mit T ∩ T ′ = ∅ als das gestichte Terminalalphabet. Für ein Wortw ∈ T ∗ sei w ′ ∈ (T ′ ) ∗ das gestrichte Wort. Genauso definierenwir V ∗ .Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 29/32


BeweisWir setzen Σ = T ∪ T ′ ∪ V ∪ V ′ ∪ {∗, ∗ ′ }.Wir definieren nun die Puzzlestücke unseres PKPs:Für jede Produktion α → β ∈ P führen wir folgendePuzzlestücke in S ein( ) ( ) β′ β,α α ′Für jedes t ∈ T definieren wir die Puzzlestücke( ) ( ) t′ t,t t ′Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 30/32


BeweisWir setzen Σ = T ∪ T ′ ∪ V ∪ V ′ ∪ {∗, ∗ ′ }.Wir definieren nun die Puzzlestücke unseres PKPs:Für jede Produktion α → β ∈ P führen wir folgendePuzzlestücke in S ein( ) ( ) β′ β,α α ′Für jedes t ∈ T definieren wir die Puzzlestücke( ) ( ) t′ t,t t ′Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 30/32


BeweisWir setzen Σ = T ∪ T ′ ∪ V ∪ V ′ ∪ {∗, ∗ ′ }.Wir definieren nun die Puzzlestücke unseres PKPs:Für jede Produktion α → β ∈ P führen wir folgendePuzzlestücke in S ein( ) ( ) β′ β,α α ′Für jedes t ∈ T definieren wir die Puzzlestücke( ) ( ) t′ t,t t ′Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 30/32


BeweisWir setzen Σ = T ∪ T ′ ∪ V ∪ V ′ ∪ {∗, ∗ ′ }.Wir definieren nun die Puzzlestücke unseres PKPs:Für jede Produktion α → β ∈ P führen wir folgendePuzzlestücke in S ein( ) ( ) β′ β,α α ′Für jedes t ∈ T definieren wir die Puzzlestücke( ) ( ) t′ t,t t ′Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 30/32


BeweisWir setzen Σ = T ∪ T ′ ∪ V ∪ V ′ ∪ {∗, ∗ ′ }.Wir definieren nun die Puzzlestücke unseres PKPs:Für jede Produktion α → β ∈ P führen wir folgendePuzzlestücke in S ein( ) ( ) β′ β,α α ′Für jedes t ∈ T definieren wir die Puzzlestücke( ) ( ) t′ t,t t ′Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 30/32


BeweisNun benötigen wir nurnoch Puzzlestücke für die Anfangs unddie Endbedingung, sowie für die Trennung der einzelnenAbleitungsschritte.( S∗′ǫ) ( ) ǫ, ,∗w( ∗′∗) ( ) ∗,∗ ′Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 31/32


BeweisHaben wir nun eine AbleitungS ⇒ w 1 ⇒ w 2 ⇒ · · · ⇒ w k ⇒ wSo können wir diese in eine Lösung des PKPs übersetzen(Klammern weggelassen)S∗ ′ w ′ 1 ∗w 2 ∗ ′ · · · ∗ ′ w ′ k ∗ wS ∗ ′ w ′ 1 ∗ · · · ∗ w k−1 ∗ ′ w ′ k ∗ wDamit sieht man auch dass eine solche Lösung des PKPs einekorrekte Ableitung von w impliziert.□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 32/32


BeweisHaben wir nun eine AbleitungS ⇒ w 1 ⇒ w 2 ⇒ · · · ⇒ w k ⇒ wSo können wir diese in eine Lösung des PKPs übersetzen(Klammern weggelassen)S∗ ′ w ′ 1 ∗w 2 ∗ ′ · · · ∗ ′ w ′ k ∗ wS ∗ ′ w ′ 1 ∗ · · · ∗ w k−1 ∗ ′ w ′ k ∗ wDamit sieht man auch dass eine solche Lösung des PKPs einekorrekte Ableitung von w impliziert.□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 32/32


BeweisHaben wir nun eine AbleitungS ⇒ w 1 ⇒ w 2 ⇒ · · · ⇒ w k ⇒ wSo können wir diese in eine Lösung des PKPs übersetzen(Klammern weggelassen)S∗ ′ w ′ 1 ∗w 2 ∗ ′ · · · ∗ ′ w ′ k ∗ wS ∗ ′ w ′ 1 ∗ · · · ∗ w k−1 ∗ ′ w ′ k ∗ wDamit sieht man auch dass eine solche Lösung des PKPs einekorrekte Ableitung von w impliziert.□Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-<strong>Entscheidbarkeit</strong>Nico Döttling – Übung November 19, 2009 32/32

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!