08.10.2013 Aufrufe

Download (1405Kb)

Download (1405Kb)

Download (1405Kb)

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.

18 KAPITEL 2. GRUNDLAGEN<br />

Ist σ(y) = t für alle y ∈ Y , so schreiben wir auch<br />

σ = [t/Y ].<br />

Eine Substitution σ : Y →TΣ heißt Grundsubstitution.<br />

Ist Y, Z ⊆ X, so läßt sich eine Substitution σ : Y →TΣ(Z) kanonisch fortsetzen zu ¯σ : X→TΣ(X)<br />

mit<br />

¯σ(x) :=<br />

und weiter zu ˆσ : TΣ(X)→TΣ(X) mit<br />

<br />

σ(x) , falls y ∈ Y<br />

x , andernfalls<br />

ˆσ(x) := ¯σ(x) , x ∈ X<br />

ˆσ(f(t1, . . .,tn)) := f(ˆσ(t1), . . ., ˆσ(tn)).<br />

Wir schreiben immer nur σ für ¯σ und ˆσ. Außerdem schreiben wir die Applikation einer Substitution<br />

grundsätzlich in Präfixschreibweise; d. h. yσ anstelle von σ(y). Oft schreiben wir auch<br />

σ : X→TΣ(Z), obwohl die Substitution σ nur auf einer endlichen Teilmenge von X ungleich der<br />

Identität ist.<br />

Für alle Terme t ∈ TΣ(X) und Grundsubstitutionen σ : Y →TΣ mit Var(t) ⊆ Y gilt tσ ∈ TΣ. Für<br />

alle Terme t ∈ TΣ(X) und Substitutionen σ : Y →TΣ(Z) (Y, Z ⊆ X) ist tσ = tσ| Var(t) = tσ| Var(t)∩Y .<br />

tσ heißt Instanz des Terms t. Ist tσ ∈ TΣ, so heißt es Grundinstanz von t.<br />

Zwei Terme t, t ′ ∈ TΣ(X) heißen genau dann unifizierbar, wenn zwei Substitutionen σ, σ ′ :<br />

X→TΣ(X) mit tσ = t ′ σ ′ existieren. 5<br />

Eine Liste von positiven natürlichen Zahlen heißt Stelle. IN ∗ + ist somit die Menge aller Stellen.<br />

Die Menge der in einem Term t ∈ TΣ(X) vorkommenden Stellen (Occurences), Occ(t) ⊆<br />

IN ∗ +, ist die kleinste Menge mit<br />

• ε ∈ Occ(t) und<br />

• t = f(t1, . . .,tn), u ∈ Occ(ti), i ∈ [n] =⇒ i.u ∈ Occ(t).<br />

Der Teilterm von t ∈ TΣ(X) an der Stelle u ∈ Occ(t), t/u, ist gegeben durch<br />

t/ε := t<br />

f(t1, . . .,tn)/i.u := ti/u , i ∈ [n]<br />

Der durch das Einsetzen von t ∈ TΣ(X) an der Stelle u ∈ IN£+ in t ∈ TΣ(X) entstehende<br />

Term t[u ← t ′ ] ist definiert durch<br />

t[ε ← t ′ ] := t ′<br />

f(t1, . . .,tn)[i.u ← t ′ ] := f(t1, . . .,ti[u ← t ′ ], . . .,tn) , i ∈ [n]<br />

t[u ← t ′ ] := t , andernfalls, d. h. u /∈ Occ(t).<br />

Wir definieren zwei Halbordnungen für Stellen: Die Präfixordnung 〈IN ∗ +, ≤〉 ist gegeben durch<br />

u ≤ v :⇐⇒ ∃w ∈ IN ∗ +. u.w = v<br />

5 Anstelle der üblichen einen Substitution verwenden wir zwei: σ und σ ′ . t und t ′ können gemeinsame Variablen<br />

besitzen (Var(t) ∩ Var(t ′ ) = ∅), aber in unseren Anwendungen der Unifikation sind die Variablen in beiden Termen<br />

voneinander bedeutungsunabhängig.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!