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.

246 Data Part <strong>of</strong> POOSL<br />

which have to be satisfied and which cannot be described in BNF. In this section we will<br />

informally 2 describe the context conditions with respect to a system Sys <strong>of</strong> data classes.<br />

The conditions are the following:<br />

(1) All class names in Sys are different.<br />

(2) All instance variable names in a class definition are different.<br />

(3) All method names <strong>of</strong> a class are different.<br />

(4) All parameter and local variable names in a method definition are different.<br />

(5) Every variable used in a method body is either an instance variable <strong>of</strong> the corresponding<br />

class, a method parameter, or a local method variable.<br />

(6) The class referred to by any new expression is contained in Sys.<br />

8.5 A Computational Semantics<br />

8.5.1 Informal Explanation<br />

A computational semantics is a special kind <strong>of</strong> operational semantics and is specified by<br />

a transition system together with a semantic function. A transition system is an ordered<br />

pair £ Conf where Conf is a set <strong>of</strong> configurations ¥ 3 £ and where denotes a transition<br />

relation, i.e. a binary relation on Conf. In general, a configuration is <strong>of</strong> the form S¥ I<br />

representing that some statement S is to be executed in the context <strong>of</strong> information I.<br />

(£ Transition relation ) describes how this execution takes place. The intuitive meaning<br />

<strong>of</strong> transition <br />

£ S¡ ¥ I¡ is that statement S with information I leads to statement S¡<br />

S¥ I<br />

I¡ with information in a single computation step (also called transition step).<br />

The transition relation is defined by a collection <strong>of</strong> inference rules (see also Subsection<br />

7.4.5). An inference rule is <strong>of</strong> the general form<br />

S1 ¥ I1 £<br />

<br />

I¡ S¡1 ¥¡ ¡ ¡ ¥ 1 ¥<br />

£ S¡ ¥ I¡ I S¥<br />

Sn ¥ In £<br />

S¡n ¥ I¡ n <br />

if condition<br />

A rule has zero or more premises and one conclusion. A rule tells us how we can deduce<br />

a new transition (the conclusion) from the old ones (the premises). A rule may have a<br />

condition which has to be fulfilled whenever the rule is to be applied.<br />

Rules without premises are called axioms. An axiom tells us what is considered to be a<br />

basic transition. Usually, the solid line is omitted when a rule is an axiom. So, an axiom<br />

has the general form<br />

<br />

I £ S¥<br />

2Context conditions can also be described in a formal way. See for instance the ’static semantics’ <strong>of</strong><br />

CRL [GP95].<br />

3Configurations are also called execution states, see Paragraph 6.6.3.6.<br />

S¡ ¥ I¡ if condition

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

Saved successfully!

Ooh no, something went wrong!