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.
• f(a) → R f(b) ← R f(f(b)) ← R f(f(a))<br />
Nach Satz 3.3.4 ist R also äquivalent zu E. Hingegen wäre z.B. das TES {c → a,f(f(b)) →<br />
f(b)} zwar korrekt, aber nicht adäquat <strong>und</strong> somit auch nicht äquivalent zu E.<br />
Bislang istnochunklar, warummannicht direkt einegerichtete VersionderGleichheiten<br />
E als äquivalentes TES R verwendet. Der Gr<strong>und</strong> liegt daran, dass allein durch Richten<br />
von Gleichungen der Beweisaufwand immer noch viel zu groß ist. Man muss momentan<br />
Gleichungen ja immer noch in beide Richtungen anwenden, um die Äquivalenz zu ≡ E zu<br />
erreichen. Außerdem gibt es viele verschiedene Möglichkeiten, Terme mit einem TES zu<br />
reduzieren, so dass immer noch viel zu viele Indeterminismen bleiben.<br />
Die Idee ist stattdessen, zur Überprüfung von s ≡ E t bzw. von s ↔ ∗ R t (für ein zu E<br />
äquivalentes TES R) nicht mehr Regeln in beliebiger Richtung anzuwenden, sondern wir<br />
reduzieren zuerst s <strong>und</strong> t soweit wie möglich. Damit erhält man Auswertungsfolgen der Art<br />
s → R s 1 → R s 2 → R ...s n <strong>und</strong> t m ← R ...t 2 ← R t 1 ← R t,<br />
wobei s n <strong>und</strong> t m nicht weiter mit → R reduzierbar sind. Anschließend überprüfen wir, ob die<br />
beiden Terme s n <strong>und</strong> t m , die wir erhalten haben, identisch (d.h. syntaktisch gleich) sind.<br />
Beispiel 3.3.6 Betrachten wir wieder das TES R mit den Regeln (3.1) <strong>und</strong> (3.2). Unsere<br />
Frage war, ob aus den plus-Axiomen E die Gleichung plus(succ(succ(O)),x) ≡ plus(succ(O),<br />
succ(x)) folgt. Um dieses Wortproblem zu lösen, gehen wir wie folgt vor: Wir reduzieren<br />
zuerst beide Terme in der Gleichung soweit wie möglich <strong>und</strong> überprüfen dann, ob die erhaltenen<br />
Terme identisch sind. Im Beispiel ergibt sich<br />
plus(succ(succ(O)),x) → R succ(plus(succ(O),x)) → R succ(succ(plus(O,x))) → R succ(succ(x))<br />
<strong>und</strong><br />
plus(succ(O),succ(x)) → R succ(plus(O,succ(x))) → R succ(succ(x)).<br />
Somit erhält man also in der Tat plus(succ(succ(O)),x) ↔ ∗ R plus(succ(O),succ(x)) bzw.<br />
plus(succ(succ(O)),x) ≡ E plus(succ(O),succ(x)) aufgr<strong>und</strong> der Äquivalenz zu E.<br />
Das oben skizzierte Verfahren ist mit Sicherheit korrekt, denn aus der Existenz von zwei<br />
Auswertungsfolgen zum selben Ergebnis folgt immer s ↔ ∗ R t <strong>und</strong> somit s ≡ E t. Es stellen<br />
sich aber bislang noch zwei Probleme:<br />
1. Wenn wir s <strong>und</strong> t solange wie möglich reduzieren wollen, so könnte es sein, dass diese<br />
Auswertung nicht terminiert. Hierbei gibt es zum einen die Möglichkeit, dass keine<br />
der möglichen Auswertungen von s bzw. t terminiert. Es kann aber auch sein, dass es<br />
zwar terminierende, aber auch nicht-terminierende Auswertungen dieser Terme gibt.<br />
Da man die Folge der Auswertungsschritte frei wählen kann, besteht dann immer<br />
noch die Gefahr, dass man dennoch die unendliche Ersetzungsfolge wählt. Um dies<br />
zu verhindern, muss man sich auf sogenannte terminierende Termersetzungssysteme<br />
beschränken.