process algebra (2if45) expressiveness of bpa rec
DESCRIPTION
Process Algebra (2IF45) Expressiveness of BPA rec. Suzana Andova. Outline. How far can we go with recursive specifications in BPA rec (A)? How expressive is BPA rec (A)? If it is not expressive as we want can we do better? How?. Recursive specs vs. Transition systems. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/1.jpg)
Process Algebra (2IF45)
Expressiveness of BPArec
Suzana Andova
![Page 2: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/2.jpg)
2
Outline
• How far can we go with recursive specifications in BPArec(A)? How expressive is BPArec(A)?
• If it is not expressive as we want can we do better? How?
Process Algebra (2IF45)
![Page 3: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/3.jpg)
3
Recursive specs vs. Transition systems
• Every recursive specification in BPArec(A) has a solution that can be represented as an LTS
• For this purpose we use the SOS rules
• Sometimes we understand the process behaviour better from its LTS representation
![Page 4: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/4.jpg)
4
Recursive specs vs. Transition systems
• But sometimes a process LTS has infinitely many states or infinitely many transitions
a(i)i<10, b
i10, c
• Symbolic (graphical) representation of the specification but this is not an LTS
![Page 5: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/5.jpg)
5
Recursive specs vs. Transition systems
• LTSs are very simple but expressible language
• They can be finite or infinite,
• with countable or uncountable number of states or number of transitions
• The language defined with a given process algebra and its corresponding SOS semantics can specify a subset of LTSs
• A simple example: BPA(A) cannot be used to specify LTSs with time
![Page 6: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/6.jpg)
6
Recursive specs vs. Transition systems
Question: What sort LTSs are specifiable by recursive specifications in BPArec(A)?
![Page 7: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/7.jpg)
7
Recursive specs vs. Transition systems
Question: What sort LTSs are specifiable by recursive specifications in BPArec(A)?
1. LTSs with finite number of states and finite number of transitions and no loops closed BPA(A) terms
2. Can we specify LTSs with countable number of states or countable number of transitions?
![Page 8: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/8.jpg)
8
Recursive specs vs. Transition systems
2. Can we specify LTSs with countable number of states and countable number of transitions?
a aa a …l1: States x Act ↦ StatesStates = NatA = {a}l1(n,a) = n+1, n Nat
l2: States x Act ↦ StatesStates = [0,1]A = {a}l2(0,a) = r, r [0,1]
l3: States x Act ↦ StatesStates = {s}A = {a}l3(s,a) = s
a
3. Can we specify LTSs with uncountable number of states or uncountable number of transitions?
a
l2 is bisimilar to
![Page 9: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/9.jpg)
9
Expressivity of BPArec(A)
Question: What sort LTSs are specifiable by recursive specifications in BPArec(A)?
2. Can we specify any LTSs with countable number of states and transitions? YES! 3. Can we specify any LTSs with uncountable number of states or transitions? NO!
Theorem: Up to bisimulation, only LTSs with countable number of states and transitions, and only those are specifiable in BPArec(A).
![Page 10: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/10.jpg)
10
Expressivity of BPArec(A)
Example:
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
X = n1 a.a. … a.0
n
Is this a proper recursive specification in BPArec(A)? NO!
![Page 11: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/11.jpg)
11
Expressivity of BPArec(A)
Example: S0 = a.S11 + S01
S01 = a.S21 + S02
S02 = a.S31 + S03
…
S11 = 0S21 = a.0S31 = a.a.0…
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
Is this a proper recursive specification in BPArec(A)?
![Page 12: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/12.jpg)
12
Expressivity of BPArec(A)
Example: S0 = a.S11 + S01
S01 = a.S21 + S02
S02 = a.S31 + S03
…
S11 = 0S21 = a.0S31 = a.a.0…
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
Is this a proper recursive specification in BPArec(A)? YES!
This process is specifiable in BPArec(A)!
![Page 13: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/13.jpg)
13
Expressivity of BPArec(A)
Example: S0 = a.S11 + S01
S01 = a.S21 + S02
S02 = a.S31 + S03
…
S11 = 0S21 = a.0S31 = a.a.0…
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
Is this a proper recursive specification in BPArec(A)? YES!
Observe: - It is an infinite rec. spec- It is an unguarded rec. spec
- Some states are bisimilarbut the root does not change
![Page 14: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/14.jpg)
14
Expressivity of BPArec(A)
Example: S0 = a.S11 + S01
S01 = a.S21 + S02
S02 = a.S31 + S03
…
S11 = 0S21 = a.0S31 = a.a.0…
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
Is this a proper recursive specification in BPArec(A)? YES!
Can we do better? Can we do guarded specification for this process?Can we do better? Can we do finite specification for this process?
Observe: -It is an infinite rec. spec- It is an unguarded rec. spec
- Some states are bisimilar but the root does not change
![Page 15: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/15.jpg)
15
Expressivity of BPArec(A)
Example: S0 = a.S11 + S01
S01 = a.S21 + S02
S02 = a.S31 + S03
…
S11 = 0S21 = a.0S31 = a.a.0…
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
Is this a proper recursive specification in BPArec(A)? YES!
Can we do better? Can we do guarded specification for this process? NO!Can we do better? Can we do finite specification for this process? NO!
Observe: -It is an infinite rec. spec- It is an unguarded rec. spec
- Some states are bisimilar but the root does not change
![Page 16: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/16.jpg)
16
Expressivity of BPArec(A)
Question: What sort LTSs are specifiable by guarded recursive specifications in BPArec(A)?
Theorem: Up to bisimulation, only finitely branching processes/LTSs and only those are specifiable by a guarded recursive specification in BPArec(A).
![Page 17: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/17.jpg)
17
Expressivity of BPArec(A): Definability
Question: What sort LTSs are specifiable by guarded recursive specifications in BPArec(A)?
Theorem: Up to bisimulation, only finitely branching processes/LTSs and only those are specifiable by a guarded recursive specification in BPArec(A).
definable
![Page 18: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/18.jpg)
18
Expressivity of BPArec(A): Definability
Example: S0 = a.S11 + S01
S01 = a.S21 + S02
S02 = a.S31 + S03
…
S11 = 0S21 = a.0S31 = a.a.0…
0
1 2
a3
aa a… n
…
a…
a
a
a
a
a
Can we do better? Can we do guarded specification for this process? NO!Can we do better? Can we do finite specification for this process? NO!
Observe: -It is an infinite rec. spec- It is an unguarded rec. spec
- Some states are bisimilar but the root does not change- It is infinitely branching
This process is not definable in BPArec(A)!
![Page 19: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/19.jpg)
19
Expressivity of BPArec(A):Stack example
Example: We consider a Stack with unlimited capacity Elements are taken from a finite set of data elements D = {d1, d2, …, dn} (n N) Elements from D can be added to or removed from the top of the stack.
![Page 20: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/20.jpg)
20
Expressivity of BPArec(A):Stack example
Example: We consider a Stack with unlimited capacity Elements are taken from a finite set of data elements D = {d1, d2, …, dn} (n N) Elements from D can be added to or removed from the top of the stack.
Steps: 1. First, define the set of atomic actions.
A = { push(d) | d D } {pop(d) | d D }
2. How many recursive variables may be needed S denotes the situation when the stack is empty S denotes the state of the stack process when the content is D*
![Page 21: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/21.jpg)
21
Expressivity of BPArec(A):Stack example
1. Atomic actions A = { push(d) | d D } {pop(d) | d D }
2. recursive variables S denotes the situation when the stack is empty S denotes the state of the stack process when the content is D*
S = dD push(d).Sd, for any d D
Sd = eD push(e).Sed + pop(d).S , for any d D
Sd = eD push(e).Sed + pop(d).S, for any d D and D*
![Page 22: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/22.jpg)
22
Expressivity of BPArec(A):Stack example
For D = {0,1}S = d{0,1} push(d).Sd, for any d {0,1},
Sd = eD{0,1} push(e).Sed + pop(d).S, for any d {0,1, {0,1}*
S
0 1
11011000
pp(1)pp(0)
pp(0) pp(0)
pp(1)
pp(1)
ps(0) ps(0)
ps(0) ps(1)ps(1)ps(0)
… … … …
![Page 23: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/23.jpg)
23
Expressivity of BPArec(A):Stack example
For D = {0,1}S = d{0,1} push(d).Sd, for any d {0,1},
Sd = eD{0,1} push(e).Sed + pop(d).S, for any d {0,1, {0,1}*
S
0 1
11011000
pp(1)pp(0)
pp(0) pp(0)
pp(1)
pp(1)
ps(0) ps(0)
ps(0) ps(1)ps(1)ps(0)
… … … …
Observe: -It is a nice guarded rec. spec
This process is definable, therefore it is finitely branching
![Page 24: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/24.jpg)
24
Expressivity of BPArec(A):Stack example
For D = {0,1}S = d{0,1} push(d).Sd, for any d {0,1},
Sd = eD{0,1} push(e).Sed + pop(d).S, for any d {0,1, {0,1}*
S
0 1
11011000
pp(1)pp(0)
pp(0) pp(0)
pp(1)
pp(1)
ps(0) ps(0)
ps(0) ps(1)ps(1)ps(0)
… … … …
Observe: - It is finitely branching
There is a guarded spec defining this process
![Page 25: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/25.jpg)
25
Expressivity of BPArec(A):Stack example
For D = {0,1}S = d{0,1} push(d).Sd, for any d {0,1},
Sd = eD{0,1} push(e).Sed + pop(d).S, for any d {0,1, {0,1}*
S
0 1
11011000
pp(1)pp(0)
pp(0) pp(0)
pp(1)
pp(1)
ps(0) ps(0)
ps(0) ps(1)ps(1)ps(0)
… … … …
Observe: - It is finitely branching
There is a guarded spec defining this process
Can we do better in BPArec(A)? Can we do finite spec?
![Page 26: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/26.jpg)
26
Expressivity of BPArec(A):Stack example
For D = {0,1}S = d{0,1} push(d).Sd, for any d {0,1},
Sd = eD{0,1} push(e).Sed + pop(d).S, for any d {0,1, {0,1}*
S
0 1
11011000
pp(1)pp(0)
pp(0) pp(0)
pp(1)
pp(1)
ps(0) ps(0)
ps(0) ps(1)ps(1)ps(0)
… … … …
Observe: - It has infinitely many states- None of them are bisimilar- Cannot be turned into a finite LTS
Can we do better in BPArec(A)? Can we do finite spec?
![Page 27: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/27.jpg)
27
Expressivity of BPArec(A):Finite definability
Question: What sort LTSs are specifiable by finite guarded recursive specifications in BPArec(A)?
Theorem: Up to bisimulation, only processes with finitely many states and finitely many transitions and only those are definable by finite
guarded recursive specifications in BPArec(A).
![Page 28: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/28.jpg)
28
Expressivity of BPArec(A):Finite definability
Question: What sort LTSs are specifiable by finite guarded recursive specifications in BPArec(A)?
Theorem: Up to bisimulation, only processes with finitely many states and finitely many transitions and only those are definable by finite
guarded recursive specifications in BPArec(A).
regular processes
![Page 29: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/29.jpg)
29
Expressivity of BPArec(A):Finite definability
Question: What sort LTSs are specifiable by finite guarded recursive specifications in BPArec(A)?
Theorem: Up to bisimulation, only processes with finitely many states and finitely many transitions and only those are definable by finite
guarded recursive specifications in BPArec(A).
regular processes
finitely definable
![Page 30: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/30.jpg)
30
Expressivity of BPArec(A):Finite definability
For D = {0,1}S = d{0,1} push(d).Sd, for any d {0,1},
Sd = eD{0,1} push(e).Sed + pop(d).S, for any d {0,1, {0,1}*
S
0 1
11011000
pp(1)pp(0)
pp(0) pp(0)
pp(1)
pp(1)
ps(0) ps(0)
ps(0) ps(1)ps(1)ps(0)
… … … …
Observe: - It has infinitely many states- None of them are bisimilar- Cannot be turned into a finite LTS- This is not a regular process
Can we do better in BPArec(A)? NO! Can we do finite spec? NO!
There is no finite rec. spec. in BPArec(A) !
![Page 31: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/31.jpg)
31
Expressivity of BPArec(A)
Question: What do we need to add to BPArec(A) just sufficient that this is possible?
![Page 32: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/32.jpg)
32
Expressivity of BPArec(A)
Question: What do we need to add to BPArec(A) just sufficient that this is possible?
Very simple extension: (general) sequential composition!
![Page 33: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/33.jpg)
33 Process Algebra (2IF45)
Theory of Sequential Processes TSP
![Page 34: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/34.jpg)
34 Process Algebra (2IF45)
TSPrec(A) = BPArec(A) + sequential composition
Language: TSPrec(A)
Signature: 0, 1, (a._ )aA, +, •, X
Axioms of BPArec(A):
(A1) – (A4)(A5) (x+ y) z = x z+y z(A6) (x y) z = x (y z)
(A7) 0 x = 0(A8) x 1 = x(A9) 1 x = x
(A10) a.x y = a.(x y)
Deduction rules for TSPrec(A):
a.x x a y
(x + y) ⑥
![Page 35: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/35.jpg)
35 Process Algebra (2IF45)
TSPrec(A) = BPArec(A) + sequential composition
Language: TSPrec(A)
Signature: 0, 1, (a._ )aA, +, •, X
Axioms of TSPrec(A):
(A1) – (A4)(A5) (x+ y) z = x z+y z(A6) (x y) z = x (y z)
(A7) 0 x = 0(A8) x 1 = x(A9) 1 x = x
(A10) a.x y = a.(x y)
Deduction rules for TSPrec(A):
a.x x . . .a y
(x + y) ⑥
Deduction rules for sequential composition
x x’ x y x’
a
a
x y (x y)
x y y’ x y y’
a
a
![Page 36: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/36.jpg)
36 Process Algebra (2IF45)
TSPrec(A) = BPArec(A) + sequential composition
Language: TSPrec(A)
Signature: 0, 1, (a._ )aA, +, •, X
Axioms of TSPrec(A):
(A1) – (A4)(A5) (x+ y) z = x z+y z(A6) (x y) z = x (y z)
(A7) 0 x = 0(A8) x 1 = x(A9) 1 x = x
(A10) a.x y = a.(x y)
Deduction rules for TSPrec(A):
a.x x . . .a y
(x + y) ⑥
Deduction rules for sequential comosition
x x’ x y x’
a
a
x y (x y)
x y y’ x y y’
a
a
Bisimilarity of LTSs Equality of terms
![Page 37: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/37.jpg)
37
TSPrec(A) process algebra
- Congruence of bisimulation with respect to all operators in TSPrec(A)
- Elimination result: BPA(A) are still basic terms
- Soundness of TSPrec(A) with respect to the SOS semantic (term model)
- Ground completeness: bisimilarity between closed terms is derivable in TSP(A)
![Page 38: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/38.jpg)
38
Stack process in TSPrec(A)
Revise the Stack example: We consider a Stack with unlimited capacity Elements are taken from a finite set of data elements D = {d1, d2, …, dn} (n N) Elements from D can be added to or removed from the top of the stack.
![Page 39: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/39.jpg)
39
Stack process in TSPrec(A)
Revision of the Stack example: We consider a Stack with unlimited capacity Elements are taken from a finite set of data elements D = {d1, d2, …, dn} (n N) Elements from D can be added to or removed from the top of the stack.
Stack2 = T
T = dD push(d). ( U pop(d).1)
![Page 40: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/40.jpg)
40
Stack process in TSPrec(A)
Revision of the Stack example: We consider a Stack with unlimited capacity Elements are taken from a finite set of data elements D = {d1, d2, …, dn} (n N) Elements from D can be added to or removed from the top of the stack.
Stack2 = T
T = dD push(d). ( U pop(d).1)U = 1 + T U
![Page 41: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/41.jpg)
41
Stack process in TSPrec(A)
Stack1 = S
S = dD push(d).Sd, for any d D
Sd = eD push(e).Sed + pop(d).S, for any d D and D*
Stack2 = T
T = dD push(d). ( U pop(d).1)U = 1 + T U
Is Stack1 = Stack2 ?
YES! Can be proved using RDP+RSP principles*.
*See the proof in the book
![Page 42: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/42.jpg)
42
Expressivity of TSPrec(A)
- BSPrec(A) and TSPrec(A) in general are equally expressive!
- A process is definable in TSPrec(A) if and only if it is a solution of a guarded recursive spec. the same as in BPSrec(A)
- Nevertheless in TSPrec(A) infinitely branching processes can be specified by a finite (unguarded) recursive spec.
Example: X = X • (a.1) + a.1
![Page 43: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/43.jpg)
43
Expressivity of TSPrec(A)
Example 2: Consider recursive specification in TSPrec(A)X = a. (Y • a.1) Y = a. (Y • Z) + a.1Z = a.1 + 1
Observe:- the specification is guarded - the process is finitely branching- but “the degree of branching” is unbounded
![Page 44: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/44.jpg)
44
Expressivity of TSPrec(A)
Example 2: Consider recursive specification in TSPrec(A)X = a. (Y • a.1) Y = a. (Y • Z) + a.1Z = a.1 + 1
Observe:- the specification is guarded - the process is finitely branching- but “the degree of branching” is unbounded
Results: - In TSPrec(A) unbounded branching processes can be defined by a
finite guarded specification- This is not the case with BPArec(A)
![Page 45: Process Algebra (2IF45) Expressiveness of BPA rec](https://reader035.vdocument.in/reader035/viewer/2022062501/568167d5550346895ddd2b69/html5/thumbnails/45.jpg)
45
What about the Bag process?
- Can we find any BPArec(A) or TSPrec(A) specification of the Bag process?
- Can we find any which is finite guarded specification?- Or do we need to extend TSP(A) with more operators?