• Keine Ergebnisse gefunden

Wdh.: Der Satz von Rice

N/A
N/A
Protected

Academic year: 2022

Aktie "Wdh.: Der Satz von Rice"

Copied!
11
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

VL-08: Aufz¨ ahlbarkeit

(Berechenbarkeit und Komplexit¨ at, WS 2017) Gerhard Woeginger

WS 2017, RWTH

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 1/41

Organisatorisches

• N¨achste Vorlesung:

Donnerstag, November 16, 12:15–13:45 Uhr, Aula

• Webseite:

http://algo.rwth-aachen.de/Lehre/WS1718/BuK.php

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 2/41

Wiederholung

Wdh.: Der Satz von Rice

Satz

Es seiRdie Menge der von TMen berechenbaren partiellen Funktionen.

Es seiS eine Teilmenge von Rmit∅(S(R.

Dann ist die Sprache

L(S) ={hMi |M berechnet eine Funktion aus S}

unentscheidbar.

R

u

f S

(2)

Wdh.: Der Satz von Rice / Beweis

Mε

w w=hMi hMi

reject (Syntax)

ML(S) Istw eine

G¨odel- nummer?

accept reject

M

x f(x)

M N

ε

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 5/41

Wdh.: Satz von Rice / Anwendungsbeispiele

Beispiel 2

I Es seiS ={fM | ∀w ∈ {0,1}:fM(w)6=⊥}.

I Dann ist

L(S) ={hMi |M berechnet eine Funktion ausS}

={hMi |M h¨alt auf jeder Eingabe}

I Diese Sprache ist auch als dastotale Halteproblem Htot bekannt.

I Gem¨ass dem Satz von Rice ist die SpracheHtot nicht entscheidbar.

Beispiel 5

I Es seiH32={hMi |auf jeder Eingabe h¨altM

nach h¨ochstens 32 Schritten}.

I Uber diese Sprache sagt der Satz von Rice nichts aus!¨

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 6/41

Vorlesung VL-08 Aufz¨ ahlbarkeit

• Semi-Entscheidbarkeit

• Aufz¨ahlbarkeit

• Abschlusseigenschaften

• Berechenbarkeitslandschaft

• Das totale Halteproblem

Semi-Entscheidbarkeit &

Aufz¨ ahlbarkeit

(3)

Semi-Entscheidbarkeit (1)

Eine SpracheLwird von einer TMM entschieden, wenn

I M auf jeder Eingabe h¨alt, und

I M genau die W¨orter aus Lakzeptiert.

Wenn eine TM existiert, die die SpracheLentscheidet, so wirdLalsrekursivoderentscheidbarbezeichnet.

Eine SpracheLwird von einer TMM erkannt, wenn

I M jedes Wort ausLakzeptiert, und

I M kein Wort akzeptiert, das nicht in Lenthalten ist.

Also:L(M)ist genau die vonM erkannte Sprache.

Definition

Wenn eine TM existiert, die die SpracheLerkennt, so wirdLalssemi-entscheidbarbezeichnet.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 9/41

Semi-Entscheidbarkeit (2): Beispiel

Beispiel

Das HalteproblemH={hMiw |M h¨alt aufw}ist nicht entscheidbar, aber semi-entscheidbar.

Beweis

Die folgende TMMH erkennt die SpracheH:

Erh¨altMH eine syntaktisch inkorrekte Eingabe,

I so verwirftMH die Eingabe.

Erh¨altMH eine Eingabe der FormhMiw,

I so simuliertMH die TMM mit Eingabe w

I und akzeptiert, sobald/fallsM aufw h¨alt.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 10/41

Aufz¨ ahler (1)

Definition

EinAufz¨ahlerf¨ur eine SpracheL⊆Σ ist eine Variante der TM mit einem angeschlossenenDrucker.

Der Drucker ist ein zus¨atzliches Ausgabeband, auf dem sich der Kopf nur nach rechts bewegen kann und auf dem nur geschrieben wird.

I Der Aufz¨ahler wird mit leerem Arbeitsband gestartet, und gibt mit der Zeit alle W¨orter inL(m¨oglicherweise mit Wiederholungen) auf dem Drucker aus.

I Die ausgegebenen W¨orter werden dabei immer durch ein Trennzeichen separiert, das nicht inΣenthalten ist.

I Der Aufz¨ahler druckt ausschliesslich W¨orter in L.

Aufz¨ ahler (2)

· · ·

· · · 1 1 0 0 0 1 0 0 1

outputsome

δ 0 1 B q

q0 (q0,B,R) (q1,B,R) reject q1 (q0,B,R) (q1,B,R) accept

· · ·

· · ·

→ → → → → s o

s o m s o m e s o m e

s o m e o

Schreibkopf bewegt sich nur nach rechts

(4)

Aufz¨ ahler (2)

· · ·

· · · 1 1 0 0 0 1 0 0 1

outputsome

δ 0 1 B q

q0 (q0,B,R) (q1,B,R) reject q1 (q0,B,R) (q1,B,R) accept

· · ·

· · ·

→ →

→ → s o

s o m

s o m e

s o m e

s o m e o

Schreibkopf bewegt sich nur nach rechts

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 12/41

Rekursive Aufz¨ ahlbarkeit

Definition

Wenn es f¨ur die SpracheLeinen Aufz¨ahler gibt, so wirdLalsrekursiv aufz¨ahlbarbezeichnet.

Satz (Rekursive Aufz¨ ahlbarkeit ≡ Semi-Entscheidbarkeit)

Eine SpracheList genau dannrekursiv aufz¨ahlbar, wennLsemi-entscheidbarist.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 13/41

Beweis (1)

Angenommen,List rekursiv aufz¨ahlbar und hat einen Aufz¨ahlerA.

Wir konstruieren eine TMM, dieLerkennt.

Bei Eingabe des Wortesw arbeitetM wie folgt:

I M simuliert Amit Hilfe einer Spur, die die Rolle des Druckers

¨

ubernimmt.

I Immer wenn ein neues Wort auf die Spur gedruckt worden ist, vergleicht M dieses Wort mitw und akzeptiert bei ¨Ubereinstimmung.

Korrektheit:

I Fallsw ∈L, so wirdw irgendwann gedruckt und zu diesem Zeitpunkt vonM akzeptiert.

I Fallsw 6∈L, so wirdw niemals gedruckt und somit auch niemals von

M akzeptiert.

Beweis (2)

Angenommen,List semi-entscheidbar und wird von der TMM erkannt.

Wir konstruieren einen Aufz¨ahlerA f¨urL.

In derk-ten Runde (mitk =1,2,3, . . .)

I simuliert der Aufz¨ahler jek Schritte vonM auf jedem der W¨orter w1, . . . ,wk.

I Immer wenn die Simulation eines der Worte akzeptiert, druckt der Aufz¨ahler dieses Wort aus.

Korrektheit:

Der Aufz¨ahlerA druckt offensichtlich nur W¨orter aus Laus. Aber druckt er auch wirklich alle W¨orter aus Laus?

I Es seiwi ein Wort in der SpracheL.

I Dann wirdwi von der TMM nach einer endlichen Anzahlti von Schritten akzeptiert.

I Deshalb wird wi in jeder Runde k mitk ≥max{i,ti}vom Aufz¨ahler

Aausgedruckt.

(5)

w1

w2

w3 w4 w5

w6

w7

...

Anzahl der Schritte, die TMM aufwi ben¨otig: −→

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 16/41

Abschlusseigenschaften

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 17/41

Durchschnitt (1)

Satz

(a) Wenn die beiden SprachenL1 undL2entscheidbar sind, so ist auch die SpracheL1∩L2entscheidbar.

(b) Wenn die beiden SprachenL1 undL2rekursiv aufz¨ahlbar sind, so ist auch die SpracheL1∩L2rekursiv aufz¨ahlbar.

Durchschnitt (2): Beweis von Teil (a)

Es seienM1 undM2zwei TMen, die L1 respektiveL2 entscheiden.

Eine TMM, dieL1∩L2entscheidet:

1. Bei Eingabew simuliertM zun¨achst das Verhalten von M1 aufw und dann das Verhalten vonM2 aufw.

2. FallsM1 und M2 beide das Wortw akzeptieren, so akzeptiert auch M; andernfalls verwirftM.

Korrektheit:

I Fallsw ∈L1∩L2, so wirdw akzeptiert.

I Andernfalls wirdw verworfen.

(6)

Durchschnitt (3): Beweis von Teil (b)

Es seien nunM1 undM2zwei TMen, die L1 respektiveL2 erkennen.

Wir verwenden die gleiche Konstruktion f¨urM wie in (a).

Eine TMM, dieL1∩L2 erkennt:

1. Bei Eingabew simuliertM zun¨achst das Verhalten vonM1aufw und dann das Verhalten vonM2auf w.

2. FallsM1 undM2 beide akzeptieren, so akzeptiert auchM. Korrektheit:

I Fallsw ∈L1∩L2, so wirdw vonM akzeptiert.

I Andernfalls wirdw nicht akzeptiert.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 20/41

Vereinigung (1)

Satz

(a) Wenn die beiden SprachenL1 und L2 entscheidbar sind, so ist auch die Sprache L1∪L2 entscheidbar.

(b) Wenn die beiden SprachenL1 und L2 rekursiv aufz¨ahlbar sind, so ist auch die Sprache L1∪L2 rekursiv aufz¨ahlbar.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 21/41

Vereinigung (2): Beweis von Teil (a)

Es seienM1 undM2 zwei TMen, dieL1respektiveL2entscheiden.

Eine TMM, dieL1∪L2 entscheidet:

1. Bei Eingabew simuliertM zun¨achst das Verhalten vonM1aufw und dann das Verhalten vonM2auf w.

2. FallsM1 oderM2 das Wortw akzeptiert, so akzeptiert auchM;

andernfalls verwirftM.

Korrektheit:

I Fallsw ∈L1∪L2, so wirdw vonM1 oder vonM2 und somit auch vonM akzeptiert.

I Andernfalls verwerfen sowohlM1 als auchM2, und damit auchM.

Vereinigung (3): Beweis von Teil (b)

Es seien nunM1und M2 zwei TMen, dieL1respektiveL2 erkennen.

Welches Problem tritt auf, wenn wir in diesem Fall die Simulation aus (a) einfach ¨ubernehmen?

Idee:

SimuliereM1und M2 parallel statt sequentiell.

(7)

Vereinigung (4): Beweis von Teil (b)

Eine TMM, dieL1∪L2 erkennt

I Wir nehmen o.B.d.A. an, dassM ¨uber zwei B¨ander verf¨ugt.

I Auf Band 1 wirdM1 aufw simuliert.

I Auf Band 2 wirdM2 aufw simuliert.

I Sobald ein Schritt gemacht wird, in demM1 oderM2 akzeptiert, akzeptiert auch die TMM.

Korrektheit:

I Fallsw ∈L1∪L2, so wirdw vonM1 oder vonM2 und somit auch vonM akzeptiert.

I Andernfalls wirdw nicht akzeptiert.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 24/41

Komplement (1)

Lemma

Wenn sowohl die SpracheL⊆Σals auch ihr KomplementL:= Σ\L rekursiv aufz¨ahlbar sind, so istLentscheidbar.

Beweis

I Es seienM undM zwei TMen, dieLrespektiveLerkennen.

I F¨ur ein Eingabewortw simuliert die neue TMM0 das Verhalten von M aufw und das Verhalten vonM aufw parallel auf zwei B¨andern.

I WennM akzeptiert, so akzeptiertM0. WennM akzeptiert, so verwirftM0.

I Da entwederw ∈Loder w 6∈Lgilt, tritt eines der beiden obigen Ereignisse (M akzeptiert;M akzeptiert) nach endlicher Zeit ein.

Damit ist die Terminierung vonM0 sichergestellt.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 25/41

Komplement (2)

Beobachtung 1

Wenn die SpracheLentscheidbar ist, so ist auch ihr KomplementL entscheidbar.

(Beweis: Wir k¨onnen das Akzeptanzverhalten einer TMM, dieL entscheidet, invertieren.)

Beobachtung 2

Die Menge der rekursiv aufz¨ahlbaren Sprachen hingegen ist nicht unter Komplementbildung abgeschlossen.

Beispiel

I H ist rekursiv aufz¨ahlbar.

I W¨areH ebenfalls rekursiv aufz¨ahlbar, so w¨areH entscheidbar.

I Daher istH nicht rekursiv aufz¨ahlbar.

Die Berechenbarkeitslandschaft

(8)

Berechenbarkeitslandschaft (1)

Beobachtung

Jede SpracheLf¨allt in genau eine der folgenden vier Familien.

(1) L ist entscheidbar, und sowohlLals auchLsind rekursiv aufz¨ahlbar.

(2) List rekursiv aufz¨ahlbar, aberList nicht rekursiv aufz¨ahlbar (3) List rekursiv aufz¨ahlbar, aberList nicht rekursiv aufz¨ahlbar (4) WederLnochLsind rekursiv aufz¨ahlbar

Beispiele

I Familie 1: Graphzusammenhang; Hamiltonkreis

I Familie 2:H,H, D

I Familie 3:H,H, D,

I Familie 4:Htot ={hMi |M h¨alt auf jeder Eingabe}

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 28/41

Berechenbarkeitslandschaft (2)

rekursiv aufz¨ahlbare

Probleme H

H D

Probleme mit rekursiv aufz¨ahlbarem Komplement H H D entscheidbare

Probleme

Unentscheidbare Probleme mit unentscheidbarem Komplement Htot

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 29/41

Das totale Halteproblem

Das totale Halteproblem

Definition (Totales Halteproblem)

Htot = {hMi |M h¨alt auf jeder Eingabe}

Frage: Wie kann man nachweisen, dass weder die SpracheHtot noch die SpracheHtot rekursiv aufz¨ahlbar ist?

Antwort: MitReduktionen.

(9)

Reduktionen (1): Wiederholung aus VL-06

Definition

Es seienL1 undL2zwei Sprachen ¨uber einem AlphabetΣ.

Dann heisstL1aufL2 reduzierbar(mit der NotationL1≤L2), wenn eine berechenbare Funktionf: Σ→Σexistiert, so dass f¨ur allex ∈Σgilt: x ∈L1 ⇔ f(x)∈L2.

{0,1} {0,1}

L2

L1

f

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 32/41

Reduktionen (2)

Satz

FallsL1≤L2und fallsL2rekursivaufz¨ahlbarist, so ist auchL1 rekursivaufz¨ahlbar.

Beweis

Wir konstruieren eine TMM1, dieL1 erkennt, indem sie als Unterprogramm eine TMM2verwendet, die L2 erkennt:

I F¨ur eine Eingabex berechnet die TMM1 zun¨achst f(x).

I Danach simuliertM1die TMM2 mit der Eingabef(x).

I M1akzeptiert die Eingabex, fallsM2 die Eingabef(x)akzeptiert.

Korrektheit:

M1 akzeptiertx ⇔ M2akzeptiertf(x)

⇔ f(x)∈L2 ⇔ x ∈L1

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 33/41

Reduktionen (3)

Noch einmal der Satz:

Satz

FallsL1≤L2 und fallsL2 rekursiv aufz¨ahlbar ist, so ist auchL1rekursiv aufz¨ahlbar.

Der (logisch ¨aquivalente) Umkehrschluss:

Satz

FallsL1≤L2 und fallsL1 nichtrekursiv aufz¨ahlbar ist, so ist auchL2nichtrekursiv aufz¨ahlbar.

Zur¨ uck zum totalen Halteproblem

Wir wissen:Hist unentscheidbar, aber rekursiv aufz¨ahlbar.

Daraus folgt:Hist nicht rekursiv aufz¨ahlbar.

Wir werden zeigen:

Behauptung A: H≤Htot Behauptung B: H≤Htot

Aus diesen beiden Reduktionen folgt dann:

Satz

WederHtot nochHtot ist rekursiv aufz¨ahlbar.

(10)

Behauptung A: H

≤ H

tot

Beweis (1)

Wir beschreiben eine berechenbare Funktionf,

die Ja-Instanzen vonH auf Ja-Instanzen vonHtot und Nein-Instanzen vonH auf Nein-Instanzen vonHtot abbildet.

Es seiw die Eingabe f¨urH.

I Wennw keine g¨ultige G¨odelnummer ist, so setzen wirf(w) =w.

I Fallsw =hMif¨ur eine TMM, so seif(w) :=hMidie G¨odelnummer der TMMmit folgendem Verhalten:

M ignoriert die Eingabe und simuliertM mit der Eingabe. Die beschriebene Funktionf ist berechenbar. (Warum?)

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 36/41

Behauptung A: H

≤ H

tot

Beweis (2a)

F¨ur die Korrektheit zeigen wir:

(a) w 6∈H ⇒ f(w)6∈Htot

(b) w ∈H ⇒ f(w)∈Htot

Fallsw keine G¨odelnummer ist, giltw ∈H undf(w)∈Htot. Dieser Unterfall von (a) ist also korrekt erledigt.

Fallsw =hMif¨ur eine TMM, so betrachten wirf(w) =hMi.

Dann gilt:

w 6∈H ⇒ w ∈H

⇒ M h¨alt auf der Eingabe.

⇒ M h¨alt auf jeder Eingabe.

⇒ hMi ∈Htot

⇒ f(w)6∈Htot und (a) ist korrekt.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 37/41

Behauptung A: H ≤ H

tot

Beweis (2b)

F¨ur die Korrektheit zeigen wir:

(a) w 6∈H ⇒ f(w)6∈Htot

(b) w ∈H ⇒ f(w)∈Htot

Fallsw =hMif¨ur eine TMM, so betrachten wirf(w) =hMi.

Dann gilt:

w ∈H ⇒ M h¨alt nicht auf der Eingabe.

⇒ Mh¨alt auf gar keiner Eingabe.

⇒ hMi 6∈Htot

⇒ f(w)∈Htot und (b) ist korrekt.

Damit ist Behauptung A bewiesen.

Behauptung B: H ≤ H

tot

Beweis (1)

Wir beschreiben eine berechenbare Funktionf,

die Ja-Instanzen vonH auf Ja-Instanzen vonHtot und Nein-Instanzen von H auf Nein-Instanzen vonHtot abbildet.

Es seiw die Eingabe f¨urH. Es seiw0 irgendein Wort aus Htot.

I Wennw keine g¨ultige G¨odelnummer ist, so setzen wirf(w) =w0.

I Fallsw =hMif¨ur eine TMM, so seif(w) :=hM0idie

G¨odelnummer der TMM0, die sich auf Eingaben der L¨ange i wie folgt verh¨alt:

M0simuliert die ersteni Schritte vonM auf der Eingabe. Wenn M innerhalb dieseri Schritte h¨alt, dann gehtM0 in eine Endlosschleife; andernfalls h¨altM0.

Die beschriebene Funktionf ist berechenbar. (Warum?)

(11)

Behauptung B: H

≤ H

tot

Beweis (2a)

F¨ur die Korrektheit zeigen wir:

(a) w 6∈H ⇒ f(w)6∈Htot (b) w ∈H ⇒ f(w)∈Htot

Fallsw keine G¨odelnummer ist, giltw ∈Hund f(w) =w0∈Htot. Dieser Unterfall von (a) ist also korrekt erledigt.

Fallsw =hMif¨ur eine TMM, so betrachten wirf(w) =hM0i.

Dann gilt:

w 6∈H ⇒ M h¨alt auf der Eingabe.

⇒ ∃i:M h¨alt innerhalb voni Schritten auf.

⇒ ∃i:M0 h¨alt auf keiner Eingabe der L¨ange mindestensi.

⇒ M0 h¨alt nicht auf jeder Eingabe.

⇒ f(w) =hM0i 6∈Htot und (a) ist korrekt.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 40/41

Behauptung B: H

≤ H

tot

Beweis (2b)

F¨ur die Korrektheit zeigen wir:

(a) w 6∈H ⇒ f(w)6∈Htot

(b) w ∈H ⇒ f(w)∈Htot

Fallsw =hMif¨ur eine TMM, so betrachten wirf(w) =hM0i.

Dann gilt:

w ∈H ⇒ M h¨alt nicht auf der Eingabe

⇒ ¬∃i:M h¨alt innerhalb voni Schritten auf

⇒ ∀i:M h¨alt nicht innerhalb voni Schritten auf

⇒ ∀i:M0 h¨alt auf allen Eingaben der L¨angei

⇒ M0 h¨alt auf jeder Eingabe

⇒ f(w) =hM0i ∈Htot und (b) ist korrekt.

Damit ist Behauptung B bewiesen.

BuK/WS 2017 VL-08: Aufz¨ahlbarkeit 41/41

Referenzen

ÄHNLICHE DOKUMENTE

BuK/WS 2017 VL-07: Satz von Rice 16/37..

I Auch eine viel schw¨ achere Variante der RAM mit stark eingeschr¨ anktem Befehlssatz ist Turing-m¨ achtig.

Schritt A: Simuliere das Verhalten von M bei Eingabe auf einer f¨ ur diesen Zweck reservierten Spur. Schritt B: Simuliere das Verhalten von N auf x, stoppe sobald N stoppt und

Eine Sprache, f¨ ur die es einen Aufz¨ ahler gibt, heißt rekursiv aufz¨ ahlbar.. Berthold V¨ ocking, Informatik 1 () Vorlesung Berechenbarkeit und Komplexit¨

In einem geschlossenen System ist die Änderung der inneren Energie ΔU gleich der mit der Umgebung ausgetauschten Wärme Q und Arbeit W.. ΔU = Q

Berechnung von U,H, C p ,C V für reale Gase (reale Stoffe) aus molekularen Eigenschaften Messung von U,H für reale Stoffe -Verknüpfung von U, H mit leicht messbaren Größen..

Gewinnen Sie das Auto hinter einer der drei Türen..

Gewinnen Sie das Auto hinter einer der drei Türen..