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

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

• In Schritt 5 vereinigt man alle nicht-disjunkten Mengen in K <strong>und</strong> erhält somit K =<br />

{{i,j,f(j),f(i),g(k),g(l),m},{k,l},{f(m)}}. Da K ≠ L gilt, wird in Schritt 6 L auf<br />

diese Menge gesetzt <strong>und</strong> man geht zurück zu Schritt 4.<br />

• Man setzt nun K wieder auf L <strong>und</strong> erweitert es (neben einelementigen Mengen) um<br />

{f(i),f(j)},{f(i),f(m)},{f(j),f(m)},{g(k),g(l)}. In Schritt 5 vereinigt man alle nichtdisjunkten<br />

Mengen in K <strong>und</strong> erhält somit K = {{i,j,f(j),f(i),g(k),g(l),m,f(m)},<br />

{k,l}}. Da K ≠ L gilt, wird in Schritt 6 L auf diese Menge gesetzt <strong>und</strong> man geht<br />

zurück zu Schritt 4.<br />

• Das nochmalige Durchlaufen von Schritt 4 <strong>und</strong> 5 führt dazu, dass K <strong>und</strong> L identisch<br />

sind. Man erreicht somit Schritt 7. Da es eine Menge {i,j,f(j),f(i),g(k),g(l),m,f(m)}<br />

in K gibt, die sowohl f(m) als auch g(k) enthält, gibt der Algorithmus “True” aus.<br />

Das in diesem Abschnitt vorgestellte Verfahren ist allerdings tatsächlich nur für Gr<strong>und</strong>identitätenverwendbar.<br />

Bei E = {f(f(x)) ≡ g(x)}giltz.B. f(g(a)) ≡ E g(f(a)),aberdies lässt<br />

sich nur mit Hilfe der Gleichungen f(g(a)) ≡ E f(f(f(a))) <strong>und</strong> f(f(f(a))) ≡ g(f(a)) <strong>und</strong> der<br />

Transitivitätzeigen.DerTermf(f(f(a)))istabernichtinSubterms(E)∪Subterms(f(g(a)))∪<br />

Subterms(g(f(a))) enthalten.<br />

3.3 Termersetzungssysteme<br />

Im vorigen Abschnitt haben wir gesehen, wie man das Wortproblem für Gr<strong>und</strong>identitäten<br />

entscheiden kann, d.h. für Gleichungssysteme E, die keine Variablen enthalten. In vielen<br />

Anwendungen treten aber sowohl in den Axiomen als auch in den zu untersuchenden Gleichungen<br />

Variablen auf. Man geht hierbei davon aus, dass die Axiome für alle Belegungen<br />

der darin vorkommenden Variablen gelten <strong>und</strong> man will wissen, ob die zu untersuchende<br />

Gleichung für alle Belegungen der darin vorkommenden Variablen aus den Axiomen folgt.<br />

Wie in Abschnitt 3.1 gezeigt wurde, kann man dieses Wortproblem mit Hilfe der Beweisrelation<br />

↔ ∗ E untersuchen. Das Problem dabei ist aber, dass man nicht weiß, welche<br />

Gleichung an welcher Stelle angewendet werden soll, so dass sich ein in der Praxis nicht<br />

tolerierbarer <strong>und</strong> ggf. unendlicher Suchaufwand ergibt.<br />

Will man den Aufwand des Suchbaumverfahrens aus Abschnitt 3.1 senken, so müssen<br />

die Indeterminismen der Beweisrelation so verringert werden, dass man schließlich den Verzweigungsgrad<br />

1 erhält. Der erste Schritt besteht darin, dass die Richtung der Gleichungen<br />

des Gleichungssystems festgelegt wird. Damit kann man bei Teiltermersetzungen die Gleichungen<br />

nur noch in eine Richtung anwenden. Wir schreiben daher nun einen Pfeil “→”<br />

anstelle des Gleichheitszeichens “≡” <strong>und</strong> bezeichnen die gerichteten Gleichungen als Regeln.<br />

Dies führt zu dem gr<strong>und</strong>legenden Begriff des Termersetzungssystems.<br />

Definition 3.3.1 (Termersetzungssystem) Für l,r ∈ T (Σ,V) heißt ein Ausdruck<br />

l → r<br />

(Termersetzungs-)regel (über Σ <strong>und</strong> V), sofern<br />

• V(r) ⊆ V(l) <strong>und</strong>

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!