Calculation of Communicating Systems CCS Amir Masoumzadeh Shahyad

  • Slides: 26
Download presentation
Calculation of Communicating Systems (CCS) Amir Masoumzadeh Shahyad Sharghi

Calculation of Communicating Systems (CCS) Amir Masoumzadeh Shahyad Sharghi

Outline n n n What is CCS ? Syntax and Definitions Semantics Behavioral Equivalence

Outline n n n What is CCS ? Syntax and Definitions Semantics Behavioral Equivalence References

What is CCS ? n n A process algebra that provides mathematical models of

What is CCS ? n n A process algebra that provides mathematical models of concurrent behavior By Robin Milner, 1980 “Communication & Concurrency”, 1989 Handshake synchronization

Definitions n n Names Labels n n n Actions n n Co-names By convention

Definitions n n Names Labels n n n Actions n n Co-names By convention : internal or silent action not in Labels Process Identifiers

Process Expressions n n n n Nil Process Definition Prefixing Choice Parallel Composition Restriction

Process Expressions n n n n Nil Process Definition Prefixing Choice Parallel Composition Restriction Relabelling such that

Process Expressions Parallel Restriction Composition

Process Expressions Parallel Restriction Composition

Process Expressions Choice Relabelling

Process Expressions Choice Relabelling

Semantics n Using Labelled Transition System n Transition relation is given by SOS rules:

Semantics n Using Labelled Transition System n Transition relation is given by SOS rules:

Rules for CCS n Prefixing n Choice

Rules for CCS n Prefixing n Choice

Rules for CCS n Parallel Composition

Rules for CCS n Parallel Composition

Rules for CCS n Restriction n Relabelling

Rules for CCS n Restriction n Relabelling

Using The Rules n

Using The Rules n

Value-Passing CCS n Handshake synchronization is extended with the possibility to exchange integer values

Value-Passing CCS n Handshake synchronization is extended with the possibility to exchange integer values

Behavioral Equivalence n n n The behavior of two process are equal when each

Behavioral Equivalence n n n The behavior of two process are equal when each can simulate exactly the behavior of the other CCS can be used to describe both implementations of processes and specifications of their expected behaviors.

Trace Equivalence n Let n n be an LTS Trace set s for Proc

Trace Equivalence n Let n n be an LTS Trace set s for Proc Let n s, t are trace equivalent iff Traces(s) = Traces(t)

Trace Equivalence n Let n Do these processes behave the same? n The second

Trace Equivalence n Let n Do these processes behave the same? n The second term can deadlock:

Problem n Not only afford the same traces, but the states that they reach

Problem n Not only afford the same traces, but the states that they reach should still be equivalent

Strong Bisimilarity n A binary relation bisimulation iff whenever : is a strong then

Strong Bisimilarity n A binary relation bisimulation iff whenever : is a strong then for each n n n Two processes are strong bisimilar (p 1~p 2) iff there exists a strong bisimulation R such that

Strong Bisimilarity n Example:

Strong Bisimilarity n Example:

Strong Bisimilarity - Properties n Let P, Q be CCS processes such that P

Strong Bisimilarity - Properties n Let P, Q be CCS processes such that P ~ Q then n Properties for any CCS processes P, Q, R : n

Problems with Internal Actions n n Strong bisimilarity does not abstract away from actions!

Problems with Internal Actions n n Strong bisimilarity does not abstract away from actions!

Weak Bisimilarity n A binary relation bisimulation iff whenever is a weak then for

Weak Bisimilarity n A binary relation bisimulation iff whenever is a weak then for each n n n Two processes are weak bisimilar iff there exists a strong bisimulation R such that

Weak Bisimilarity - Properties n Let P, Q be CCS processes such that P

Weak Bisimilarity - Properties n Let P, Q be CCS processes such that P ~ Q then n What about choice? n

Automatic Tools n Concurrency Workbench (CWB) n n n Laboratory for Foundations of Computer

Automatic Tools n Concurrency Workbench (CWB) n n n Laboratory for Foundations of Computer Science, University of Edinburgh http: //www. dcs. ed. ac. uk/home/cwb/ Help us in n n deciding equivalence between processes model checking drawing the LTS of a process interactively simulating the processes

References n n n Luca Aceto, Kim G. Larsen, “An Introduction to Milner’s CCS”,

References n n n Luca Aceto, Kim G. Larsen, “An Introduction to Milner’s CCS”, Aalborg University, Denmark, March 2005 R. Cleaveland, S. A. Smolka, “Process Algebra”, 1999 Vashti Galpin, “A comparison of bisimulationbased semantic equivalences for non-interleaving behavior over CCS processes”

Thanks

Thanks