26.09.2013 Views

Transformation of Applicative Specifications into Imperative ...

Transformation of Applicative Specifications into Imperative ...

Transformation of Applicative Specifications into Imperative ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

7.5. EXAMPLE<br />

• s ′ init = [t ↦→ tinit] where tinit ∈ B that is t can be mapped to either<br />

true or false. This means that there are two models <strong>of</strong> I_SPEC only<br />

distinguishable by the initial value <strong>of</strong> the store.<br />

The semantics <strong>of</strong> the satisfaction relation is defined such that m ′ |=Σ<br />

I_SP EC.<br />

Then m ′′ = 〈m ′′ A , m′′ OP , s′′ init 〉 = Mod(σ)(m′ ) is calculated:<br />

• m ′′ A = Mod(σ)(m′ A ) = m′ A = [T ↦→ ValueBool] = [T ↦→ B]<br />

• for m ′′ OP<br />

the following holds:<br />

– dom m ′′ OP = dom m′ OP = {f}<br />

– m ′′ OP (f)(x)([ ]) ≡<br />

case m ′ OP (f)(Unit)([ t ↦→ x ]) <strong>of</strong><br />

(Unit, [ t ↦→ ∼ x ]) → (∼ x, [ ])<br />

end<br />

where the case ⊥ is left out because f is total. This means that<br />

m ′′ OP = [f ↦→ λx : B · ∼ x]<br />

• s ′′<br />

init = Mod(σ)(s′ init ) = s′ init \(dom V ′ \dom V ) = [t ↦→ tinit]\({t}\{}) =<br />

[t ↦→ tinit]\{t} = [ ]<br />

As can be seen<br />

This implies that<br />

m = m ′′ = Mod(σ)(m ′ )<br />

Mod(σ)(m ′ ) |=Σ e and m ′ |=Σ e ′<br />

where e ′ = Sen(σ)(e). This means that the satisfaction condition holds<br />

for the instance <strong>of</strong> a sentence and a model considered.<br />

In order to prove that it holds for the entire RSLI subset, similar considerations<br />

should be made for the entire RSLI subset, e.g. all sentences and<br />

all models. This can be obtained by basing the pro<strong>of</strong>s on the structure <strong>of</strong><br />

the sentences as done in [Lin04].<br />

69

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!