20.01.2015 Aufrufe

Skript (Fassung vom 4.4.2011) - Lehr- und Forschungsgebiet ...

Skript (Fassung vom 4.4.2011) - Lehr- und Forschungsgebiet ...

Skript (Fassung vom 4.4.2011) - Lehr- und Forschungsgebiet ...

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.

kann durch ein TES ausgedrückt werden. Dies bedeutet zum einen, dass TESe in der Tat<br />

einen mächtigen Berechnungsformalismus darstellen <strong>und</strong> dass Techniken zur Analyse <strong>und</strong><br />

Untersuchung von TESen auch für andere Programmiersprachen verwendbar sein können.<br />

Andererseits bedeutet es aber auch, dass es kein automatisches Verfahren gibt, das die<br />

Terminierung von TESen immer entscheiden kann. Wir müssen uns also mit hinreichenden<br />

Verfahren zufrieden geben, die möglichst viele terminierende TESe erkennen. Aus dem<br />

Fehlschlag eines solchen Verfahrens kann man dann aber nicht auf die Nicht-Terminierung<br />

des TES schließen.<br />

Satz 4.2.1 (Unentscheidbarkeit des Halteproblems für TESe) Sei R ein TES über<br />

Σ <strong>und</strong> V <strong>und</strong> sei t ∈ T (Σ,V). Das Problem, ob t keine unendliche Reduktion mit → R hat<br />

(Halteproblem), ist unentscheidbar, aber semi-entscheidbar. Das Problem, ob R terminiert<br />

(das universelle Halteproblem, d.h., die Frage, ob alle Terme nur endliche Reduktionen<br />

haben), ist nicht einmal semi-entscheidbar.<br />

Beweisskizze. Für jede Turingmaschine TM kann man ein TES R(TM) angeben, das die<br />

Arbeitsweise von TM simuliert (siehe [HL78] bzw. [BN98, Abschnitt 5.1.1]). Damit folgen<br />

die Unentscheidbarkeitsaussagen des Satzes aus der Unentscheidbarkeit des Halteproblems<br />

für Turingmaschinen <strong>und</strong> aus der Tatsache, dass das universelle Halteproblem für Turingmaschinen<br />

nicht einmal semi-entscheidbar ist [Her71].<br />

Die Semi-Entscheidbarkeit des Halteproblems lässt sich wie folgt zeigen: Wir konstruieren<br />

einen Suchbaum wie in Abschnitt 3.1. Die Wurzel des Baums wird mit t markiert <strong>und</strong><br />

jeder Knoten mit der Markierung u hat als Kinder die Knoten mit den Markierungen v für<br />

alle Terme v mit u → R v. Aufgr<strong>und</strong> der Variablenbedingung V(r) ⊆ V(l) für alle Regeln<br />

l → r eines TES lässt sich jeder Term nur zu endlich vielen Termen in einem Schritt reduzieren.<br />

Der Suchbaum hat also einen endlichen Verzweigungsgrad. Der Term t terminiert<br />

gdw. jeder Pfad in dem Baum endliche Länge hat. Aufgr<strong>und</strong> des Lemmas von König (Satz<br />

4.1.3) bedeutet das also, dass t terminiert gdw. der Suchbaum nur endlich viele Knoten<br />

hat. Das Semi-Entscheidungsverfahren baut also zu t den Suchbaum auf. Dieses Verfahren<br />

terminiert mit Erfolg gdw. t nur endliche Reduktionen mit → R hat. ✷<br />

Allerdings existiert ein Spezialfall, in dem die Terminierung entscheidbar ist, nämlich<br />

bei TESen ohne Variablen auf den rechten Seiten der Regeln.<br />

Beispiel 4.2.2 Wir betrachten das folgende TES, das keine Variablen auf den rechten<br />

Seiten seiner Regeln hat.<br />

and(true,true) → true<br />

and(x,false) → false<br />

and(false,x) → and(true,not(true))<br />

not(false) → true<br />

not(true) → and(false,false)

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!