comp30112 concurrency
play

COMP30112: Concurrency Topics 2.4: More FSP Theory Howard Barringer - PowerPoint PPT Presentation

Topic 2.4: FSP Theory COMP30112: Concurrency Topics 2.4: More FSP Theory Howard Barringer Room KB2.20: email: Howard.Barringer@manchester.ac.uk March 2008 Topic 2.4: FSP Theory Outline Topic 2.4: FSP Theory Process Equivalence Examples


  1. Topic 2.4: FSP Theory COMP30112: Concurrency Topics 2.4: More FSP Theory Howard Barringer Room KB2.20: email: Howard.Barringer@manchester.ac.uk March 2008

  2. Topic 2.4: FSP Theory Outline Topic 2.4: FSP Theory Process Equivalence Examples Strong Bisimilarity Minimising LTSs Weak Bisimilarity Conclusion

  3. Topic 2.4: FSP Theory Outline Topic 2.4: FSP Theory Process Equivalence Examples Strong Bisimilarity Minimising LTSs Weak Bisimilarity Conclusion

  4. Topic 2.4: FSP Theory FSP Process Equivalence Question : When Are FSP Processes Equivalent? i.e. when do they exhibit the ‘same’ behaviour?

  5. Topic 2.4: FSP Theory FSP Process Equivalence Question : When Are FSP Processes Equivalent? i.e. when do they exhibit the ‘same’ behaviour? • Answer 1: When they have isomorphic LTSs?

  6. Topic 2.4: FSP Theory FSP Process Equivalence Question : When Are FSP Processes Equivalent? i.e. when do they exhibit the ‘same’ behaviour? • Answer 1: When they have isomorphic LTSs? Two LTSs are isomorphic if they are the same except that the names of the states may be different.

  7. Topic 2.4: FSP Theory FSP Process Equivalence Question : When Are FSP Processes Equivalent? i.e. when do they exhibit the ‘same’ behaviour? • Answer 1: When they have isomorphic LTSs? Two LTSs are isomorphic if they are the same except that the names of the states may be different. ( P = 1 Q ) if lts ( P ) is isomorphic to lts ( Q ) ( lts ( P ) is the LTS of the process expression P )

  8. Topic 2.4: FSP Theory • Answer 2: When they have the same trace sets?

  9. Topic 2.4: FSP Theory • Answer 2: When they have the same trace sets? The trace set of an FSP process is the set of traces of its LTS; i.e. the set of finite sequences a 1 · · · a n of actions that can label a transition path of the LTS, starting from the start state.

  10. Topic 2.4: FSP Theory • Answer 2: When they have the same trace sets? The trace set of an FSP process is the set of traces of its LTS; i.e. the set of finite sequences a 1 · · · a n of actions that can label a transition path of the LTS, starting from the start state. ( P = 2 Q ) if traces ( lts ( P )) = traces ( lts ( Q )) i.e. the LTSs are trace-equivalent ( traces ( T ) is the set of traces of the LTS T )

  11. Topic 2.4: FSP Theory • Answer 2: When they have the same trace sets? The trace set of an FSP process is the set of traces of its LTS; i.e. the set of finite sequences a 1 · · · a n of actions that can label a transition path of the LTS, starting from the start state. ( P = 2 Q ) if traces ( lts ( P )) = traces ( lts ( Q )) i.e. the LTSs are trace-equivalent ( traces ( T ) is the set of traces of the LTS T ) • Answer 3: When nothing they can interact with can tell the difference?

  12. Topic 2.4: FSP Theory • Answer 2: When they have the same trace sets? The trace set of an FSP process is the set of traces of its LTS; i.e. the set of finite sequences a 1 · · · a n of actions that can label a transition path of the LTS, starting from the start state. ( P = 2 Q ) if traces ( lts ( P )) = traces ( lts ( Q )) i.e. the LTSs are trace-equivalent ( traces ( T ) is the set of traces of the LTS T ) • Answer 3: When nothing they can interact with can tell the difference? ( P = equiv Q ) if ∀ R · P � R behaves the same as Q � R

  13. Topic 2.4: FSP Theory • Answer 2: When they have the same trace sets? The trace set of an FSP process is the set of traces of its LTS; i.e. the set of finite sequences a 1 · · · a n of actions that can label a transition path of the LTS, starting from the start state. ( P = 2 Q ) if traces ( lts ( P )) = traces ( lts ( Q )) i.e. the LTSs are trace-equivalent ( traces ( T ) is the set of traces of the LTS T ) • Answer 3: When nothing they can interact with can tell the difference? ( P = equiv Q ) if ∀ R · P � R behaves the same as Q � R ( P = 1 Q ) = ⇒ ( P = equiv Q ) = ⇒ ( P = 2 Q ) or = 1 ⊆ = equiv ⊆ = 2

  14. Topic 2.4: FSP Theory Outline Topic 2.4: FSP Theory Process Equivalence Examples Strong Bisimilarity Minimising LTSs Weak Bisimilarity Conclusion

  15. Topic 2.4: FSP Theory Examples P1 = (a -> Q1 P2 = (a -> Q2), |a -> R1), Q2 = (b -> Q2). Q1 = (b -> Q1), R1 = (b -> R1). P1 P2 a a a Q1 R1 Q2 b b b Obviously, = 1 does not make enough things equal.

  16. Topic 2.4: FSP Theory Another Example P = (a -> b -> P). S2 = ( a -> c -> B S3 = ( a -> c -> B1 Q = (c -> b -> Q). | c -> a -> B), | c -> a -> B2), ||S1 = (P||Q). B = (b -> S2). B1 = (b -> S3), B2 = (b -> S3). S3 S2 S1 b b a a a c c c b b a a c a c c B B1 B2 ⋆ Are they equivalent? ⋆

  17. Topic 2.4: FSP Theory And another ... ⋆ Should the following be equivalent? ⋆ P1 = ( a -> Q1), P2 = ( a -> Q2 Q1 = ( b -> STOP | a -> R2), | c -> STOP). Q2 = (b -> STOP), R2 = (c -> STOP). ⋆ ( P 1 = 2 P 2) ? ⋆ ⋆ ( P 1 = equiv P 2) ? ⋆

  18. Topic 2.4: FSP Theory And another ... ⋆ Should the following be equivalent? ⋆ P1 = ( a -> Q1), P2 = ( a -> Q2 Q1 = ( b -> STOP | a -> R2), | c -> STOP). Q2 = (b -> STOP), R2 = (c -> STOP). ⋆ ( P 1 = 2 P 2) ? ⋆ Yes , all traces the same ⋆ ( P 1 = equiv P 2) ? ⋆

  19. Topic 2.4: FSP Theory And another ... ⋆ Should the following be equivalent? ⋆ P1 = ( a -> Q1), P2 = ( a -> Q2 Q1 = ( b -> STOP | a -> R2), | c -> STOP). Q2 = (b -> STOP), R2 = (c -> STOP). ⋆ ( P 1 = 2 P 2) ? ⋆ Yes , all traces the same ⋆ ( P 1 = equiv P 2) ? ⋆ No , consider parallel composition with:

  20. Topic 2.4: FSP Theory And another ... ⋆ Should the following be equivalent? ⋆ P1 = ( a -> Q1), P2 = ( a -> Q2 Q1 = ( b -> STOP | a -> R2), | c -> STOP). Q2 = (b -> STOP), R2 = (c -> STOP). ⋆ ( P 1 = 2 P 2) ? ⋆ Yes , all traces the same ⋆ ( P 1 = equiv P 2) ? ⋆ No , consider parallel composition with: S1 = ( a -> b -> STOP ) + { c } .

  21. Topic 2.4: FSP Theory And another ... ⋆ Should the following be equivalent? ⋆ P1 = ( a -> Q1), P2 = ( a -> Q2 Q1 = ( b -> STOP | a -> R2), | c -> STOP). Q2 = (b -> STOP), R2 = (c -> STOP). ⋆ ( P 1 = 2 P 2) ? ⋆ Yes , all traces the same ⋆ ( P 1 = equiv P 2) ? ⋆ No , consider parallel composition with: S1 = ( a -> b -> STOP ) + { c } . We need a notion of equivalence called Bisimilarity

  22. Topic 2.4: FSP Theory Outline Topic 2.4: FSP Theory Process Equivalence Examples Strong Bisimilarity Minimising LTSs Weak Bisimilarity Conclusion

  23. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q ))

  24. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have

  25. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have • the same alphabet

  26. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have • the same alphabet • compatible colourings

  27. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have • the same alphabet • compatible colourings • A colouring of an LTS is an assignment of a colour to each node.

  28. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have • the same alphabet • compatible colourings • A colouring of an LTS is an assignment of a colour to each node. • The colourings of one or more coloured LTSs are compatible if

  29. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have • the same alphabet • compatible colourings • A colouring of an LTS is an assignment of a colour to each node. • The colourings of one or more coloured LTSs are compatible if 1. The starting states of distinct LTSs have the same colour.

  30. Topic 2.4: FSP Theory Strong Bisimilarity • Processes P and Q are equivalent, i.e. ( P = equiv Q ) if their LTSs are strongly bisimilar : ( lts ( P ) ∼ lts ( Q )) • LTSs are [strongly] bisimilar if they have • the same alphabet • compatible colourings • A colouring of an LTS is an assignment of a colour to each node. • The colourings of one or more coloured LTSs are compatible if 1. The starting states of distinct LTSs have the same colour. 2. Whenever states P , Q (of the same or distinct LTS) have the → P ′ there is a a same colour then for any transition P → Q ′ where P ′ , Q ′ have the same colour. a transition Q

Recommend


More recommend