Architecture Modeling - SPES 2020
Architecture Modeling - SPES 2020
Architecture Modeling - SPES 2020
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