Process Algebra (2IF45) Analysing Probabilistic systems

30
Process Algebra (2IF45) Analysing Probabilistic systems Dr. Suzana Andova

description

Process Algebra (2IF45) Analysing Probabilistic systems. Dr. Suzana Andova. Probabilistic LTS. Basic ingredients of a PLTS: states non-detereministic states set N probabilistic states set P transitions action transitions labelled with actions and t  P - PowerPoint PPT Presentation

Transcript of Process Algebra (2IF45) Analysing Probabilistic systems

Page 1: Process Algebra (2IF45) Analysing Probabilistic systems

Process Algebra (2IF45)

Analysing Probabilistic systems

Dr. Suzana Andova

Page 2: Process Algebra (2IF45) Analysing Probabilistic systems

2

Probabilistic LTS

Process Algebra (2IF45)

Basic ingredients of a PLTS: • states

• non-detereministic states set N• probabilistic states set P

• transitions• action transitions labelled with actions and t P• probabilistic transitions labelled with probabilities

and t N• For a probabilistic state s,

= 1

s t

s t

as t

Page 3: Process Algebra (2IF45) Analysing Probabilistic systems

3 Process Algebra (2IF45)

Composing PLTSs

1/2

a b

1/2+ =

1/3

c d

2/3 1/3

a b

1/61/6

a

1/3

dc cdb

1/3

a b

2/3 1/2

c d

1/2|| =

1/3

c b

1/31/6

a

1/6

ac

db de

1

a a dd bc

11

b c

1 11 1

Page 4: Process Algebra (2IF45) Analysing Probabilistic systems

4

Strong Probabilistic bisimulation on PLTSs

Process Algebra (2IF45)

1 2/3

b32

5

1/3

a

9

c

1

10

c c

b

76

11

1/3

12

c c

a

8

1

13

c

b

1

c

2/3

4 1

b

1

a

1

c

1

Page 5: Process Algebra (2IF45) Analysing Probabilistic systems

5 Process Algebra (2IF45)

1. A chatting philosopher is a person dedicated to two activities: thinking and chatting. A philosopher uses his phone for chatting. He can decide to pick up the phone with probability pi, or stay thinking with probability 1-pi. Once he starts chatting, he end the call with probability ro, or keep chatting with probability 1-ro.

2. There is a switch which allocates connection to a philosopher, and also deallocating a connection. Our switcher is capable of handling only one connection at time.

3. We consider a system of two philosophers and one switcher

4. First, we compute Phil1 || Phil2, where Phili = Thinki

Chatting Philosophers example (partially)

Page 6: Process Algebra (2IF45) Analysing Probabilistic systems

6

Analysing PLTSs – main ingredients

Process Algebra (2IF45)

The set of all paths in x starting in p?!What can we measure on x? Do we need schedulers for it?

n

p

k s

0

x

Page 7: Process Algebra (2IF45) Analysing Probabilistic systems

7

Example 1 (cont.)

Process Algebra (2IF45)

Property1: A path has a trace c*a

Property2: A path has a trace c*b

Property3: A path has a trace (cc)*a

Property4: A path has a trace (cc)*b

Property5: A path reaches a deadlock state

Page 8: Process Algebra (2IF45) Analysing Probabilistic systems

8

Example 1 (cont.)

Process Algebra (2IF45)

Property1: A path has a trace c*a

n

p

k s

0

x p

k s s

0p

1/31/2 1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.

Page 9: Process Algebra (2IF45) Analysing Probabilistic systems

9

Example 1 (cont.)

Process Algebra (2IF45)

Property1: A path has a trace c*a

n

p

k s

0

x p

k s s

0p

1/31/2 1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.Prob(SetPaths1) = ?

Page 10: Process Algebra (2IF45) Analysing Probabilistic systems

10

Example 1 (cont.)

Process Algebra (2IF45)

Property1: A path has a trace c*a

n

p

k s

0

x p

k s s

0p

1/31/2 1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.Prob(SetPaths1) = 1/3 + 1/6x1/3 + (1/6)^2x1/3 + ….

= k0 1/3x(1/6)^k = (1/3)/ (1-1/6) = 2/5

Page 11: Process Algebra (2IF45) Analysing Probabilistic systems

11

Example 1 (cont.)

Process Algebra (2IF45)

Property2: A path has a trace c*b

n

p

k s

0

x p

k s s

0p

1/31/2 1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.

Page 12: Process Algebra (2IF45) Analysing Probabilistic systems

12

Example 1 (cont.)

Process Algebra (2IF45)

Property2: A path has a trace c*b

n

p

k s

0

x p

k s s

0p

1/31/2

1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.Prob(SetPaths2) = ?

Page 13: Process Algebra (2IF45) Analysing Probabilistic systems

13

Example 1 (cont.)

Process Algebra (2IF45)

Property3: A path has a trace (cc)*a or (cc)*b

n

p

k s

0

x

p

k s s

0p

1/31/2 1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.

k s s

0p

1/31/2 1/6

a b c

Page 14: Process Algebra (2IF45) Analysing Probabilistic systems

14

Example 1 (cont.)

Process Algebra (2IF45)

Property3: A path has a trace (cc)*a or (cc)*b

n

p

k s

0

x

p

k s s

0p

1/31/2 1/6

a b c

k s s

0p

1/2 1/6

a b c

1/3

.

.

.

k s s

0p

1/31/2 1/6

a b c

Prob(SetPaths3) = ?

Page 15: Process Algebra (2IF45) Analysing Probabilistic systems

15

Example 2

Process Algebra (2IF45)

The set of all paths in y starting in p?What can we measure on y? Do we need schedulers for it?

n

p

k s

0

y

k

p

k s s

0p

1/31/2 1/6

a

b

c

k s s

0p

1/2 1/6

ab c

1/3

.

.

.

b

b

Page 16: Process Algebra (2IF45) Analysing Probabilistic systems

16

Example 2 (cont.)

Process Algebra (2IF45)

Property1: A path has a trace c*a? First select a scheduler, then compute this set, and its probability

1.1. Scheduler 1.2. Scheduler 1

1.3. Scheduler 2

Page 17: Process Algebra (2IF45) Analysing Probabilistic systems

17

Example 2 (cont.) – scheduler

Process Algebra (2IF45)

Computation tree CTy(p, )

n

p

k s

0

y

k

p

k s n

0p

1/31/2 1/6

a c

k s n

0p

1/2 1/6

b

c

1/3

.

.

.

Page 18: Process Algebra (2IF45) Analysing Probabilistic systems

18

Example 2 (cont.) – scheduler

Process Algebra (2IF45)

Prob(p, trace = c*a) =

12/35 How?

n

p

k s

0

y

k

p

k s n

0p

1/31/2 1/6

a c

k s n

0p

1/2 1/6

b

c

1/3

.

.

Property1: A path has a trace c*a

Page 19: Process Algebra (2IF45) Analysing Probabilistic systems

19

Example 2 (cont.) – scheduler 1

Process Algebra (2IF45)

n

p

k s

0

y

k

p

k s s

0p

1/31/2 1/6

a c

k s s

0p

1/2 1/6

ab c

1/3

.

.

.

b

Computation tree CTy(p, 1)

Page 20: Process Algebra (2IF45) Analysing Probabilistic systems

20

Example 2 (cont.) – scheduler 1

Process Algebra (2IF45)

n

p

k s

0

y

k

p

k s s

0p

1/31/2 1/6

a c

k s s

0p

1/2 1/6

ab c

1/3

.

.

.

b

Property1: A path has a trace c*a

Prob1(p, trace = c*a) = 2/5

How? Can we do better?

Page 21: Process Algebra (2IF45) Analysing Probabilistic systems

Process Algebra (2IF45)

Abstraction on PLTSs

Page 22: Process Algebra (2IF45) Analysing Probabilistic systems

22

Towards probabilistic branching bisimulation

Process Algebra (2IF45)

We consider again hiding of internal behaviourAgain in the style of branching bisimulation, which is:

-congruence-easy to axiomatize-rather intuitive-preserve properties

Page 23: Process Algebra (2IF45) Analysing Probabilistic systems

23

Towards probabilistic branching bisimulation

Process Algebra (2IF45)

Recall Branching bisimulation on LTss

st

s’

t s

t’ s’

a

t’’

a

Page 24: Process Algebra (2IF45) Analysing Probabilistic systems

24

Towards probabilistic branching bisimulation

Process Algebra (2IF45)

Recall Branching bisimulation on LTss

st

s’

t s

t’ s’

a

t’’

a

Recall Strong Probabilistic bisimulation on PLTss

s

t

C1(eq. class )

s

s’

a

t’

a

t

C2(eq. class )

11

22

Page 25: Process Algebra (2IF45) Analysing Probabilistic systems

25

Towards probabilistic branching bisimulation

Process Algebra (2IF45)

Recall Branching bisimulation on LTss

st

s’

t s

t’ s’

a

t’’

a

Recall Strong Probabilistic bisimulation on PLTss

s

t

C1(eq. class )

s

s’

a

t’

a

t

C2(eq. class )

11

22

Combining theminto

Probabilistic Branching Bisimulation

Page 26: Process Algebra (2IF45) Analysing Probabilistic systems

26

Missing ingredients:

Process Algebra (2IF45)

1. We need a notion of for action transitions, just like in BB on LTSs

2. We need to compute probability to go to next eq. class from a probabilistic state, just like in PSB on PLTSs.

3. And something more…

Page 27: Process Algebra (2IF45) Analysing Probabilistic systems

27

Missing ingredients

Process Algebra (2IF45)

s

0

a

u

1

k

0

a

r1

n

p

1

m

q

1

Relate probabilistic and non-deter.states!

Page 28: Process Algebra (2IF45) Analysing Probabilistic systems

28

Missing ingredients:

Process Algebra (2IF45)

1. We need a notion of for action transitions, just like in BB on LTSsOK! Our unobservable paths are now: p0 n1 p1 n2… pkor p0 n1 p1 n2… nk

2. We need to compute probability to go to next eq. class from a probabilistic state, just like in PSB on PLTSs. But also for non-dterministic states.

1 if n C Prob(n, C) =

0 if n C

Page 29: Process Algebra (2IF45) Analysing Probabilistic systems

29

Probabilistic Branching Bisimulation

Process Algebra (2IF45)

Definition : An equivalence relation R S × S is a ⊆ probabilistic branching bisimulation iff for every (s, t) R the following two conditions hold:∈

(i)if s –-> s′ for a A or a=∈ , then there exist states t0, . . . , tn, t′ such that

t = t0 -------> t1 ------> … tn –-> t’

and (s, ti) R for all 0 ≤ i ≤ n, and (s′, t′) R,∈ ∈

(ii) for all equivalence classes of states M S/R, Prob(s,M) = Prob(t,M).∈

States s and t are branching bisimilar, denoted by s ∼pbb t, if (s, t) R for∈

some branching bisimulation relation R.

a

or a or

Page 30: Process Algebra (2IF45) Analysing Probabilistic systems

30

Examples: Probabilistic Branching Bisimulation

Process Algebra (2IF45)

Distributed page (part 2)