4.3 BPA
∗0,1is less expressive than PA
∗0,1A basic strongly connected component can only do non-exiting-transitions or terminate. Since every non-basic non-trivial strongly connected component T equals a basic strongly connected component B sequentially composed with some other processes P0, P1, . . . Pn to T = ((BP0) . . . Pn), whenever B↓ holds, the processes P0, P1, . . . Pn might do a transition. Clearly, these transitions are only reachable from states where the B terminates. More formally:
Lemma 4.3.1. For every pair of processes S, S0 in a non-trivial strongly con-nected component T in BPA∗0,1, if both S and S0have some live exit transitions, S and S0 have the same live exit transitions.
Proof. It follows from Lemma 4.2.3 that every non-trivial strongly connected component is shaped like ((T R1) · · · )Rn, where T is a basic-scc. By Defini-tion 2.4.6, only the exiting-states in T are viable candidates to have live exit transitions in T . We do induction over the syntactic shape of non-trivial strongly connected components, where the induction hypothesis is that all exiting-states have the same set of live exit transitions, and the exiting-states are either all open or all closed.
If T is basic, then T has no live exit transitions, since every transition from a process PiQ∗ ∈ {P0Q∗, . . . , PnQ∗} goes to a state PjQ∗ with PjQ∗ −→+ 1Q∗ unless PjQ∗ is dead (Definition 2.4.5), and the only possible transitions are shaped 1Q∗−→+PiQ∗.
If T is not basic, then there is a term P , such that T = T0P . We know that all exiting-states S ∈ T0 also have the same set of live exit transitions E, due to the induction hypothesis. If S is open in T0, then the set of live exit transitions of SP ∈ T equals E ∪ {(α, P0) | P −→ Pα 0}. Also, if P ↓, then all exiting-states in T are open, and if ¬P ↓, then all exiting-states in T are closed. If ¬S↓, then the set of live exit transitions of SP ∈ T equals E, and all exiting-states in T are closed.
If a process P contains a non-trivial strongly connected component, then that non-trivial strongly connected component must adhere to the property from Lemma 4.3.1. However a process Q might exist that does not contain any non-trivial strongly connected component, but that is bisimilar to P with a non-trivial strongly connected component. If this is the case, the property from Lemma 4.3.1 cannot be used to prove something about expressivity of BPA∗0,1. We introduce the notion of bisimilar sets of processes, and thus bisimilar strongly connected components.
Definition 4.3.2. Two sets of processes T and U are bisimilar, iff for every process P ∈ T , there is a Q ∈ U such that P ↔ Q, and for every process Q ∈ U , there is a process P ∈ T such that P ↔ Q.
Before we prove that such a Q without any non-trivial strongly connected com-ponent does not exist, we first state the following proposition:
Proposition 4.3.3. For every finite BPA∗0,1 term X there are only a finite number of terms reachable from X.
4.3 BPA∗0,1 is less expressive than PA∗0,1 21
Proof. Straightforward by structural induction.
Lemma 4.3.4. For two bisimilar terms P and Q, if P contains a strongly connected component T , then Q contains a strongly connected component U , with T ↔ U .
Proof. Assume that Q does not contain a strongly connected component bisim-ilar with T . For every S, S0 ∈ T and integer N , there exists some n ≥ N with S −→nS0. As Q is bisimilar with P , there are some R ↔ S and R0↔ S0, not in any strongly connected component bisimilar to T , such that R −→nR0. Due to Proposition 4.3.3 a sufficiently large N exists, such that R −→n−k R0 −→ Rk 0, therefore R0 is in a strongly connected component and bisimilar to S0 ∈ T therefore R0∈ U for some U ↔ T .
This is enough groundwork to prove that some processes cannot be expressed in BPA∗0,1. We will prove that one of those processes can be expressed in PA∗0,1 in Theorem 4.3.5.
Theorem 4.3.5. BPA∗0,1 is less expressive than PA∗0,1.
Proof. From Lemma 4.3.1 follows that no two processes in the same non-trivial strongly connected component in BPA∗0,1 have different sets of exit transitions, and Figure 4.1 shows an example of a non-trivial strongly connected component in PA∗0,1 that violates that property. Namely {1, 2} is a non-trivial strongly connected component, and 1 has the exit transition (a, 3) while 3 has the exit transition (a, 4). We may apply Lemma 4.3.4, and then conclude that there is nothing bisimilar to Figure 4.1 in BPA∗0,1.
a a
a
a
a a
1
2
3
4
Figure 4.1: Counterexample (aa1)∗k a1 We can easily modify the proof to prove BPA∗0≺ PA∗0. Corollary 4.3.6. BPA∗0is less expressive than PA∗0.
Proof. As (aa1)∗ k a1 has no bisimilar term in PA∗0, as it contains the unary Kleene star. We modify the term to (aa)∗a k a. Then the essential part for the counterexample remains the same. As there is no BPA∗0,1term that can express (aa)∗a k a and BPA∗0≺ BPA∗0,1, there is no bisimilar term in BPA∗0.
Chapter 5
Relative Expressivity of PA ∗ 0,1 and ACP ∗ 1
In this chapter, we present a process in ACP∗1 that cannot be expressed in PA∗0,1. In order to do this, we define the operator counter for PA∗0,1 by ex-tending the operator counter for BPA∗0,1 such that it encompasses the parallel composition. The operator counter in PA∗0,1 is also a non-increasing function over the derivation of terms. The operator counter will be used to derive the structure of non-trivial strongly connected components.
Contrary to the previous chapter, we will not first derive a general property regarding the structure of the non-trivial strongly connected components. In-stead, we introduce the counterexample as seen in Figure 5.1 first, and then prove directly that it cannot be expressed in PA∗0,1as every term that might ex-press X must contain a non-trivial strongly connected component, but no term in PA∗0,1exists that may express that non-trivial strongly connected component.
S0,0 S1,0 R2,0
S1,0 S1,1 R2,1
R2,0 R2,1 R2,2
a a
a a
a a
a a a a a a
c c c
b
b
b d
Figure 5.1: Counterexample (aa1)∗b1 k (aa1)∗c1, where γ(b, c) = d
24 5.1 Operator counter
5.1 Operator counter
The intuition behind the parallel operator counter is perhaps less obvious than for the other operators, but if we have a process P k Q there is no way to get rid of the parallel operator. For every other operator ⊕, we need to add a rule for the case that a process equals P k Q, that rule is equal for every operator:
OC⊕(P k Q) = 0. The proof of non-increasingness of this rule is trivial, since for every action of P k Q, rule 13 or rule 14 is the conclusion, and therefore no other operator will ever be the main operator.
Definition 5.1.1. The parallel operator counter function OCk of a term is inductively defined below.
1. OCk(0) = 0 2. OCk(1) = 0
3. OCk(P · Q) = OCk(Q)
4. OCk(P + Q) = max(OCk(P ), OCk(Q)) 5. OCk(a.P ) = OCk(P )
6. OCk(P∗) = 0 7. OCk(P k Q) = 1
Lemma 5.1.2. If P −→ R, then OCα k(P ) ≥ OCk(R).
Proof. We do structural induction on P and therefore distinguish cases accord-ing to the syntactic form of P .
1. If P = 0 or P = 1, then P −→ R is not possible, and the claim automat-α ically holds
2. If P = a.P0, then only a.P0−→ Pa 0is possible. According to the definition OCk(P ) = OCk(P0) = OCk(R).
3. If P = P0∗, then R = P00· P0∗, and by definition OCk(P0∗) = 0 = OCk(P00· P0∗).
4. If P = P0+ P00, then, without loss of generality, P0−→ R. By inductionα hypothesis OCk(P0) ≥ OCk(R), so OCk(P ) = max(OCk(P0), OCk(P00)) ≥ OCk(R).
5. If P = P0· P00, then we distinguish two cases. We apply operational rule 7, then R = P000 · P00, and OCk(P ) = OCk(P00) = OCk(R). Or we apply operational rule 8, then P00 −→ R, by induction hypothesisα OCk(P00) ≥ OCk(R) and OCk(P ) = OCk(P00) by definition.
6. If P = P0 k P00, then, without loss of generality, P0k P00−→ Pα 000k P00= R. OCk(R) = 1 = OCk(P ).
5.2 Syntactic shape of strongly connected components 25
Corollary 5.1.3. If P −→∗Q, then OCk(P ) ≥ OCk(Q).
Proof. The corollary follows by induction over the length of P −→∗ Q using Lemma 5.1.2.
Corollary 5.1.4. For no operator ⊕ ∈ {a., +, ·,∗} is there a transition P−→ Qα such that OC⊕(P ) < OC⊕(Q).
Proof. This follows directly from Corollary 5.1.3, and Corollaries 4.1.3, 4.1.6, 4.1.9 and 4.1.12 can easily be rewritten for PA∗0,1terms.
Corollary 5.1.5. There is no derivation such that P∗ −→+ P∗, P + Q −→+ P + Q or a.P −→+a.P in PA∗0,1.
Proof. This follows from Corollary 5.1.4, since the operator counter of P∗, P +Q and a.P are strictly larger than the operator counter of their respective residuals.
5.2 Syntactic shape of strongly connected com-ponents
Due to Corollary 5.1.5, we know that +, a., and∗cannot occur as the main oper-ators in a state in a non-trivial strongly connected component. Therefore every state in a non-trivial strongly connected component has parallel composition or sequential composition as the main operator.
Corollary 5.2.1. Every non-trivial strongly connected component T can be written T = {P0Q0, . . . , PnQn} or T = {P0k Q0, . . . , Pn k Qn}.
Proof. From Corollary 5.1.5, we know that every state in T is shaped either PiQi or Pik Qi. Due to the fact that OC·(P k Q) = 0, we conclude that if one state in T has the parallel composition as the main operator, then all states in T do.
Lemma 5.2.2. Every non-trivial strongly connected component T in PA∗0,1is either basic, or there is another non-trivial strongly connected component T0 with either T = T0P , T = T0 k U or T = U k T0, where P is an arbitrary process and U is a strongly connected component.
Proof. We can always write T = {P0Q0, . . . , PnQn} or T = {P0k Q0, . . . , Pn k Qn}, due to Corollary 5.2.1. As T is a strongly connected component, we require for all elements R, R0 of T that OC(R) = OC(R0) (Corollary 4.1.14).
In the case that T = {P0Q0, . . . , PnQn}, the exact same reasoning applies as in Lemma 4.2.3.
In the case that T = {P0 k Q0, . . . , Pn k Qn}, we know that for every i, j, Pi −→∗ Pj and Qi −→∗ Qj. In other words, T = U k U0, where U and U0 are strongly connected components. It suffices to prove that either U or U0 is non-trivial. Assume that both U and U0 are trivial. Then there are P ∈ U and Q ∈ U0, with P 6−→+ P and Q 6−→+Q. Take P0 and Q0 such that P −→ Pα 0