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.
Die TESe R 3 <strong>und</strong> R 4 aus Bsp. 3.3.7 <strong>und</strong> das TES aus Bsp. 3.3.13 (c) machen aber<br />
bereits deutlich, dass die Terminierung alleine noch nicht ausreicht, um unser skizziertes<br />
Termersetzungsverfahren für die Lösung des Wortproblems zu verwenden. Das TES {b →<br />
c,b → a} terminiert. Wenn man untersuchen möchte, ob in der zugr<strong>und</strong>e liegenden Menge<br />
von Gleichungen E die Aussage a ≡ E c gilt, so würde man nun die Normalformen von a <strong>und</strong><br />
c berechnen. Es gilt a↓ R = a <strong>und</strong> c↓ R = c. Da die beiden resultierenden Terme aber nicht<br />
identisch sind, würde man nun fälschlicherweise schließen, dass a ≢ E c gilt.<br />
Das Problem hierbei ist, dass wir zur Untersuchung der Frage s ≡ E t eigentlich untersuchen<br />
müssten, ob s ↔ ∗ R t gilt. In Wirklichkeit untersuchen wir jedoch nur, ob es einen Term<br />
q gibt, so dass s → ∗ R q ←∗ R t gilt. Man bezeichnet solche Terme dann als zusammenführbar<br />
(engl. joinable). Im allgemeinen folgt zwar aus der Zusammenführbarkeit von s <strong>und</strong> t, dass<br />
s ↔ ∗ R t gilt, aber die Umkehrung gilt nicht. Dies wird an dem TES R = {b → c,b → a}<br />
deutlich, bei dem a ↔ ∗ R c gilt, obwohl die beiden Terme nicht zusammenführbar sind. Wir<br />
müssen uns also auf TESe beschränken, bei denen die Ersetzungsrelation → R diese Eigenschaft<br />
hat, die man allgemein für Relationen formulieren kann. Sie geht auf Church <strong>und</strong><br />
Rosser zurück, die diese Eigenschaft für den Lambda-Kalkül untersuchten <strong>und</strong> bewiesen,<br />
vgl. [CR36, Gie05].<br />
Definition 3.3.14 (Zusammenführbarkeit, Church-Rosser Eigenschaft) Sei → eine<br />
Relation auf einer Menge M. Zwei Elemente s,t ∈ M sind zusammenführbar (Schreibweise<br />
s ↓ t) gdw. es ein q ∈ M gibt mit s → ∗ q ← ∗ t.<br />
Die Relation → hat die Church-Rosser Eigenschaft gdw. für alle s,t ∈ M gilt: Falls<br />
s ↔ ∗ t, dann sind s <strong>und</strong> t zusammenführbar, d.h., s ↓ t.<br />
Man sagt, ein TES R hat die Church-Rosser Eigenschaft gdw. seine Ersetzungsrelation<br />
→ R die Church-Rosser Eigenschaft hat.<br />
Beispiel 3.3.15 Das TES R = {b → c,b → a} aus Bsp. 3.3.13 (c) besitzt die Church-<br />
Rosser Eigenschaft nicht. So gilt zwar a ↔ ∗ R c, denn a ← R b → R c, aber a <strong>und</strong> c sind nicht<br />
zusammenführbar, denn beide sind Normalformen.<br />
Das TES mit den Regeln (3.1) <strong>und</strong> (3.2) für die Addition besitzt hingegen die Church-<br />
Rosser Eigenschaft. Es gilt z.B. plus(succ(succ(O)),x) ↔ ∗ R plus(succ(O),succ(x)) <strong>und</strong> in der<br />
Tat sind die beiden Terme zusammenführbar (vgl. Bsp. 3.3.6).<br />
Um TESe besser auf die Church-Rosser Eigenschaft untersuchen zu können, empfiehlt<br />
es sich, stattdessen die Eigenschaft der Konfluenz zu betrachten, die zur Church-Rosser Eigenschaft<br />
äquivalent ist. Auf einen Term p sind oftmehrere Auswertungsschritte anwendbar<br />
(d.h. wir haben eine Relation →, bei der p → ∗ s <strong>und</strong> p → ∗ t für geeignete Objekte s,t,p<br />
gilt). Eine Relation → heißt konfluent, wenn es unerheblich ist, welchen der beiden Schritte<br />
man ausführt. Genauer bedeutet Konfluenz, dass sich die beiden “alternativen” Objekte<br />
s <strong>und</strong> t wieder zusammenführen lassen. Man kann dies durch folgendes Bild illustrieren:<br />
Wenn die durchgezogenen Pfeile existieren, folgtdarausdie Existenz der gestrichelten Pfeile