09.08.2013 Views

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

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.

<strong>Architecture</strong> <strong>Modeling</strong><br />

1. For σ ∈ Σ, the set Σ is called receptive on P ′ w.r.t. σ, if it is nonempty and for all initial<br />

segments T ⊆ Time,<br />

∀τ ∈ T (P). τ ↓T = σ ↓T ⇒ ∃σ ′ ∈ Σ. σ ′ ↓T = σ ↓T ∧σ ′ ↓ P ′= τ ↓ P ′<br />

2. The receptive kernel of Σ on P ′ is the largest receptive subset of Σ, if there is a receptive<br />

subset, or else the empty set.<br />

Lemma 6.2.2 (Receptiveness Properties) Let Σ be a set of traces over a set of ports P, and let<br />

P ′ ⊆ P .<br />

1. An arbitrary nonempty union of subsets of Σ which are receptive on P ′ is again receptive.<br />

Thus, the receptive kernel is always well defined.<br />

2. The intersection of two subsets of Σ which are receptive on P ′ need not be receptive.<br />

Proof:<br />

Ad 1: This follows from the existential nature of the defining clause (1. in Definition 6.2.1).<br />

Ad 2: Let us consider traces over one input and one output port, where each may take values<br />

in {0,1}. We take the following two trace sets which are receptive on the input port. In<br />

the first set, the output is always 0, in the second the output always equals the input. Both<br />

trace sets are obviously receptive because the input is not restricted. Their intersection is<br />

the set of traces where both output and input are always 0, which is not receptive on the<br />

input port, because there is no trace where the input is 1. 1 <br />

Receptiveness over a port set P ′ essentially says that the values of the ports in P ′ are not restricted<br />

– at any point in time there is a future behaviour for every possible future valuation of<br />

P ′ . This captures the intuition about direction of ports. The reader may note that also pathological<br />

cases like a component which guesses future outputs are excluded by requiring receptiveness<br />

on the inports. The potential non-receptiveness (Item 2 in the lemma) should be taken seriously.<br />

It is difficult to avoid inconsistencies in specifications, there are far more intricate cases than the<br />

simple counterexample used in the proof.<br />

As well as receptiveness, determinism can be expressed on the semantic level.<br />

Definition 6.2.3 (Deterministic Trace Set) Let Σ be a set of traces over a set of ports P, and<br />

let P ′ ⊆ P . Then Σ depends deterministically on P ′ if<br />

6.2.3 Semantical Definitions for HRC<br />

∀σ,σ ′ ∈ Σ. σ ↓ P ′= σ ′ ↓ P ′ ⇒ σ = σ ′ .<br />

For a component M, we denote its semantics by [[M]]. It is a set of traces over the interface of the<br />

component. We have already restricted ourselves to ports with just one flow. Service ports are<br />

not considered here either, they are assumed to be implemented by more primitive constructs<br />

(e. g. a protocol over directed ports). Furthermore, ports may only have direction in or out<br />

and not bidirectional. With these simplifications, we sketch the semantical domain for<br />

interpreting HRC and HRC state machines.<br />

1 An even simpler, yet maybe less instructive, example takes just two receptive sets with constant, different output,<br />

so that the intersection is empty.<br />

143/ 156

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

Saved successfully!

Ooh no, something went wrong!