• No se han encontrado resultados

Matriz de perfil competitivo (MPC). 20

CAPÍTULO III. MARCO TEÓRICO

3.4 Herramientas para el análisis ambiental

3.4.3 Matriz de perfil competitivo (MPC). 20

BCCSP and BCCS2are two universal algebras, specific to the realm of process algebras where they play a fundamental role.

2The name of BCCSP was coined by van Glabbeek [vG90], abbreviating Basic CCS and CSP. Accordingly, BCCS abbreviates Basic CCS.

BCCSP is a common fragment of CCS and CSP for describing finite syn-chronization trees [Mil89a]. Its signature consists of the constant 0, the binary operator + , and unary prefix operators a , where a ranges over a nonempty set A of actions, called the alphabet, with typical elements a, b, c. In other words, the language is given by the following grammar:

t ::= 0 | at | t + t | x .

Intuitively, closed BCCSP terms, denoted by p, q, r, represent finite process behaviors, where 0 does not exhibit any behavior, p + q offers a choice between the behaviors of p and q, and ap executes action a to transform into p. This intuition is captured by the transition rules given in Tab. 2.2 (see [AFV01] for an extensive introduction). They give rise to A-labeled transitions between closed BCCSP terms, which are of the form (p, a, p), where p, p are closed terms and a ∈ A. Henceforth, as usual, we shall use the suggestive notation p −−→ pa in lieu of (p, a, p). A transition relation is a collection of A-labeled transitions. It is well-known that the transition relation −−→ is the one defined by structural induction over closed terms using the above rules.

ax−−→ xa

x1 a

−−→ y x1+ x2 a

−−→ y

x2 a

−−→ y x1+ x2 a

−−→ y

Table 2.2: SOS for BCCSP

We also assume a countably infinite set V of variables; x, y, z denote elements of V , and X, Y, Z denote finite subsets of V . Open BCCSP terms, which may contain variables from V , are denoted by t, u, v, w. Following the convention of the previous section, we use T(BCCSP) and (BCCSP) to denote the collection of closed and open BCCSP terms respectively.

In order to study weak semantics, BCCSP can be extended with the unary prefix operator τ , which constitutes BCCS. In other words, its signature in-cludes, in addition to BCCSP, the unary prefix operator τ and the language is thus given by the following grammar:

t ::= 0 | αt | t + t | x .

Closed BCCS terms are ranged over by p, q, r as well and share the same intuition as BCCSP terms. In particular, τ p executes action τ to transform into p. The operational semantics can be specified smoothly in Tab. 2.3, which gives rise to Aτ-labeled transitions between closed BCCS terms. Accordingly, we use T(BCCS) and (BCCS) to denote the collection of closed and open BCCS terms respectively.

It is technically convenient to extend the operational semantics to open BCCS(P) terms. There are two options: either (1) we do not include addi-tional rules for variables, which effectively means that they do not exhibit any

αx−−→ xα

x1 α

−−→ y x1+ x2 α

−−→ y

x2 α

−−→ y x1+ x2 α

−−→ y

Table 2.3: SOS for BCCS

behavior; or (2) we treat each variable occurrence x in a term as if it were a subterm x0 with x a concrete action. For open BCCSP (resp. BCCS) terms t and u, and a preorder - (or equivalence ≃) on closed BCCSP (resp. BCCS) terms, we define t - u (or t ≃ u) if ρ(t) - ρ(u) (resp. ρ(t) ≃ ρ(u)) for all closed substitutions ρ. Note that one can alternatively define - (or ≃) directly over open terms via (2), and it is not very difficult to verify that for BCCS(P), both of these two ways yield the same preorder (or equivalence) for each semantics, unless the underlying alphabet A = ∅, which is not interesting.

A context C[·] of BCCSP (resp. BCCS) is a closed BCCSP (resp. BCCS) term with exactly one occurrence of a hole [·] in it. For every context C[·] and closed term p, we write C[p] for the closed term that results by placing p in the hole in C[·].

The preorders - in the linear time – branching time spectrum I are all precongruences with respect to BCCSP, meaning that p1 - q1 and p2 - q2

imply p1+ p2 - q1+ q2 and ap1 -aq1 for a ∈ A. Recall that the kernel of a preorder - is an equivalence ≃=- ∩ -−1. Likewise, the equivalences in the spectrum are all congruences with respect to BCCSP.

Similarly, 2 for 2 ∈ {WT, WCT, WF, WIF} are precongruences with re-spect to BCCS. And the corresponding equivalences ≃2 are congruences for BCCS.

Remark 2.1.10 The requirements (2) in Def. 2.1.6 are called root conditions, which are imposed for weak semantics routinely to make sure that the preorder under consideration is a precongruence (see [Mil89a]). Moreover, the require-ment (3) CT (s) = CT (s) for the weak impossible futures preorder is indispens-able because otherwise that definition would fail to yield a precongruence for BCCS. For instance, in that case we would have τ a0 WIFτ a0 + b0. However, clearly c(τ a0) 6WIFc(τ a0 + b0).

The core axioms A1-4 [Mil89a] for BCCSP given in Tab. 2.4 are ω-complete, and sound and ground-complete modulo bisimulation equivalence. Since every equivalence in the linear time – branching time spectrum I (see Fig. 2.1) in-cludes bisimulation equivalence, and each weak semantics is coarser than its concrete counterpart, it follows that the axioms A1-4 are sound modulo every equivalence in the spectrum. Furthermore, each of the axioms A1-4 induces two inequations, obtained by replacing ≈ by 4 or <, that are both sound modulo every preorder in the linear time – branching time spectrum. We write t = u if terms t and u are equal modulo A1-4, namely, the associativity, commutativity

A1 x + y ≈ y + x A2 (x + y) + z ≈ x + (y + z)

A3 x + x ≈ x

A4 x + 0 ≈ x

Table 2.4: Core axioms A1-4

and idempotence of +, and the absorption of 0 summands. For every preorder -and equivalence ≃ in the linear time – branching time spectrum, soundness of the axioms A1-4 ensures that whenever we write t = u, then also t - u and t ≃ u. Furthermore, we will (tacitly) assume that the axioms A1-4 above are included in every axiomatization E considered in what follows, so that from t = u we may always conclude t 4 u and t ≈ u.

Notions on process terms. The depth of a BCCSP term t, denoted by depth(t), is the length of the longest trace that t can exhibit, i.e.,

depth(t) = max{k | ∃a1· · · ak, t.t−−−−−→ ta1···ak } .

Alternatively it is defined inductively as follows: depth(0) = depth(x) = 0;

depth(at) = 1 + depth(t); and depth(t + u) = max{depth(t), depth(u)}.

Let k ≥ 0. If t−−−−−→ ta1···ak for some sequence of actions a1· · · ak, and t has the variable x as a summand, then we say that x occurs in t at depth k. The set of variables with an occurrence in t at depth k will be denoted by vark(t); the set of all variables with an occurrence in t will be denoted by var (t). Similarly, if t −−−−−→ ta1···ak for some sequence of actions a1· · · ak, and the action a is an element of I(t), then we say that a occurs in t at depth k. The set of actions with an occurrence in t at depth k will be denoted by actk(t).

For BCCS terms, t −−→ denotes that there is a term u with tα −−→ u, andα likewise t ⇒−−→ denotes that there are a terms u, v with t ⇒ uα −−→ v. Theα depth of a term t, denoted by depth(t), is the length of the longest trace of that t can exhibit, not counting τ -transitions. It is defined inductively as follows:

depth(0) = depth(x) = 0; depth(at) = 1 + depth(t); depth(τ t) = depth(t); and depth(t + u) = max{depth(t), depth(u)}.

Given any equation t ≈ u or inequation t 4 u, we define its depth as max{depth(t), depth(u)}.

In general, let {t1, . . . , tn} be a finite set of terms; we use summation P{t1, . . . , tn} to denote t1+ · · · + tn, adopting the convention that the sum-mation of the empty set denotes 0. A term t is called a prefix if t = αt for some α ∈ Aτ and for some term t. We write αnt to denote the term obtained from t by prefixing it n times with α, i.e., α0t = t and αn+1t = α(αnt). When writing terms, we adopt as binding convention that + and summation bind weaker than α . With abuse of notation, we often let a finite set of variables

X denote the termP

x∈Xx. Note that, with the above notational conventions, for every BCCSP term t there always exist a unique finite family of actions {ai | i ∈ I} ⊆ A, terms {ti | i ∈ I}, and a finite set of variables X ⊆ V such that

t =X

i∈I

aiti+ X ,

while for every BCCS term t can be further written as t =X

i∈I

aiti+X

j∈J

τ tj+ X ,

with a finite family of terms {tj | j ∈ J}. A term t is called a summand of u (notation: t ⋐ u) if it is a variable or a prefix and u = u + t.

Documento similar