# Process Algebra (2IF45) Abstraction and Recursions in Process Algebra Suzana Andova.

## Presentation on theme: "Process Algebra (2IF45) Abstraction and Recursions in Process Algebra Suzana Andova."— Presentation transcript:

Process Algebra (2IF45) Abstraction and Recursions in Process Algebra Suzana Andova

1 Outline of the lecture Combining silent steps with recursion Fairness rules Some examples Fairness: is this what it is really about? Process Algebra (2IF45)

2 Axiomatizing Rooted Branching Bisimulations Language: BPA  (A) Signature: 0, 1, (a._ ) a  A, , +, Language terms T(BPA  (A,)) Closed terms C(BPA  (A)) Rooted Branching Bisimilarity on LTSs Equality of terms x+ y = y+x (x+y) + z = x+ (y + z) x + x = x x+ 0 = x (x+ y)  z = x  z+y  z (x  y)  z = x  (y  z) 0  x = 0 x  1 = x 1  x = x a.x  y = a.(x  y) a.( .(x+y) + x) = a.(x+y) Completeness Soundness Deduction rules for BPA  (A) (a  A  ): x  x’ x + y  x’ a a  11  x  (x + y)   a.x  x  a  y  y’ x + y  y’ a a y  (x + y)  ⑥ x  x’ x  y  x’  y a a x  y  (x  y)     x  y  y’ x  y  y’ a a

3 Process Algebra (2IF45) Combining internal step with other operators: Hiding operator Language: BPA  (A) Signature: 0, 1, (a._ ) a  A, , +,,  I (I  A) Language terms T(BPA  (A,)) Closed terms C(BPA  (A)) turns external actions into internal steps

4 Process Algebra (2IF45) Combining internal step with other operators: Encapsulation operator Language with Signature: 0, 1, (a._ ) a  A, , +,  H (H  A) blocks actions

5 Process Algebra (2IF45) Combining internal step with other operators: Parallel composition and communication Language: TCP  (A) Signature : 0, 1, (a._ ) a  A, , +,,  I (I  A), ||, |, ╙,  H, Language terms T(BPA  (A,  )) Closed terms C(BPA  (A,  )) Axioms for parallel composition with silent step: x ╙ .y = x ╙ y x | .y = 0

6 Exercises Process Algebra (2IF45)

7 Home work You DID prove soundness of B axiom wrt rooted BB! You DID Read the proof of ground completeness Process Algebra (2IF45)

8 Bisimilarity vs. Derivability Process Algebra (2IF45) Rooted branching bisimulation TCP  (A,  ) …. a.( .(x+y) +x) = a.(x+y) … a  a b b Language: TCP  (A) Signature : 0, 1, (a._ ) a  A, , +,,  I (I  A), ||, |, ╙,  H, Language terms T(BPA  (A,  )) Closed terms C(BPA  (A,  ))

9 Process Algebra (2IF45) Rooted branching bisimulation TCP  (A,  ) …. a.( .(x+y) +x) = a.(x+y) … a  a b b  a   a TCP  (A,  ) (+RSP,RDP,…) X = . Y Y = . Y +a.0 Can we derive X = . a.0? Language: TCP  (A) Signature : 0, 1, (a._ ) a  A, , +,,  I (I  A), ||, |, ╙,  H, Language terms T(BPA  (A,  )) Closed terms C(BPA  (A,  )) Bisimilarity vs. Derivability

10 Abstraction, silent steps and Recursion Guardedness and silent steps:  cannot be a guard of a variable X = . X has solutions . . a.1 but also . . b.1 (Do you remember what a solution of a rec. spec. is?) Guardedness and hiding operator:  I cannot appear in t X in X = t X X = i.  I (X), where i  I has solutions i.a.1 but also i. b.1 Process Algebra (2IF45) Guardedness with silent step is defined 

11 Abstraction and Recursion and Fairness Process Algebra (2IF45) X Y  a 0  Z U  a 0

12 Abstraction and Recursion and Fairness Process Algebra (2IF45) X Y  a 0  X = .Y Y = .Y + a.0 Z U  a 0 Z = .U U = a.0 HOW? RSP+RDP ? X = Z Observation on LTSs: 1.they are rooted bb bisimilar 2.implicitly internal loop is left eventually = fairness As recursive specifications:

13 Abstraction and Recursion and Fairness Process Algebra (2IF45) X Y  a 0  X = .Y Y = .Y + a.0 Z U  a 0 Z = .U U = a.0 X = Z At least two problems: 1.One is not guarder recursive specification! 2.Even if it is somehow made guarded, (but how?) B axiom is not sufficient to rewrite one spec into another Observation on LTSs: 1.they are rooted bb bisimilar 2.implicitly internal loop is left eventually = fairness As recursive specifications: HOW? RSP+RDP ?

14 Process Algebra (2IF45) X = .Y Y = .Y + a.0 X’ = i.Y’ Y’ = i.Y’ + a.0 for some action i to be turned internal “soon” by applying  I for I = {i} represents X Y  a 0  X’ Y’ i a 0 i applying  {i} (X’) Abstraction and Recursion and Fairness: problem 1. dealing with guardedness

15 Process Algebra (2IF45) Z = .U U = a.0 Z’ = i.U’ U’ = a.0 Abstraction and Recursion and Fairness: problem 1. dealing with guardedness X = .Y Y = .Y + a.0 X’ = i.Y’ Y’ = i.Y’ + a.0 for some action i to be turned internal “soon” by applying  I for I = {i} represents X Y  a 0  X’ Y’ i a 0 i applying  {i} (X’) represents Z’ U’ i a 0 applying  {i} (Z’) Z U  0 a

16 Process Algebra (2IF45) Z = .U U = a.0 Z’ = i.U’ U’ = a.0 Z’ U’ i a 0 applying  {i} (Z’) Z U  0 a Abstraction and Recursion and Fairness: problem 1. dealing with guardedness X = .Y Y = .Y + a.0 X’ = i.Y’ Y’ = i.Y’ + a.0 for some action i to be turned internal “soon” by applying  I for I = {i} represents X Y  a 0  X’ Y’ i a 0 i applying  {i} (X’) represents OK! How to connect them ?

17 Process Algebra (2IF45) X’ = i.Y’ Y’ = i.Y’ + a.0 Something like this shall help: Y’ = i.Y’ + a.0, i  I .  I (Y’) = .  I (a.0) Abstraction and Recursion and Fairness: problem 2. derivation rules We want to derive that  I (X’) = . a.0 =  I (Z’)! We need new rules for this!

18 Process Algebra (2IF45) a bit more general rule: x 1 = i 1.x 1 + y 1, i 1  I, I  A .  I (x 1 ) = .  I (y 1 ) Abstraction and Recursion and Fairness: Fairness rules KFAR b General KFAR n b rule is: x 1 = i 1.x 2 + y 1, x 2 = i 2.x 3 + y 2, … x n = i n.x 1 + y n, {i 1, … i n }  I  {  }, there is i k   .  I (x 1 ) = . (  I (y 1 ) + … +  I (y n ))

19 Process Algebra (2IF45) General KFAR n b rule is: x 1 = i 1.x 2 + y 1, x 2 = i 2.x 3 + y 2, … x n = i n.x 1 + y n, i 1, … i n  I, there is i k   .  I (x 1 ) = . (  I (y 1 ) + … +  I (y n )) Abstraction and Recursion and Fairness: Fairness rule KFAR n b

20 Process Algebra (2IF45) Abstraction and Recursion and Fairness: Example of tossing coins This exercise has be worked out during the lecture. If you didn’t attend the lecture you can find a similar exercise in [1] to show applicability of the KFAR rule

21 Process Algebra (2IF45) Abstraction and Recursion and Fairness: Example of throwing a die This exercise has be worked out during the lecture. If you didn’t attend the lecture you can find a similar exercise in [1] to show applicability of the CFAR rule

22 Process Algebra (2IF45) There will be no lecture on 29 th of May

Download ppt "Process Algebra (2IF45) Abstraction and Recursions in Process Algebra Suzana Andova."

Similar presentations