Process Algebra (2IF45) Analysing Probabilistic systems

Preview:

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

Citation preview

Process Algebra (2IF45)

Analysing Probabilistic systems

Dr. Suzana Andova

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

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

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

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)

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

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

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

.

.

.

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) = ?

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

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

.

.

.

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) = ?

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

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) = ?

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

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

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

.

.

.

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

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)

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?

Process Algebra (2IF45)

Abstraction on PLTSs

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

23

Towards probabilistic branching bisimulation

Process Algebra (2IF45)

Recall Branching bisimulation on LTss

st

s’

t s

t’ s’

a

t’’

a

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

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

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…

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!

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

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

30

Examples: Probabilistic Branching Bisimulation

Process Algebra (2IF45)

Distributed page (part 2)

Recommended