Berechenbarkeit und Komplexit¨ at Vorlesung 7
Prof. Dr. Wolfgang Thomas Lehrstuhl Informatik 7
RWTH Aachen
18. November 2014
Halteproblem
Allgemeines Halteproblem
Gegeben: TuringmaschineM ¨uber {0,1}, Eingabewort w ∈ {0,1}∗ Frage: StopptM bei Eingabew? (Kurz:M :w →stopp?)
Spezielles Halteproblem
Gegeben: TuringmaschineM ¨uber {0,1}
Frage: StopptM bei Eingabeε(d.h. auf dem leeren Band)?
Kodierung durch die Sprachen H = {hMiw |M h¨alt auf w} . Hε={hMi |M h¨alt auf leerem Band}
Satz
Das allgemeine und das spezille Halteproblem sind nicht entscheid- bar.
Die SprachenH,Hǫ sind nicht entscheidbar.
Reduktion von Entscheidungsproblemen
SeienP= (IP,P),Q= (IQ,Q) Entscheidungsprobleme.
P: Gegeben x in IP, gilt x∈P? Q: Gegebenx in IQ, giltx ∈Q?
Pheißt reduzierbar auf Q (P≤Q) gdw.
es gibt eine berechenbare Funktion f :IP →IQ mit:
x ∈P gdw. f(x)∈Q (f¨ur alle x ∈IP) Lemma
GelteP≤Q. WennP unentscheidbar ist, so auch Q.
Das Totalit¨ atsproblem
Totalit¨atsproblemHtotal
Gegeben: TuringmaschineM ¨uber {0,1}
Frage: StopptM f¨ur jede Eingabe w (d.h. berechnet M eine totale Funktion)?
Entsprechende Sprache:Htotal={hMi |M h¨alt f¨ur jedesw} Satz
Das Totalit¨atsproblem f¨ur Turingmaschinen ist nicht entscheidbar.
Die SpracheHtotal ist nicht entscheidbar.
Beweis
Wir zeigenHǫ≤Htotal
Wir finden eine berechenbare TransformationM 7→M′ mit (∗) M :ε→stopp gdw. M′ berechnet totale Funktion KonstruiereM′ ausM wie folgt:
L¨osche Eingabe w (Ergebnis: leeres Band) LasseM laufen
Dann gilt offensichtlich (∗).
TM-Eigenschaften
Wir zeigen, dass “alle interessanten” Eigenschaften von Turingmaschinen unentscheidbar sind.
Beispiele von Eigenschaften von TuringmaschinenM:
E1 :M :ε→stopp
E2 :M berechnet eine totale Funktion (siehe letzter Satz).
E3 :M stoppt f¨ur Eingabe w nach ≤3 Schritten.
E4 :M hat 17 Zust¨ande.
Wir definieren nun zwei Arten von TM-EigenschaftenE, n¨amlich
“nicht-trivial” und “semantisch”.
Definition
Eine TM-Eigenschaft E heißt nicht-trivial, wenn es eine TM mit E gibt, aber auch eine TM, die die EigenschaftE nicht hat.
Die vier EigenschaftenE1, . . . ,E4 sind alle nicht-trivial.
Trivial sind die Eigenschaften “M hat endlich viele Zust¨ande” oder
“M hat keinen Anfangszustand”.
Semantische Eigenschaften und der Satz von Rice
Definition
Eine TM-EigenschaftE von Turingmaschinen M heißt semantisch, wennE f¨urM nur von der durchM berechneten Funktion abh¨angt, d.h.: WennM1,M2 dieselbe Funktion berechnen, dann gilt (M1 hat E gdw. M2 hat E).
Beispiele:E1,E2 sind semantisch,E3,E4 sind nicht semantisch.
Satz von Rice
Jede nicht-triviale semantische TM-EigenschaftE ist unentscheid- bar.
Dieser Satz zeigt unter anderem sofort, dass das spezielle Halteproblem und das Totalit¨atsproblem unentscheidbar sind (die betreffenden TM-Eigenschaften sind die obengenannten EigenschaftenE1,E2).
Satz von Rice: Beweisansatz
Betrachte eine nicht-triviale semantische TM-EigenschaftE.
Sie liefert das EntscheidungsproblemE mit der Menge aller TM (¨uber{0,1}) als Instanzenmenge: Gegeben TMM, hatM die EigenschaftE?
Wir zeigenHǫ≤E
d.h. wir finden eine berechenbare TransformationM 7→M′ so dass M :ε→stopp ⇔ M′ hatE.
Vorbereitung: SeiM⊥ die TM mit den Instruktionen q0 a q0 a N, die sofort im Kreis l¨auft und die ¨uberall undefinierte Funtionu berechnet.
Fall 1:M⊥ hat E nicht. Fall 2:M⊥ hat E Wir behandeln Fall 1, Fall 2 geht analog.
Satz von Rice: Beweis
Gelte Fall 1:M⊥ hat E nicht.
Dann w¨ahlen wir eine TMMg, dieE hat und die folglich eine Funktiong 6=u berechnet.E ist nicht-trivial und semantisch!) Wir konstruieren nun ausM eine TM M′, die folgendermaßen arbeitet:
1 Speichere Eingabe w auf nichtbenutztem Bandabschnitt, arbeite rechts davon (in einem durch zwei Symbole # eingeschlossenen Bereich).
2 Arbeite wieM auf ε(hier wird je nach Bedarf der Bereich zwischen den beiden Randmarken # schrittweise ausgedehnt).
3 Bei Termination l¨osche alle Symbole 6=B, bis auf das urspr¨ungliche Eingabewortw.
4 Arbeite wieMg auf w
Es bleibt zu zeigen:M : →stopp⇔ M′ hatE.
Korrektheitsbeweis
Behauptung:M :ε→stopp⇔ M′ hat E. Beweis von⇒:
M :ε→stopp
⇒ M′ erreicht Phase 3 und arbeitet wieMg auf w
⇒ M′ undMg berechnen dieselbe Funktion
⇒ M′ hatE (da Mg E hat).) Beweis von⇐:
M :ε→ ∞
⇒ M′ bleibt in Phase 2 h¨angen
⇒ M′ terminiert f¨ur keinw
⇒ M′ undM⊥ berechnen dieselbe Funktion
⇒ M′ hatE nicht (da M⊥ nicht E hat).
Aufz¨ ahlbare Sprachen und ≤
Wir betrachten SprachenK,L, . . .⊆ {0,1}∗ als Entscheidungsprobleme.
Bemerkung
WennK ≤L undL aufz¨ahlbar ist, dann ist auchK aufz¨ahlbar.
Im Beweis nutzen wir, dass “aufz¨ahlbar” und ‘semi-entscheidbar”
gleichbedeutend sind.
Beweis: Nach Voraussetzung existiert berechenbare Transformation f :{0,1}∗→ {0,1}∗ mit
(∗) x∈K ⇔ f(x)∈L Der AlgorithmusAf berechne f
Der AlgorithmusAL semi-entscheide L.
Folgender AlgorithmusAsemi-entscheidet dann K: Zu Eingabe x wende Af an, erhaltef(x), auf f(x) wendeAL an
H als aufz¨ ahlbare Menge maximaler Schwierigkeit
Wir zeigen einen Satz, der die Halteproblem-SpracheH als aufz¨ahlbare Menge “maximaler Schwierigkeit” einstuft:
Satz
Eine SpracheL⊆ {0,1}∗ ist aufz¨ahlbar genau dann, wennL≤H.
Beweis von⇐ ist klar wegen der vorangehenden Bemerkung und der Aufz¨ahlbarkeit vonH.
Beweis von⇒:
ML sei eine TM, die Lsemi-entscheidet.
Wir findenf :{0,1}∗ → {0,1}∗ berechenbar mit x∈L⇔f(x)∈H
Definieref als die Transformation w 7→ hMLiw.
Dannw ∈Lgdw. ML terminiert aufw gdw.hMLiw ∈H gdw.
f(x)∈H
Vollst¨ andigkeit in den aufz¨ ahlbaren Sprachen
Wir schreiben RE f¨ur die Klasse der aufz¨ahlbaren Sprachen (“recursively enumerable”)
und co-RE f¨ur die Klasse der Komplemente der aufz¨ahlbaren Sprachen.
Definition
Eine SpracheL0 heißt ≤-vollst¨andig in RE, falls
1 L0 geh¨ort zu RE,
2 f¨ur alle Lin RE giltL≤L0.
Wir haben gezeigt: Die SpracheH ist ≤-vollst¨andig in RE.