cs780 discrete-state models - william & marykemper/cs780_08/slides/v_ccs.pdf · 37 computing...

59
1 CS780 Discrete-State Models Today : Milner‘s Calculus of Communicating Systems Strong & Weak Bisimulation Observational Congruence Quick Reference: Robin Milner, A Calculus of Communicating Systems, Springer, LNCS 92, 1980. Robin Miner, Communication and Concurrency, Prentice Hall, 1989. Instructor: Peter Kemper R 006, phone 221-3462, email:[email protected] Office hours: Mon,Wed 3-5 pm

Upload: others

Post on 16-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

1

CS780 Discrete-State Models

Today:Milner‘s Calculus of Communicating SystemsStrong & Weak BisimulationObservational Congruence

Quick Reference:Robin Milner, A Calculus of Communicating Systems,Springer, LNCS 92, 1980.Robin Miner, Communication and Concurrency, Prentice Hall,1989.

Instructor: Peter KemperR 006, phone 221-3462, email:[email protected] hours: Mon,Wed 3-5 pm

Page 2: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

2

Outline

Origin of Process Algebras:Calculus of Communicating Systems (CCS)Trace EquivalenceBisimulation Strong Weak

Observational Congruence

Credits: Slides from Noll, Katoen, RWTH Aachen, Germany, 2007/08

Page 3: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

3

Page 4: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

4

Page 5: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

5

Meaning of CCS Operators

Page 6: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

6

Notational Conventions

Page 7: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

7

Labelled Transition System

Page 8: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

8

Semantics of CCS

Page 9: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

9

Semantics of CCS

Page 10: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

10

Semantics of CCS

Page 11: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

11

Semantics of CCS

Page 12: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

12

Recursion

Page 13: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

13

Equivalence

Page 14: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

14

Equivalence of CCS Processes

Page 15: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

15

Desired Properties of Equivalence

Page 16: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

16

Congruence

Page 17: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

17

Trace Equivalence

Page 18: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

18

Trace Equivalence

Page 19: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

19

Congruence

Page 20: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

20

Trace Equivalence

Page 21: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

21

Trace Equivalence

Page 22: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

22

Deadlock

Page 23: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

23

Deadlock

Page 24: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

24

Desired Properties of Equivalence

Page 25: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

25

Strong Bisimulation

Page 26: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

26

Strong Bisimulation

Page 27: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

27

Strong Bisimulation

Page 28: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

28

Strong Bisimulation

How to prove this?

Page 29: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

29

Strong Bisimulation

How to prove this?

Page 30: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

30

Properties of Strong Bisimulation

Page 31: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

31

Strong Bisimulation => Trace Equivalence

Page 32: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

32

Congruence Property

Makes use of following Lemma

Page 33: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

33

Congruence

Page 34: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

34

Deadlock

Page 35: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

35

Summary

Page 36: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

36

Traces and Deadlocks

Page 37: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

37

Computing Equivalences

Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM J. Computing,

16, 1987.Multiple variants and refinements, in particular wrt stochastic models P. Buchholz. Exact and ordinary lumpability in finite Markov chains.

Journal of Applied Probability, 31:59–75, 1994. S. Derisavi, H. Hermanns, and W. H. Sanders. Optimal State-Space

Lumping in Markov Chains, Information Proc. Letters, 87, 6, 2003

Page 38: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

38

Partition Refinement Algorithm

Page 39: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

39

Strong Simulation

Page 40: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

40

Strong Simulation and Bisimulation

Page 41: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

41

Strong Bisimulation is not an ideal solution!

Page 42: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

42

Weak Bisimulation

Page 43: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

43

Weak Bisimulation

Page 44: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

44

Weak Bisimulation

Page 45: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

45

Weak Bisimulation

Page 46: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

46

Weak Bisimulation

Page 47: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

47

Weak Bisimulation

Page 48: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

48

Weak Bisimulation

Page 49: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

49

Properties of Weak Bisimulation

Page 50: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

50

Properties of Weak Bisimulation

Page 51: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

51

Observation Congruence

Page 52: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

52

Observation Congruence

Page 53: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

53

Observation Congruence

Page 54: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

54

Observation Congruence

Page 55: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

55

Observation Congruence

Page 56: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

56

Observation Congruence

Page 57: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

57

Observation Congruence

Page 58: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

58

Observation Congruence

Page 59: CS780 Discrete-State Models - William & Marykemper/cs780_08/slides/V_CCS.pdf · 37 Computing Equivalences Basic Algorithm: Paige, Tarjan: Three partition refinement algoriths, SIAM

59

Summary

Origin of Process Algebras:Calculus of Communicating Systems (CCS)Trace Equivalence Insensitive to deadlocks!

Bisimulation Strong Bisimulation:

too restrictive to be used for an equivalence between an abstractspecification and a detailed implementation model,we need to abstract from internal operations

Weak Bisimulation:no congruence wrt to choice, problem is an initial Tau step

Observational Congruence Compromise between strong and week bisimulation Yields congruence wrt CCS operations

Equivalence classes can be determined with algorithms based onpartition refinement