Download (1405Kb)
Download (1405Kb)
Download (1405Kb)
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
88 KAPITEL 5. DIE ς-SEMANTIKEN<br />
Lemma 5.14 Semantische Unifikation impliziert syntaktische Unifikation<br />
Seien p, p ′ ∈ TC(X) zwei lineare Pattern, die zueinander variablendisjunkt sind, d.h. es gilt Var(p)∩<br />
Var(p ′ ) = ∅.<br />
Sei t ∈ TC,ς und seien β : Var(p)→TC,ς und β ′ : Var(p ′ )→TC,ς zwei Variablenbelegungen. Es gelte<br />
Dann existieren zwei Substitutionen<br />
und eine Variablenbelegung<br />
so daß gilt:<br />
p[⊥/Var(p)] ✂ t p ′ [⊥/Var(p ′ )] ✂ t (1)<br />
[[p]] alg<br />
⊥ς,β = t = [[p′ ]] alg<br />
⊥ς,β ′<br />
σ : Var(p)→TC(Var(p) ˙∪ Var(p ′ ))<br />
σ ′<br />
: Var(p ′ )→TC(Var(p) ˙∪ Var(p ′ ))<br />
ˆβ : (Var(p) ˙∪ Var(p ′ ))→TC,ς,<br />
pσ = p ′ σ ′<br />
β(x) = [[xσ]] alg<br />
⊥ς, ˆ β<br />
β ′ (x) = [[xσ ′ ]] alg<br />
⊥ς, ˆ β<br />
Beweis:<br />
Parallele strukturelle Induktion über p und p ′ .<br />
Fall 1: p ∈ X oder p ′ ∈ X, o.B. d. A. sei p = x ∈ X.<br />
Man definiert<br />
und es gilt<br />
für alle x ∈ Var(p)<br />
für alle x ∈ Var(p ′ )<br />
σ := [p ′ /x]<br />
σ ′ := []<br />
ˆβ(x) := β ′ (x) für alle x ∈ Var(p) ˙∪ Var(p ′ )<br />
pσ = x[p ′ /x] = p ′ = p ′ [] = p ′ σ ′<br />
β(x) = [[p]] alg<br />
⊥ς, ˆ β = [[p′ ]] alg<br />
⊥ς, ˆ = [[xσ]]alg<br />
β ′ ⊥ς, ˆ = [[xσ]]alg<br />
β ′<br />
⊥ς, ˆ für alle x ∈ Var(p)<br />
β<br />
Fall 2: p = G(p1, . . .,pn) und p ′ /∈ X.<br />
Mit (1) folgt<br />
und<br />
Aus<br />
folgt<br />
β ′ (x) = β ′ (xσ ′ ) = [[xσ ′ ]] alg<br />
⊥ς, ˆ β ′ = [[xσ′ ]] alg<br />
⊥ς, ˆ β für alle x ∈ Var(p ′ )<br />
(2)<br />
t = G(t 1, . . .,t n) (3)<br />
∀i ∈ [n]. pi[⊥/Var(pi)] ✂ t i<br />
G([[p1]] alg<br />
⊥ς, ˆ alg<br />
, . . .,[[pn]]<br />
β ⊥ς, ˆ) = [[p]]alg<br />
β ⊥ς, ˆ (2) (3)<br />
= t = G(t1, . . .,t<br />
β<br />
n) (5)<br />
∀i ∈ [n]. [[pi]] alg<br />
⊥ς, ˆ β = t i<br />
(4)<br />
(6)