23.08.2013 Views

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

312 Behaviour-Preserving Transformations<br />

NoComChange(BSpec e 1 ¥ BSpece 2 ¥ envs1 ¥ envs2¥ Sys p ¥ Sys¥ f ) states that channel renaming<br />

function f does not cause the introduction <strong>of</strong> communications between Bspec e 1 and BSpece 2<br />

when 6 is applied from left to right. It further states that f does not cause the loss <strong>of</strong><br />

communications between BSpec e 1 and BSpec e 2 when 6 is applied from right to left.<br />

Let BSpec e 1 ¥ envs1 ¥ Sys p ¥ Sys , BSpec e 2 ¥ envs2 ¥ Sys p ¥ Sys ¡ Conf p . Then<br />

NoComChange(BSpec e 1 ¥ BSpece 2 ¥ envs1 ¥ envs2¥ Sys p ¥ Sys¥ f ) if and only if for all l¥ l¡ ¡<br />

(1) BSpece 1 ¥ envs1¥ Sysp ¥ Sys £<br />

l¡<br />

(l¡ f (l) f ) implies l<br />

(2) Reset(BSpece <br />

1)¥ ¥ Sysp ¥ Sys £<br />

l¡ (l¡ f (l) f ) implies l .<br />

Here conf p £<br />

actions ¡ ¥<br />

p a1<br />

a1 an 1, ¡ ¥¡ conf<br />

l<br />

£ and BSpec e 2 ¥ envs2¥ Sys p ¥ Sys £<br />

l<br />

£ and Reset(BSpec e 2)¥<br />

£<br />

l<br />

denotes that for some n 1, some conf p<br />

1<br />

£ conf p<br />

a2<br />

£ ¡ ¡ an ¢ 1<br />

£ conf p<br />

n 1<br />

<br />

l ¢<br />

and £<br />

¥ Sys p ¥ Sys £<br />

l ¢<br />

and £<br />

1 ¥¡ ¡ ¡ ¥ conf p ¡ n Conf p , and some<br />

l<br />

conf £ p .<br />

According to 6 a channel renaming function distributes over parallel composition if the<br />

function does not cause the introduction <strong>of</strong> communications between the constituents<br />

<strong>of</strong> the composition. Vice versa, a channel renaming function can be factored out if it<br />

does not cause the loss <strong>of</strong> communications between the constituents <strong>of</strong> the composition.<br />

In general, it can be very difficult to check whether these transformation conditions are<br />

satisfied. Even worse, one can prove that predicate NoComChange is uncomputable.<br />

This means that in general it is undecidable whether the predicate is satisfied or not.<br />

Of course this is not satisfactory. Therefore we introduce a computable transformation<br />

condition NoComChange¡ by which NoComChange is implied. For a thorough discussion<br />

about conditional axioms (transformations) with uncomputable conditions we refer to<br />

[BBK87].<br />

Let BSpec e 1 , BSpece 2 ¡ B<strong>Specification</strong>se , Sys p ¡ <strong>Systems</strong> p and let f be a channel renaming<br />

function. Then NoComChange¡ (BSpec e 1 ¥ BSpece 2 ¥ Sysp ¥ f ) if and only if for all l a 1 ¡<br />

AASort(BSpec e 1 ¥ Sysp ) and l a 2 ¡ AASort(BSpece 2 ¥ Sysp ), f (l a 1) = f (l a 2) implies l a 1 = l a 2.<br />

The fact that NoComChange¡ is indeed stronger than NoComChange is stated in Proposition<br />

5.<br />

Proposition 5<br />

Let BSpec e 1 ¥ envs1 ¥ Sys p ¥ Sys , BSpec e 2 ¥ envs2 ¥ Sys p ¥ Sys ¡ Conf p . Then<br />

NoComChange¡ (BSpec e 1 ¥ BSpece 2 ¥ Sysp ¥ f ) implies<br />

NoComChange(BSpec e 1 ¥ BSpece 2 ¥ envs1 ¥ envs2¥ Sys p ¥ Sys¥ f ) ¨<br />

In many cases predicate NoComChange¡ suffices to verify that 6 may be applied. There<br />

exist however practical examples in which Transformation 6 is applicable but in which<br />

predicate NoComChange¡ is not satisfied. This problem typically occurs if instances<br />

communicate in a weakly distributed fashion (see Paragraph 6.4.4.1). Unfortunately,<br />

a complete solution to this problem does not exist (see also Section 10.6). Nevertheless,<br />

one could obtain a partial solution by the introduction <strong>of</strong> a computable predicate

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

Saved successfully!

Ooh no, something went wrong!