process algebra (2if45) abstraction and recursions in process algebra

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

Upload: elaina

Post on 25-Feb-2016

52 views

Category:

Documents


1 download

DESCRIPTION

Process Algebra (2IF45) Abstraction and Recursions in Process Algebra . Suzana Andova. Outline of the lecture. Combining silent steps with recursion Fairness rules Some examples Fairness: is this what it is really about?. Axiomatizing Rooted Branching Bisimulations. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

Process Algebra (2IF45)

Abstraction and Recursions in Process Algebra

Suzana Andova

Page 2: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

2

Outline of the lecture

• Combining silent steps with recursion• Fairness rules• Some examples

• Fairness: is this what it is really about?

Process Algebra (2IF45)

Page 3: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

3 Process Algebra (2IF45)

Axiomatizing Rooted Branching Bisimulations

Language: BPA(A)

Signature: 0, 1, (a._ )aA, , +, • Language terms T(BPA(A,))

Closed terms C(BPA(A))

Rooted BranchingBisimilarity 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 x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y) ⑥

x x’ x y x’ y

a

a

x y (x y)

x y y’ x y y’

a

a

Page 4: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

4 Process Algebra (2IF45)

Combining internal step with other operators:Hiding operator

Language: BPA(A)

Signature: 0, 1, (a._ )aA, , +, •, I (I A)

Language terms T(BPA(A,))

Closed terms C(BPA(A))

turns external actions into internal steps

Page 5: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

5 Process Algebra (2IF45)

Combining internal step with other operators:Encapsulation operator

Language with

Signature: 0, 1, (a._ )aA, , +, H (H A) blocks actions

Page 6: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

6 Process Algebra (2IF45)

Combining internal step with other operators:Parallel composition and communication

Language: TCP(A)

Signature: 0, 1, (a._ )aA, , +, •, 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

Page 7: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

7

Exercises

Process Algebra (2IF45)

Page 8: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

8

Home work

• You DID prove soundness of B axiom wrt rooted BB!• You DID Read the proof of ground completeness

Process Algebra (2IF45)

Page 9: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

9

Bisimilarity vs. Derivability

Process Algebra (2IF45)

Rooted branching bisimulation

TCP (A, )….a.(.(x+y) +x) = a.(x+y)…

SoundenssGCompleteness

a

a

b b

Language: TCP(A)

Signature: 0, 1, (a._ )aA, , +, •, I (I A), ||, |, ╙, H,

Language terms T(BPA(A, ))

Closed terms C(BPA(A, ))

Page 10: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

10 Process Algebra (2IF45)

Rooted branching bisimulation

TCP (A, )….a.(.(x+y) +x) = a.(x+y)…

SoundenssGCompleteness

a

a

b b

a

aconsistency

TCP (A, ) (+RSP,RDP,…)

X = .YY = .Y +a.0

Can we derive X = .a.0?

Language: TCP(A)

Signature: 0, 1, (a._ )aA, , +, •, I (I A), ||, |, ╙, H,

Language terms T(BPA(A, ))

Closed terms C(BPA(A, ))

Bisimilarity vs. Derivability

Page 11: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

11

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 tX in X = tX

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

Page 12: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

12

Abstraction and Recursion and Fairness

Process Algebra (2IF45)

X

Y

a

0

Z

U

a

0

Page 13: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

13

Abstraction and Recursion and Fairness

Process Algebra (2IF45)

X

Y

a

0

X = .YY = .Y + a.0

Z

U

a

0

Z = .UU = a.0

HOW?RSP+RDP?

X = Z

Observation on LTSs:1. they are rooted bb bisimilar2. implicitly internal loop is left eventually

= fairness

As recursive specifications:

Page 14: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

14

Abstraction and Recursion and Fairness

Process Algebra (2IF45)

X

Y

a

0

X = .YY = .Y + a.0

Z

U

a

0

Z = .UU = 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 bisimilar2. implicitly internal loop is left eventually

= fairness

As recursive specifications:

HOW?RSP+RDP?

Page 15: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

15 Process Algebra (2IF45)

X = .YY = .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

iapplying {i} (X’)

Abstraction and Recursion and Fairness: problem 1. dealing with guardedness

Page 16: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

16 Process Algebra (2IF45)

Z = .UU = a.0

Z’ = i.U’U’ = a.0

Abstraction and Recursion and Fairness: problem 1. dealing with guardedness

X = .YY = .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

iapplying {i} (X’)

represents

Z’

U’

i

a

0

applying {i} (Z’) Z

U

0

a

Page 17: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

17 Process Algebra (2IF45)

Z = .UU = 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 = .YY = .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

iapplying {i} (X’)

represents

OK! OK!

How to connect them

?

Page 18: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

18 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 rulesWe want to derive that I(X’) = .a.0 = I(Z’)! We need new rules for this!

Page 19: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

19 Process Algebra (2IF45)

a bit more general rule:

x1 = i1.x1 + y1, i1 I, I A

. I(x1) = . I(y1)

Abstraction and Recursion and Fairness: Fairness rules KFARb

General KFARnb rule is:

x1 = i1.x2 + y1,x2 = i2.x3 + y2,… xn = in.x1 + yn, {i1, … in } I {} , there is ik

. I(x1) = . (I(y1) + … + I(yn))

Page 20: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

21 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

Page 21: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

22 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

Page 22: Process Algebra (2IF45) Abstraction  and Recursions in  Process  Algebra

23 Process Algebra (2IF45)

There will be no lecture on 29th of May