• Keine Ergebnisse gefunden

Berechenbarkeit und Komplexit¨at Vorlesung 7

N/A
N/A
Protected

Academic year: 2022

Aktie "Berechenbarkeit und Komplexit¨at Vorlesung 7"

Copied!
14
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Berechenbarkeit und Komplexit¨ at Vorlesung 7

Prof. Dr. Wolfgang Thomas Lehrstuhl Informatik 7

RWTH Aachen

18. November 2014

(2)

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.

(3)

Reduktion von Entscheidungsproblemen

SeienP= (IP,P),Q= (IQ,Q) Entscheidungsprobleme.

P: Gegeben x in IP, gilt xP? Q: Gegebenx in IQ, giltxQ?

Pheißt reduzierbar auf Q (P≤Q) gdw.

es gibt eine berechenbare Funktion f :IPIQ mit:

xP gdw. f(x)∈Q (f¨ur alle xIP) Lemma

GelteP≤Q. WennP unentscheidbar ist, so auch Q.

(4)

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.

(5)

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 (∗).

(6)

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”.

(7)

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).

(8)

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.

(9)

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.

(10)

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).

(11)

Aufz¨ ahlbare Sprachen und ≤

Wir betrachten SprachenK,L, . . .⊆ {0,1} als Entscheidungsprobleme.

Bemerkung

WennKL 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

(∗) xKf(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

(12)

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, wennLH.

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 xLf(x)∈H

Definieref als die Transformation w 7→ hMLiw.

DannwLgdw. ML terminiert aufw gdw.hMLiw ∈H gdw.

f(x)∈H

(13)

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 giltLL0.

Wir haben gezeigt: Die SpracheH ist ≤-vollst¨andig in RE.

(14)

Illustration

Referenzen

ÄHNLICHE DOKUMENTE

Welche Funktionen sind durch einen Algorithmus

Falls dieses Zeichen eine 1 ist, so l¨osche es, gehe nach links, und wechsel in den Zustand

Beweis: Die Menge aller TM ¨uber {0, 1} ist abz¨ahlbar, also auch die Menge der TM, die eine Sprache

Wenn wir das Startdomino mit einer Folge von Dominos aus der Liste der erlaubten Dominos derart erg¨anzen, dass der obere String ein Prefix des unteren Strings ist, so.

Wir m¨ussen also nur noch zeigen, dass jede Funktion, die durch eine eingeschr¨ankte RAM berechnet werden kann, auch durch ein WHILE-Programm berechnet werden kann... Beweis

Wir zeigen jetzt, dass sogar bei der Berechnung totaler Funktionen das while-Konstrukt nicht durch loop ersetzt werden kann.. Dazu betrachten wir

NP ist die Klasse der Entscheidungsprobleme, die durch eine NTM M erkannt werden, deren worst case Laufzeit t M (n) polynomiell beschr¨ankt ist. NP steht dabei f¨ur

CLIQUE ist NP-vollst¨andig... Identifiziere Literale und Knoten, d.h. Zwei Knoten werden durch eine Kante verbunden, wenn.. 1) die assoziierten Literale geh¨oren zu