31.01.2014 Aufrufe

Skriptes - Uni Bremen - Universität Bremen

Skriptes - Uni Bremen - Universität Bremen

Skriptes - Uni Bremen - Universität Bremen

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>Uni</strong>verselle Maschinen und unentscheidbare Probleme<br />

Lemma 16.12<br />

1) L 1 ≤ L 2 und L 2 entscheidbar ⇒ L 1 entscheidbar.<br />

2) L 1 ≤ L 2 und L 1 unentscheidbar ⇒ L 2 unentscheidbar.<br />

Beweis.<br />

1) Um „w ∈ L 1 “ zu entscheiden,<br />

• berechnet man f(w) und<br />

• entscheidet „f(w) ∈ L 2 “.<br />

2) Folgt unmittelbar aus 1).<br />

Wir werden im Folgenden noch einige Beispiele für Reduktionen sehen. Zunächst zeigen<br />

wir mit Hilfe einer Reduktion des Halteproblems folgendes sehr starke Resultat:<br />

Jede nichttriviale semantische Eigenschaft von Programmen (DTM) ist unentscheidbar.<br />

• Semantisch heißt hier: Die Eigenschaft hängt nicht von der syntaktischen Form<br />

des Programms (der DTM), sondern nur von der erkannten Sprache ab.<br />

• Nichttrivial: Es gibt Turing-erkennbare Sprachen, die die Eigenschaft erfüllen, aber<br />

nicht alle Turing-erkennbaren Sprachen erfüllen sie.<br />

Zum Beispiel ist das Anhalten auf dem leeren Wort eine semantische und nichttriviale<br />

Eigenschaft. Also ist die Unentscheidbarkeit des Halteproblems eine konkrete Instanz des<br />

hier bewiesenen, sehr allgemeinen Resultates. Da nach der Church-Turing-These DTMs<br />

äquivalent zu jedem anderen Berechnungsmodell sind, kann man diese Aussage intuitiv<br />

so verstehen, dass alle interessanten Eigenschaften, die das Verhalten von Programmen<br />

betreffen, unentscheidbar sind. Man kann beispielsweise kein Programm schreiben, das<br />

ein Programm als Eingabe erhält und entscheidet, ob dieses terminiert oder sich in einer<br />

Endlosschleife verfängt. Dies hat weitreichende Konsequenzen im Gebiet der Programmverifikation,<br />

wo man Programme automatisch auf ihre Korrektheit prüfen möchte.<br />

Ein Beispiel für eine nicht semantische Eigenschaft ist zum Beispiel: die DTM macht<br />

auf dem leeren Wort mehr als 100 Schritte.<br />

Wir setzen im Folgenden semantische Eigenschaften von DTMs mit Eigenschaften der<br />

von ihnen erkannten Sprachen gleich: eine Eigenschaft Turing-erkennbarer Sprachen ist<br />

eine Menge<br />

E ⊆ {L ⊆ Σ ∗ | L ist Turing-erkennbar}.<br />

Es folgt das angekündigte Resultat.<br />

Satz 16.13 (Satz von Rice)<br />

Es sei E eine Eigenschaft Turing-erkennbarer Sprachen, so dass gilt:<br />

∅ E {L ⊆ Σ ∗ | L ist Turing-erkennbar}.<br />

132

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!