08.10.2013 Aufrufe

Download (1405Kb)

Download (1405Kb)

Download (1405Kb)

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.

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)

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!