20.01.2015 Aufrufe

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 ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Beweis. Um NF(R) ⊆ T(Σ c ) zu zeigen, nehmen wir an, dass es eine Gr<strong>und</strong>normalform q<br />

gibt, die ein definiertes Funktionssymbol enthält. Dann existieren auch “innerste” Vorkommen<br />

von definierten Funktionssymbolen, d.h., es existiert ein π ∈ Occ(q), so dass<br />

q| π = f(t 1 ,...,t n ) für f ∈ Σ d <strong>und</strong> t 1 ,...,t n ∈ T (Σ c ). Nach Def. 6.3.6 (b) ist dann q| π<br />

<strong>und</strong> damit auch q aber keine Normalform.<br />

Ebenso gilt auch NF(R) ⊇ T(Σ c ). Der Gr<strong>und</strong> ist, dass alle Konstruktorgr<strong>und</strong>terme<br />

Normalformen sind, da jede linke Seite einer Regel aus R ein definiertes Funktionssymbol<br />

enthält (wegen Def. 6.3.6 (a)).<br />

✷<br />

Zur Automatisierung der Konsistenzbeweismethode verwenden wir den Vervollständigungsalgorithmus,<br />

um ein zu E ∪{s ≡ t} äquivalentes <strong>und</strong> konvergentes TES zu konstruieren.Hierbei<br />

überprüfenwir,obwährendderVervollständigung neueGleichungen entstehen,<br />

die verschiedene Konstruktorgr<strong>und</strong>terme gleich machen würden. In diesem Fall hätten wir<br />

gezeigt, dass die Gleichung s ≡ t nicht induktiv gültig ist. Falls es uns hingegen gelingt,<br />

ein zu E ∪ {s ≡ t} äquivalentes <strong>und</strong> konvergentes TES zu konstruieren, das keine verschiedenen<br />

Konstruktorgr<strong>und</strong>terme gleich macht, so ist die induktive Gültigkeit von s ≡ t<br />

bewiesen. Wir gehen hierbei davon aus, dass das zu E äquivalente konvergente TES R dem<br />

Definitionsprinzip genügt. Bei der Konstruktion des TES, das zu E ∪ {s ≡ t} äquivalent<br />

<strong>und</strong> konvergent sein soll, starten wir den verbesserten Vervollständigungsalgorithmus nun<br />

nicht mit (E ∪ {s ≡ t},∅), sondern mit ({s ≡ t},R). Dies ist nach wie vor korrekt, da<br />

↔ ∗ E∪{s≡t} =↔∗ {s≡t}∪R gilt.<br />

Um das Vervollständigungsverfahren erfolgreich für Induktionsbeweise verwenden zu<br />

können, wird es geringfügig modifiziert <strong>und</strong> erweitert. Bei diesem modifizierten Verfahren<br />

kann sich dann während der Vervollständigung die Menge der gültigen Gleichungen<br />

verändern (<strong>und</strong>zwar vergrößern), abersofernE∪{s ≡ t}konsistent ist (d.h., ausE∪{s ≡ t}<br />

folgen keine Gleichheiten zwischen verschiedenen Konstruktorgr<strong>und</strong>termen), so bleibt die<br />

Menge der gültigen Gr<strong>und</strong>gleichungen (d.h., Gleichungen zwischen Gr<strong>und</strong>termen) gleich.<br />

Wenn man also im Vervollständigungsverfahren von (E,R) zu (E ′ ,R ′ ) kommt <strong>und</strong> E ∪R<br />

konsistent ist, sosinddieRelationen↔ ∗ E∪R <strong>und</strong>↔∗ E ′ ∪R ′ aufGr<strong>und</strong>termen gleich. DieGleichheit<br />

von ↔ ∗ E∪R <strong>und</strong> ↔∗ E ′ ∪R ′ auf Gr<strong>und</strong>termen ist für Induktionsbeweise ausreichend: Wie<br />

Satz 6.3.5 zeigt, genügt es, ein konvergentes TES zu konstruieren, das zu E ∪{s ≡ t} auf<br />

Gr<strong>und</strong>termen äquivalent ist <strong>und</strong> zu zeigen, dass dieses TES keine verschiedenen Konstruktorgr<strong>und</strong>terme<br />

zusammenführt.<br />

In dem modifizierten Vervollständigungsverfahren wird sichergestellt, dass das durch<br />

die Vervollständigung entstehende TES konsistent bleibt. Hierzu wird die Orientierung von<br />

Gleichungen in Regeln nur noch dann erlaubt, wenn die neuen Regeln außen ein definiertes<br />

Funktionssymbol haben.<br />

Um Inkonsistenzen zu entdecken, wird der Vervollständigungsalgorithmus außerdem um<br />

zwei Regeln ergänzt. Sie behandeln den Fall, dass während der Vervollständigung eine Gleichung<br />

entsteht, bei der kein äußeres Funktionssymbol definiert ist. Hierbei gibt es die folgenden<br />

Möglichkeiten: Falls eine Gleichung der Form c 1 (...) ≡ c 2 (...), c 1 (...) ≡ x oder<br />

x ≡ c 2 (...) für Konstruktoren c 1 ≠ c 2 entsteht, so folgt daraus, dass verschiedene Konstruktorgr<strong>und</strong>terme<br />

gleich sein müssen <strong>und</strong> wir haben daher eine Inkonsistenz entdeckt.<br />

Die Aussage s ≡ t ist also nicht induktiv gültig <strong>und</strong> wir brechen mit “False” ab.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!