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 ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Der Term f(g 2n +1 (f(x))) lässt sich durch mehrfache Reduktion mit der Regel g(g(x)) →<br />
g(x) zu f(g(f(x))) reduzieren. Der Term f(g(f(g 2n (x)))) wird durch die erste Regel zu<br />
f(g 2n (g 2n (x))) = f(g 2n+1 (x))reduziert. Dieentstehende Gleichung wirdvonlinksnach rechts<br />
orientiert, was<br />
(∅,{f(g(f(x))) → f(g 2n (x)),f(g(f(x))) → f(g 2n+1 (x)),g(g(x)) → g(x)})<br />
ergibt. Falls wir wieder die Anwendungsbedingung von “Reduziere-Links” ignorieren, so<br />
kann man die erste Regel mit Hilfe der zweiten Regel in die Gleichung f(g 2n+1 (x)) ≡<br />
f(g 2n (x)) überführen, die mit der Regel g(g(x)) → g(x) in eine triviale Gleichung überführt<br />
<strong>und</strong> anschließend gelöscht wird.<br />
Auf diese Weise entsteht eine unendliche, faire Transformationsfolge mit leerer Menge<br />
von persistenten Gleichungen. Die einzige persistente Regel ist R ω = {g(g(x)) → g(x)}.<br />
Aber dieses TES ist nicht äquivalent zur ursprünglichen Gleichungsmenge E.<br />
Die gr<strong>und</strong>legende Vervollständigungsprozedur bildet alle kritischen Paare der entstandenen<br />
Regeln. Jede seiner Transformationsfolgen ist daher fair <strong>und</strong> nach Satz 6.2.11 ist<br />
diese Prozedur daher korrekt im Sinne von Def. 6.2.8. Dies bestätigt also unseren Korrektheitssatz<br />
6.1.6.<br />
Selbstverständlich stellt man an eine gute Vervollständigungsprozedur neben der Korrektheit<br />
den Anspruch, möglichst effizient zu sein <strong>und</strong> gleichzeitig möglichst selten fehlzuschlagen.<br />
Hierzu existieren verschiedene Strategien. Generell ist es vorteilhaft, die “Löschen”-Transformationsregel<br />
mit höchster Präferenz <strong>und</strong> die letzten drei Transformationsregeln<br />
mit nächsthöherer Präferenz anzuwenden, da sie die betrachteten Gleichungen <strong>und</strong><br />
Regeln vereinfachen können. Die Transformationsregel “Orientieren” liegt in der Präferenz<br />
darunter <strong>und</strong> die Transformationsregel “Generieren” sollte man nur dann anwenden, wenn<br />
keine andere Transformationsregel mehr anwendbar ist. Hierbei sollte man jedes kritische<br />
Paar natürlich nur einmal im Verlauf der Transformation erzeugen. Um Fehlschlag zu erkennen,<br />
kann man z.B. die Heuristik verwenden, dass man dann abbrechen sollte, wenn<br />
alle kritischen Paare mit einer bestimmten Regel gebildet wurden <strong>und</strong> soweit wie möglich<br />
in Regeln überführt <strong>und</strong> reduziert wurden, <strong>und</strong> dennoch noch nicht-orientierbare Gleichungen<br />
übrig bleiben. Aufgr<strong>und</strong> der verlangten Fairness der Transformationsfolge muss man<br />
natürlich sicher stellen, dass alle kritischen Paare der persistenten Regeln irgendwann einmal<br />
als Gleichungen auftraten. (Es gibt darüber hinaus auch verbesserte Kriterien, die es<br />
erlauben, auf eine erneute kritische Paar-Bildung zwischen Regeln zu verzichten, die sich<br />
nur aufgr<strong>und</strong> der “Reduziere-Rechts”-Transformationsregel verändert habe, vgl. [Hue80]<br />
<strong>und</strong> [BN98, Abschnitt 7.4].)<br />
Beispiel 6.2.13 Wir zeigen nun, wie das Gruppenbeispiel vervollständigt wird. Wir beginnen<br />
wie in Bsp. 6.2.1. Aus den ursprünglichen Gleichungen<br />
E = {f(x,f(y,z)) ≡ f(f(x,y),z),f(x,e) ≡ x,f(x,i(x)) ≡ e}<br />
entsteht durch“Orientieren” dasfolgendeTES. Hierbei wirddieRPOSmit Präzedenz f ❂ e<br />
verwendet, wobei das Funktionssymbol f den Status 〈2,1〉 hat.<br />
f(x,f(y,z)) → f(f(x,y),z) (G1)<br />
f(x,e) → x (G2)<br />
f(x,i(x)) → e (G3)