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.
Reduktionsordnungen. (Wie üblich ist eine Ordnung eine transitive <strong>und</strong> antisymmetrische 2<br />
Relation. Aus der F<strong>und</strong>iertheit folgt natürlich sofort die Asymmetrie 3 <strong>und</strong> damit auch die<br />
Antisymmetrie.)<br />
Definition 4.3.3 (Reduktionsrelation <strong>und</strong> -ordnung) Eine Relation ≻ über Termen,<br />
die f<strong>und</strong>iert, stabil <strong>und</strong> monoton ist, heißt Reduktionsrelation. Eine transitive Reduktionsrelation<br />
heißt Reduktionsordnung.<br />
Mit Hilfe von Reduktionsrelationen lässt sich nun tatsächlich die Terminierung von<br />
TESen (<strong>und</strong> damit auch von Programmen) nachweisen. Man muss lediglich untersuchen, ob<br />
für alle definierenden Gleichungen die linke Seite jeweils größer als die rechte ist, vgl. (4.7).<br />
Es handelt sich hierbei nicht nur um ein hinreichendes, sondern sogar um ein notwendiges<br />
Kriterium für die Terminierung.<br />
Satz 4.3.4 (Terminierungskriterium mit Reduktionsrelationen [MN70])<br />
Ein TES R terminiert genau dann, wenn es eine Reduktionsrelation ≻ gibt, so dass l ≻ r<br />
für alle Regeln l → r ∈ R gilt.<br />
Beweis.<br />
“⇐”: Sei ≻ eine Reduktionsrelation, so dass l ≻ r für alle Regeln l → r ∈ R gilt. Dann<br />
folgt für alle Terme mit s → R t auch s ≻ t. Der Gr<strong>und</strong> ist, dass s → R t bedeutet, dass<br />
es eine Stelle π in s, eine Substitution σ <strong>und</strong> eine Regel l → r gibt mit s| π = lσ <strong>und</strong><br />
t = s[rσ] π . Aufgr<strong>und</strong> der Stabilität von ≻ gilt lσ ≻ rσ <strong>und</strong> aufgr<strong>und</strong> der Monotonie<br />
gilt auch s = s[lσ] π ≻ s[rσ] π = t.<br />
Da → R demnach eine Teilrelation von ≻ ist, folgt aus der F<strong>und</strong>iertheit von ≻ daher<br />
auch die F<strong>und</strong>iertheit von → R .<br />
“⇒”: Sei ≻ die Relation → R . Dann gilt offensichtlich l ≻ r für alle Regeln l → r ∈ R. Die<br />
Stabilität <strong>und</strong> Monotonie von ≻ folgt aus Lemma 3.1.13 <strong>und</strong> die F<strong>und</strong>iertheit von ≻<br />
folgt aus der Terminierung von R.<br />
✷<br />
Sofern man eine zugr<strong>und</strong>e liegende Reduktionsrelation ≻ verwendet, bei der für alle<br />
Terme s,t entscheidbar ist, ob s ≻ t gilt, ergibt sich mit Hilfe von Satz 4.3.4 sofort ein<br />
Verfahren für automatische Terminierungsbeweise. Das Terminierungsverfahren untersucht<br />
einfach, ob l ≻ r für alle Regeln l → r des TES gilt. In diesem Fall ist die Terminierung<br />
des TES bewiesen. Obwohl Satz 4.3.4 ja ein hinreichendes <strong>und</strong> notwendiges Terminierungskriterium<br />
darstellt, ist dies aber dennoch ein unvollständiges Beweisverfahren. Gibt es also<br />
eine Regel mit l ⊁ r, so kann unser Verfahren keine Aussage über die Terminierung des<br />
TES machen. Der Gr<strong>und</strong> ist, dass es ja eine andere Reduktionsrelation ≻ ′ geben könnte,<br />
bei der tatsächlich l ≻ ′ r für alle Regeln gilt.<br />
Ein Algorithmus zur Entscheidung von s ≻ emb t für alle Terme s <strong>und</strong> t lässt sich leicht<br />
angeben, da die beiden Bedingungen von Def. 4.3.1 wie in einem rekursiven Programm<br />
2 Eine Relation → heißt antisymmetrisch gdw. aus s → t <strong>und</strong> t → s folgt, dass s = t gilt.<br />
3 Eine Relation → heißt asymmetrisch gdw. es keine Objekte s <strong>und</strong> t mit s → t <strong>und</strong> t → s gibt.