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 ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Beweis. Wir betrachten zwei Fälle. Falls R terminiert, so gibt es nach Lemma 4.2.3<br />
keinen Term t mit r i → + R t <strong>und</strong> t ☎ r i. Somit gibt der Algorithmus RIGHT-GROUND-<br />
TERMINIERUNG also nicht “False” aus. Außerdem hat dann kein Term r i unendlich lange<br />
Reduktionen. Da außerdem der Verzweigungsgrad der Ersetzungsrelation → R endlich ist,<br />
folgt aufgr<strong>und</strong> des Lemmas von König (Satz 4.1.3), dass die Suchbäume für alle r i endlich<br />
sind. Mit anderen Worten, nach endlich vielen Schritten sind alle T i = ∅ <strong>und</strong> der<br />
Algorithmus terminiert mit der Ausgabe “True”.<br />
Falls R nicht terminiert, so existiert nach Lemma 4.2.3 ein i ∈ {1,...,n} mit r i → + R t<br />
<strong>und</strong> t ☎ r i . Nach endlich vielen Schritten gilt also t ∈ T i <strong>und</strong> der Algorithmus terminiert<br />
mit der Ausgabe “False”.<br />
✷<br />
4.3 Terminierung mit Reduktionsrelationen<br />
Nachdem wir ein Entscheidungsverfahren für die Terminierung bei TESen ohne Variablen<br />
auf rechten Seiten kennen gelernt haben, wollen wir nun wieder den Fall allgemeiner TESe<br />
untersuchen. Aufgr<strong>und</strong> der Unentscheidbarkeit des Halteproblems (Satz 4.2.1) wird jedes<br />
automatische Verfahren unvollständig sein. Unser Ziel ist aber natürlich, ein Verfahren zu<br />
entwickeln, das zumindest bei vielen praktisch interessanten TESen (<strong>und</strong> Programmen) die<br />
Terminierung nachweisen kann.<br />
Eine Gr<strong>und</strong>idee, um die Terminierung eines TES R (bzw. die F<strong>und</strong>iertheit der Ersetzungsrelation<br />
→ R ) nachzuweisen, ist der Ansatz, eine f<strong>und</strong>ierte Relation ≻ zu finden, in der<br />
die Ersetzungsrelation enthalten ist. Mit anderen Worten, wir suchen nach einer Relation<br />
≻, so dass für alle Terme s,t aus s → R t jeweils s ≻ t folgt. Offensichtlich ist dies für die<br />
Terminierung hinreichend, d.h., aus der F<strong>und</strong>iertheit von ≻ folgt dann die F<strong>und</strong>iertheit von<br />
→ R .<br />
Das Ziel ist hierbei, eine solche Relation ≻ automatisch zu finden. Allerdings gibt es<br />
natürlich im allgemeinen unendlich viele Terme s <strong>und</strong> t, so dass s → R t gilt. Es ist daher<br />
automatisch nicht möglich, für all diese Terme zu untersuchen, ob dann auch wirklich s ≻ t<br />
folgt.<br />
Wirmüssendaherversuchen, dieseEigenschaft schondurchBetrachtungvonnurendlich<br />
vielen Termpaaren s,t sicherzustellen. Die Ersetzungsrelation → R ist ja durch die (endlich<br />
vielen) Regeln festgelegt, denn es gilt s → R t genau dann, wenn s| π = lσ <strong>und</strong> t = s[rσ] π<br />
für eine Regel l → r ∈ R. Wir verlangen daher<br />
l ≻ r für alle Regeln l → r ∈ R. (4.7)<br />
Diese Forderung alleine stellt natürlich noch nicht sicher, dass auch wirklich aus s → R t<br />
folgt, dass dann auch s ≻ t gilt.<br />
Als Beispiel betrachten wir das TES mit der Regel<br />
endless(x) → endless(succ(x)).<br />
Eine f<strong>und</strong>ierte Relation, die die Bedingung (4.7) erfüllt, lässt sich bei diesem TES leicht<br />
angeben. Die Bedingung endless(x) ≻ endless(succ(x)) wird z.B. von der Relation erfüllt,