09.08.2013 Views

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

6.2 Semantics of HRC<br />

6.2.1 Semantical Domain<br />

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

We assume a notion of time, given by a domain Time with a total order < on its instances.<br />

Whether time is discrete (i.e., N) or continuous (R + , the non-negative real numbers) does not<br />

matter for the general definitions in the following, whereas our more specific semantics of HRC<br />

introduced lateron assumes a continuous domain. An initial segment of the time domain is a<br />

downward-closed subset, i. e. a set T ⊆ Time satisfying t ∈ T ⇒ {t ′ ∈ Time|t ′ < t} ⊆ T .<br />

There is a set of ports P, where each port has a type with an associated domain of values.<br />

The universe of all values is V . We will assume all things being type correct and will not be<br />

concerned with details of types and values. Also, we simplify the interface concept of HRC in<br />

our presentation. We assume that each port contains just one flow, so that we can equate ports<br />

and flows, and just speak of ports.<br />

Given a set of ports P ⊆ P, a trace assigns, for any point in time, to each port a value of the<br />

port’s type. Thus, the set T (P) of all traces T over P is a subset of<br />

[Time → [P → V ]] .<br />

For discrete time domains, usually every function in the set above will be a trace, whereas<br />

with continous time and value domains, traces may be restricted e. g. to functions which are<br />

continuous almost everywhere (continuous but for a null set).<br />

In the following, whenever convenient we will freely apply decurrying, changing the argument<br />

order and currying when referring to traces. Thus, a trace may also be viewed as an<br />

element of [P → [Time → V ]].<br />

We denote by σ ↓P (resp., Σ ↓P) the restriction of a trace (resp., trace set) to a subset of its<br />

ports. Similarly, by σ ↓T we will denote its restriction to a subset T ⊆ Time.<br />

A Note on the Choice of the Semantical Domain Basing the semantical definitions on sets<br />

of (timed) traces is already some restriction. There are approaches to modeling which do not<br />

fit into this framework. It would be, however, very difficult to incorporate all these approaches<br />

in a general description, and it would result in a rather complex development. We will develop<br />

our theory for timed traces and leave it to the reader (or future versions of this document, if necessary)<br />

to perform the generalizations and modifications as appropriate for her/his semantical<br />

domain.<br />

One of the limitations of our approach concerns the synchronous nature of composition.<br />

This is not always adequate, for instance it excludes the elegant abstraction of [34] and related<br />

settings. It is, however, often possible to model asynchrony by synchrony, see e. g. [30].<br />

6.2.2 Properties of Trace Sets<br />

Traces do not distinguish between input and output, both are recorded in an equal manner.<br />

Operationally, the diference is important: A component should not be able to restrict the values<br />

on an inport, nor should its environment be able to influence the component’s outports. This<br />

is reflected in the trace sets we get as semantic interpretations of components in HRC, and the<br />

following definition formalizes the observation in a property of trace sets.<br />

Definition 6.2.1 (Receptiveness) Let Σ be a set of traces over a set of ports P, and let P ′ ⊆ P .<br />

142/ 156

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

Saved successfully!

Ooh no, something went wrong!