Post on 10-Oct-2019
INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT
Vorlesung Theoretische GrundlagenEntscheidbarkeit
Nico Döttling | November 19, 2009
KIT – University of the State of Baden-Wuerttemberg and
National Laboratory of the Helmholtz Associationwww.kit.edu
Themen
1 Universelle Turingmaschinen und Gödelnummern
2 Diagonalisierung
3 Nicht-entscheidbare Probleme
4 Semi-Entscheidbarkeit
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 2/32
Letztes mal
Universelle 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 Mw für die zugehörige Turingmaschine.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 3/32
Letztes mal
Universelle 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 Mw für die zugehörige Turingmaschine.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 3/32
Letztes mal
Universelle 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 Mw für die zugehörige Turingmaschine.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 3/32
Letztes mal
Bei 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 letztenVorlesung 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 4/32
Letztes mal
Bei 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 letztenVorlesung 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 4/32
Letztes mal
Bei 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 letztenVorlesung 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 4/32
Letztes mal
Bei 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 letztenVorlesung 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 4/32
Heute
Grenzen der Entscheidbarkeit.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 5/32
Heute
Grenzen der Entscheidbarkeit.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 5/32
Akzeptoren und Entscheider
Sei 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 ∈ RE
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 6/32
Akzeptoren und Entscheider
Sei 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 ∈ RE
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 6/32
Akzeptoren und Entscheider
Sei 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 ∈ RE
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 6/32
Akzeptoren und Entscheider
Sei 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 ∈ RE
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 A
sei die Menge die alle anderen Mengen als Teilmengenenthält
Theorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selber
Zu 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-Entscheidbarkeit
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 A
sei die Menge die alle anderen Mengen als Teilmengenenthält
Theorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selber
Zu 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-Entscheidbarkeit
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 A
sei die Menge die alle anderen Mengen als Teilmengenenthält
Theorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selber
Zu 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-Entscheidbarkeit
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 A
sei die Menge die alle anderen Mengen als Teilmengenenthält
Theorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selber
Zu 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-Entscheidbarkeit
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 A
sei die Menge die alle anderen Mengen als Teilmengenenthält
Theorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selber
Zu 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-Entscheidbarkeit
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 A
sei die Menge die alle anderen Mengen als Teilmengenenthält
Theorem (Cantor)Für jede Menge M ist P(M) echt mächtiger als M selber
Zu 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-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
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 H⇔ h /∈ σ(h)
⇔ ¬(h ∈ σ(h))Def h⇔ h /∈ H
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 8/32
Korrolare von Cantors Satz
Die 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 9/32
Korrolare von Cantors Satz
Die 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 9/32
Nichtentscheidbarkeit
Das 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 10/32
Nichtentscheidbarkeit
Das 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 10/32
Nichtentscheidbarkeit
Das 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 10/32
Die Diagonalsprache
Wir definieren folgende Sprache über o.B.d.A Σ = {0, 1}.
LD = {w ∈ Σ∗| Mw akzeptiert w nicht }
Behauptung: Die Diagonalsprache ist nicht entscheidbar.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 11/32
Die Diagonalsprache
Wir definieren folgende Sprache über o.B.d.A Σ = {0, 1}.
LD = {w ∈ Σ∗| Mw akzeptiert w nicht }
Behauptung: Die Diagonalsprache ist nicht entscheidbar.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 11/32
Die Diagonalsprache
Annahme: LD ist entscheidbar.
Dann gibt es eine Turingmaschine T die LD entscheidet.
Es sei t = 〈T 〉 die Gödelnummer von T .
Frage: Ist t ∈ LD?
t ∈ LDDef LD⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ LD
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 12/32
Die Diagonalsprache
Annahme: LD ist entscheidbar.
Dann gibt es eine Turingmaschine T die LD entscheidet.
Es sei t = 〈T 〉 die Gödelnummer von T .
Frage: Ist t ∈ LD?
t ∈ LDDef LD⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ LD
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 12/32
Die Diagonalsprache
Annahme: LD ist entscheidbar.
Dann gibt es eine Turingmaschine T die LD entscheidet.
Es sei t = 〈T 〉 die Gödelnummer von T .
Frage: Ist t ∈ LD?
t ∈ LDDef LD⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ LD
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 12/32
Die Diagonalsprache
Annahme: LD ist entscheidbar.
Dann gibt es eine Turingmaschine T die LD entscheidet.
Es sei t = 〈T 〉 die Gödelnummer von T .
Frage: Ist t ∈ LD?
t ∈ LDDef LD⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ LD
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 12/32
Die Diagonalsprache
Annahme: LD ist entscheidbar.
Dann gibt es eine Turingmaschine T die LD entscheidet.
Es sei t = 〈T 〉 die Gödelnummer von T .
Frage: Ist t ∈ LD?
t ∈ LDDef LD⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ LD
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 12/32
Die Diagonalsprache
Annahme: LD ist entscheidbar.
Dann gibt es eine Turingmaschine T die LD entscheidet.
Es sei t = 〈T 〉 die Gödelnummer von T .
Frage: Ist t ∈ LD?
t ∈ LDDef LD⇔ T = Mt akzeptiert t nichtDef T⇔ t /∈ LD
Widerspruch!
�
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 12/32
Die Diagonalsprache
Damit erhalten wir:
TheoremDie Diagonalsprache LD ist nicht entscheidbar.
Klar: LD ∈ co − RE . Um dies zu zeigen gibt man Akzeptor Tfür LD an. Eingabe 〈M〉
Simuliere M bei Eingabe 〈M〉
Falls M akzeptiert dann akzeptiere
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 13/32
Die Diagonalsprache
Damit erhalten wir:
TheoremDie Diagonalsprache LD ist nicht entscheidbar.
Klar: LD ∈ co − RE . Um dies zu zeigen gibt man Akzeptor Tfür LD an. Eingabe 〈M〉
Simuliere M bei Eingabe 〈M〉
Falls M akzeptiert dann akzeptiere
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 13/32
Die Diagonalsprache
Damit erhalten wir:
TheoremDie Diagonalsprache LD ist nicht entscheidbar.
Klar: LD ∈ co − RE . Um dies zu zeigen gibt man Akzeptor Tfür LD an. Eingabe 〈M〉
Simuliere M bei Eingabe 〈M〉
Falls M akzeptiert dann akzeptiere
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 13/32
Die Diagonalsprache
Warum nennt sich das Diagonalisierung?→ Wir können die Wörter in Σ∗ lexikographisch ordnen underhalten so eine aufsteigende Folge w0, w1, w2, . . . die alleWörter in Σ∗ umfasst.
w0 w1 w2 w3 . . .Mw0 0 1 1 0 . . .Mw1 1 1 0 0 . . .Mw2 0 0 0 1 . . .Mw3 1 1 0 1 . . .
......
......
.... . .
Wir betrachten nun interessante nicht-entscheidbareProbleme/Sprachen
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 14/32
Die Diagonalsprache
Warum nennt sich das Diagonalisierung?→ Wir können die Wörter in Σ∗ lexikographisch ordnen underhalten so eine aufsteigende Folge w0, w1, w2, . . . die alleWörter in Σ∗ umfasst.
w0 w1 w2 w3 . . .Mw0 0 1 1 0 . . .Mw1 1 1 0 0 . . .Mw2 0 0 0 1 . . .Mw3 1 1 0 1 . . .
......
......
.... . .
Wir betrachten nun interessante nicht-entscheidbareProbleme/Sprachen
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 14/32
Das Wortproblem fürTuringmaschinen
Definition (Das Wortproblem)
ATM = {〈M〉w ∈ Σ∗| M akzeptiert Eingabe w }
Das ist äquivalent zum Wortproblem für Chomsky-Typ 0Grammatiken (letzte Vorlesung)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 15/32
Das Wortproblem fürTuringmaschinen
LemmaDas Wortproblem ATM ist nicht entscheidbar.
Proof.Wäre ATM entscheidbar, dann gäbe es einen Entscheider T für ATM .Daraus lässt sich ein Entscheider T ′ für LD konstruieren. Wirspezifizieren T ′ bei Eingabe 〈M〉:
Simuliere T mit Eingabe 〈M〉〈M〉
Falls T akzeptiert dann akzeptiere nicht
Falls T nicht akzeptiert dann akzeptiere
T ′ entscheidet also LD.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 16/32
Das Wortproblem fürTuringmaschinen
LemmaDas Wortproblem ATM ist nicht entscheidbar.
Proof.Wäre ATM entscheidbar, dann gäbe es einen Entscheider T für ATM .Daraus lässt sich ein Entscheider T ′ für LD konstruieren. Wirspezifizieren T ′ bei Eingabe 〈M〉:
Simuliere T mit Eingabe 〈M〉〈M〉
Falls T akzeptiert dann akzeptiere nicht
Falls T nicht akzeptiert dann akzeptiere
T ′ entscheidet also LD.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 16/32
Berechenbare Funktionen
Sei Σ 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 17/32
Berechenbare Funktionen
Sei Σ 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 17/32
Berechenbare Funktionen
Sei Σ 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 17/32
Many-One-Reduzierbarkeit
DefinitionEine 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) ∈ B
Man sagt auch informell: B ist schwieriger als A
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 18/32
Many-One-Reduzierbarkeit
DefinitionEine 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) ∈ B
Man sagt auch informell: B ist schwieriger als A
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 18/32
Many-One-Reduzierbarkeit
LemmaSei 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 w
Berechne f (w)
Simuliere M bei Eingabe f (w) und akzeptiere genau dannwenn M akzeptiert
Es 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 19/32
Many-One-Reduzierbarkeit
LemmaSei 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 w
Berechne f (w)
Simuliere M bei Eingabe f (w) und akzeptiere genau dannwenn M akzeptiert
Es 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 19/32
Many-One-Reduzierbarkeit
CorollaryIst A ≤m B und A nicht entscheidbar, dann ist auch B nichtentscheidbar.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 20/32
Das Halteproblem
Gerne 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 21/32
Das Halteproblem
Gerne 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 21/32
Das Halteproblem
LemmaDas Halteproblem HALT ist nicht entscheidbar.
Proof.Wir geben eine many-one Reduktion f von ATM auf HALT an. Seix = 〈M〉w eine Instanz von ATM . Wir definieren nun f (x) = 〈M′〉wund spezifizieren die Turingmaschine M′ bei Eingabe v
Simuliere M mit Eingabe v
Falls M das Wort v nicht akzeptiert, gehe in Endlosschleife
Falls M das Wort v akzeptiert, dann akzeptiere
Nun 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 22/32
Das Halteproblem
LemmaDas Halteproblem HALT ist nicht entscheidbar.
Proof.Wir geben eine many-one Reduktion f von ATM auf HALT an. Seix = 〈M〉w eine Instanz von ATM . Wir definieren nun f (x) = 〈M′〉wund spezifizieren die Turingmaschine M′ bei Eingabe v
Simuliere M mit Eingabe v
Falls M das Wort v nicht akzeptiert, gehe in Endlosschleife
Falls M das Wort v akzeptiert, dann akzeptiere
Nun 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 22/32
Semi-Entscheidbarkeit
LemmaEs gilt ATM ∈ RE und HALT ∈ RE
Proof.Wir zeigen die Semi Entscheidbarkeit von ATM . Dazu gebenwir einen Akzeptor T für ATM an. Wir spezifizieren T für dieEingabe 〈M〉w .
Simuliere M bei Eingabe w
Akzeptiere wenn M akzeptiert.
Für HALT gehts fast genauso.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 23/32
Semi-Entscheidbarkeit
LemmaEs gilt ATM ∈ RE und HALT ∈ RE
Proof.Wir zeigen die Semi Entscheidbarkeit von ATM . Dazu gebenwir einen Akzeptor T für ATM an. Wir spezifizieren T für dieEingabe 〈M〉w .
Simuliere M bei Eingabe w
Akzeptiere wenn M akzeptiert.
Für HALT gehts fast genauso.
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 23/32
Semi-Entscheidbarkeit
LemmaEs gilt R = RE ∩ co − RE. Ein Sprache ist also genau dannentscheidbar wenn sie und ihr Komplement entscheidbar sind.
Proof."⊆": trivial."⊇": Wir habe Akzeptoren M1 für L und M2 für L. Wir konstruiereneinen Entscheider M für L. Wir spezifizieren M bei Eingabe w .
Simuliere parallel M1 mit Eingabe w und M2 mit Eingabe w
Sobald M1 akzeptiert dann akzeptiere
Sobald M2 akzeptiert dann lehne ab
Da 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 24/32
Semi-Entscheidbarkeit
LemmaEs gilt R = RE ∩ co − RE. Ein Sprache ist also genau dannentscheidbar wenn sie und ihr Komplement entscheidbar sind.
Proof."⊆": trivial."⊇": Wir habe Akzeptoren M1 für L und M2 für L. Wir konstruiereneinen Entscheider M für L. Wir spezifizieren M bei Eingabe w .
Simuliere parallel M1 mit Eingabe w und M2 mit Eingabe w
Sobald M1 akzeptiert dann akzeptiere
Sobald M2 akzeptiert dann lehne ab
Da 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-Entscheidbarkeit
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
S =
{(
t1b1
)
, . . . ,
(
t1b1
)}
mit t1, . . . , tn, b1, . . . , bn ∈ Σ∗.Frage: Gibt es i1, . . . , ik ∈ {1, . . . , n} mit ti1 . . . tik = bi1 . . . bik ?
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-Entscheidbarkeit
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
S =
{(
t1b1
)
, . . . ,
(
t1b1
)}
mit t1, . . . , tn, b1, . . . , bn ∈ Σ∗.Frage: Gibt es i1, . . . , ik ∈ {1, . . . , n} mit ti1 . . . tik = bi1 . . . bik ?
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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 25/32
Beispiel
Sei Σ = {a, b, c}.Sei
S =
{(
bca
)
,
(
aab
)
,
(
caa
)
,
(
abcc
)}
Gibt es ein Matching für S?Antwort: Ja!
(
aab
)(
bca
)(
caa
)(
aab
)(
abcc
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 26/32
Beispiel
Sei Σ = {a, b, c}.Sei
S =
{(
bca
)
,
(
aab
)
,
(
caa
)
,
(
abcc
)}
Gibt es ein Matching für S?Antwort: Ja!
(
aab
)(
bca
)(
caa
)(
aab
)(
abcc
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 26/32
Beispiel
Sei Σ = {a, b, c}.Sei
S =
{(
bca
)
,
(
aab
)
,
(
caa
)
,
(
abcc
)}
Gibt es ein Matching für S?Antwort: Ja!
(
aab
)(
bca
)(
caa
)(
aab
)(
abcc
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 26/32
Beispiel
Sei Σ = {a, b, c}.Sei
S =
{(
bca
)
,
(
aab
)
,
(
caa
)
,
(
abcc
)}
Gibt es ein Matching für S?Antwort: Ja!
(
aab
)(
bca
)(
caa
)(
aab
)(
abcc
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 26/32
Das Post’scheKorrespondenzproblem
TheoremDas Post’sche Korrespondezproblem ist nicht entscheidbar
Das 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 27/32
Das Post’scheKorrespondenzproblem
TheoremDas Post’sche Korrespondezproblem ist nicht entscheidbar
Das 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 27/32
Das Post’scheKorrespondenzproblem
TheoremDas Post’sche Korrespondezproblem ist nicht entscheidbar
Das 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 27/32
Beweis
Wir 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 28/32
Beweis
Wir 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 28/32
Beweis
Ist T = {t1, . . . , tn} so setzen wir
T ′ = {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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 29/32
Beweis
Wir 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
)
,
(
tt ′
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 30/32
Beweis
Wir 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
)
,
(
tt ′
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 30/32
Beweis
Wir 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
)
,
(
tt ′
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 30/32
Beweis
Wir 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
)
,
(
tt ′
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 30/32
Beweis
Wir 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
)
,
(
tt ′
)
Universelle Turingmaschinen und Gödelnummern Diagonalisierung Nicht-entscheidbare Probleme Semi-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 30/32
Beweis
Nun 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 31/32
Beweis
Haben wir nun eine Ableitung
S ⇒ w1 ⇒ w2 ⇒ · · · ⇒ wk ⇒ w
So können wir diese in eine Lösung des PKPs übersetzen(Klammern weggelassen)
S∗′w ′
1 ∗w2 ∗′ · · · ∗′ w ′
k∗ w
S ∗′w ′
1 ∗ · · · ∗ wk−1∗′ w ′
k∗ w
Damit 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 32/32
Beweis
Haben wir nun eine Ableitung
S ⇒ w1 ⇒ w2 ⇒ · · · ⇒ wk ⇒ w
So können wir diese in eine Lösung des PKPs übersetzen(Klammern weggelassen)
S∗′w ′
1 ∗w2 ∗′ · · · ∗′ w ′
k∗ w
S ∗′w ′
1 ∗ · · · ∗ wk−1∗′ w ′
k∗ w
Damit 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 32/32
Beweis
Haben wir nun eine Ableitung
S ⇒ w1 ⇒ w2 ⇒ · · · ⇒ wk ⇒ w
So können wir diese in eine Lösung des PKPs übersetzen(Klammern weggelassen)
S∗′w ′
1 ∗w2 ∗′ · · · ∗′ w ′
k∗ w
S ∗′w ′
1 ∗ · · · ∗ wk−1∗′ w ′
k∗ w
Damit 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-Entscheidbarkeit
Nico Döttling – Übung November 19, 2009 32/32