CCC Processes 107
6.1. CCC Processes 107
is not equal to ′ stop, whenever P −−−→ P is a valid transition, then so is the transition
λ,w
P+Q ′ −−−−→ P + Q. The other rules are interpreted in a similar fashion. Each transition in an M LTS has two labels: the rate of the corresponding transition
λ, + l .w
and an additional label. The additional label is necessary to allow us to differentiate transitions that otherwise would be indistinguishable, namely to explicitly produce different transitions if there exist different derivations with the same rate between two processes. For instance, the process (λ) + (µ) has two transitions to process stop, one with rate λ and the other with rate µ. In this case, the additional label is not required. However, in the case of a process of the form (λ) + (λ), the additional label is necessary to uphold that there are indeed two different derivations for rate λ, namely the transitions
λ, + (λ) + (λ) r −−−→ stop and (λ) + (λ) −−−→ stop.
λ, + l
This technical means to overcome the restriction of multiple transitions with the same rate (or in other contexts, action or label) between any two processes was first de- scribed in [BC88], and has been widely used, for instance in [HR94].
In addition to the SOS derivation rules above, a structural congruence rule, which is an identity related to rule (5), is required
(6.1) This rule defines the identity of a parallel composition of two stop processes. The
stop def kstop = stop.
rule cannot be deduced from the SOS derivation rules, because it is a state-related— instead of a transition-related—rule, and it is essential for the second-stage semantics. This notion of equality between process definitions is called structural congruence, for instance, in π-calculus [Mil99]. Two processes are structurally congruent, if they are identical up to a structure.
Given a process P ∈ L, the SOS derivation rules enable us to derive all transitions that originate from P . This is achieved by repeated applications of the rules. Perform-
ing the derivation in depth-first manner, we obtain a path. Formally, a finite path M σ of length n ∈Z ≥0 in an M LTS M is an alternating sequence of processes and labels
P 0 ; (λ 1 ,w 1 ); P 1 ; (λ 2 ,w 2 ); P 2 ; ···;P n −1 ; (λ n ,w n ); P n ,
i −1 −−−−→ P i . Note that σ =P 0 is a path of length 0. A process P ′
such that, for all M 1 ≤ i ≤ n, it holds that P
λ i ,w i
∈ L is reachable from P ∈ L, if there is n ∈ Z M ≥0 and a path σ of length n such that P = P 0 and P ′ =P n . If process P ′ is reachable from process P
we write P= ⇒P ′ . Now, the derivatives of P are all those processes in L that are reachable from P . We
refer to the set of these processes as Reach(P ), i.e.,
Reach(P ) = ′ {P ∈ L|P =⇒ P }.
Example 6.4. Consider a process P ∈ L defined as follows
P=P 1 .P 2 kP 3 , where P 1 = (λ 1 ) + (λ 1 ).(λ 2 ), P 2 = (λ 3 ), and P 3 = (λ 4 ).(λ 5 ).
108 Chapter 6. A Simple Stochastic Calculus
Process P is a composition of processes P 1 , P 2 and P 3 . Figure 6.2 depicts the semantics of these processes in M LTS s. Using the SOS derivation rules, process P can be obtained by composing the three previously depicted processes. According the precedence rules, process
P 1 .P 2 is evaluated first, followed by the evaluation of P 1 .P 2 kP 3 . The resulting M LTS semantics of process P is depicted in Figure 6.3.
λ 1 , + l P 1 stop
P 2 stop
Figure 6.2: The M LTS s of (a) P 1 , (b) P 2 and (c) P 3
λ 3 , k l P 1 .P 2 kP 3
P 2 kP 3
stop kP 3
((λ 1 ) + (λ 2 )).P 2 kP 3 λ 4 , k r
λ 3 , k l P 1 .P 2 k(λ 5 )
P 2 k(λ 5 )
stop k(λ 5 )
((λ 1 ) + (λ 2 )).P 2 k(λ 5 ) λ 5 , k r
λ 3 , k l P 1 .P 2 kstop
P 2 kstop
stop
((λ 1 ) + (λ 2 )).P 2 kstop Figure 6.3: The M LTS of P 1 .P 2 kP 3
Both Figure 6.2 and Figure 6.3 depict only the set of the reachable processes of each process. For instance, process P 1 can reach three processes, namely Reach(P 1 )=