1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located...

Click here to load reader

  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    222
  • download

    6

Embed Size (px)

Transcript of 1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located...

  • Slide 1
  • 1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in -calculus
  • Slide 2
  • Roadmap l Process calculi l The standard semantics of -calculus l A new located semantics l A new concurrent semantics l Conclusions
  • Slide 3
  • Roadmap l Process calculi l The standard semantics of -calculus l A new located semantics l A new concurrent semantics l Conclusions
  • Slide 4
  • Process calculi l Behavioral models of concurrent interacting systems l Useful to analyze the properties of systems before building them System satisfies some properties Equivalence of different implementations Correctness of optimizations l Systems modeled as terms in a suitable algebra Constants for basic behaviours Operators of composition (parallel composition, declaration of a resource, )
  • Slide 5
  • Operational semantics l Allows to describe system behaviour l Two styles: reduction semantics and labelled semantics l Reduction semantics Describes the evolution of a closed system Easy to use and understand Rules of the form l Labelled semantics Describes the interactions between the system and the environment Useful to describe open systems and analyze properties Rules of the form P 1 ! P 2 P 1 ! P 2
  • Slide 6
  • Bisimilarity l Equivalence relation Abstracts from internal details Equates systems indistinguishable from the outside Built on top of a reduction or a labelled semantics l Two processes are bisimilar if one can simulate the other (do the same actions going to bisimilar processes) and vice versa Using reductions requires also context closure More distinguishing than trace equivalence l Bisimilarity is compositional if preserved by contexts Known as bisimilarity is a congruence property Allows to substitute bisimilar processes without changing the behaviour (e.g., optimization) / aa bcbc a
  • Slide 7
  • Which calculus? l Different process calculi have been proposed, focused on different aspects (locations, cryptography, wireless communication, ) l We choose the -calculus l Apt to model distributed mobile systems in an easy way l Used both in academia and industry Basis for BPEL l Easy to extend to deal with different features (spi, dPi, stochastic pi, )
  • Slide 8
  • Roadmap l Process calculi l The standard semantics of -calculus l A new located semantics l A new concurrent semantics l Conclusions
  • Slide 9
  • -calculus syntax l Names a,b,x, represent communication channels l Channel names are the only data l Enough to encode booleans, integers,
  • Slide 10
  • -calculus reductions is an equivalence relation stating basic properties (e.g., parallel composition is associative and commutative)
  • Slide 11
  • Example nan : P [ n ] a ( x ) : b x : Q b ( x ) : R [ x ] a b
  • Slide 12
  • b ( x ) : R [ x ] b b n : Q P [ n ] n
  • Slide 13
  • P [ n ] n Q R [ n ]
  • Slide 14
  • -calculus labelled semantics
  • Slide 15
  • Observations on the standard semantics l The semantics shows inputs, outputs, and synchronizations () l All the synchronizations are equal On a restricted or on a free channel All free channels are equal l At each step exactly one action is performed Concurrency indistinguishable from interleaving l We want to change these assumptions
  • Slide 16
  • The ideas of our approach l Many works considered locations and concurrency in - calculus l Locations explicitly added: l::P l Concurrency using mappings to other formalisms (Petri nets, graphs, ) or complex algebraic structures (event structures, ) l We want to analyze what can be done without changing the framework Standard -calculus syntax Direct semantics using standard labelled and reduction style Trying to preserve the good properties of the standard framework
  • Slide 17
  • Roadmap l Process calculi l The standard semantics of -calculus l A new located semantics l A new concurrent semantics l Conclusions
  • Slide 18
  • Located synchronizations l We want to see where a synchronization is performed l Different channels can have different properties Accounting Security policies
  • Slide 19
  • -calculus located reductions l We need labels also for reductions l Labels show which (free) channel is used
  • Slide 20
  • Properties of the located semantics l Can be expressed also using the labelled semantics Label a for a synchronization on free channel a Label for a synchronization on a hidden channel l Full correspondance between reduction and labelled semantics Reductions correspond to labelled synchronizations They induce the same bisimilarity Closure under substitutions needed for labelled semantics
  • Slide 21
  • Located bisimilarity l Located bisimilarity refines standard one a j a / L b ( a + b )j( a + b ) a j a S b ( a + b )j( a + b ) but l This allows to observe which channels are used l For instance we can distinguish between communication on a local network (free, safe) from communication via Internet (under accounting, unsafe)
  • Slide 22
  • Roadmap l Process calculi l The standard semantics of -calculus l A new located semantics l A new concurrent semantics l Conclusions
  • Slide 23
  • Concurrent synchronizations l We want to see which actions can be performed concurrently l Actions can be executed concurrently provided that: they are performed by different sequential processes they are executed on different channels l One concurrent transition corresponds to one or more located transitions
  • Slide 24
  • -calculus concurrent reductions l Labels contain the set of used channels
  • Slide 25
  • Properties of the concurrent semantics l Can be expressed also using the labelled semantics Labels are (essentially) multisets of located labels l Full correspondance between reduction and labelled semantics Reductions correspond to labelled synchronizations They induce the same bisimilarity
  • Slide 26
  • Concurrent bisimilarity l Concurrent bisimilarity refines the located one but l This allows to distinguish concurrency from nondeterminism l Actions on the same channel are sequentialized a j b L a : b + b : aa j b / C a : b + b : a a j a C a : a
  • Slide 27
  • Compositionality l Concurrent bisimilarity is a congruence This allows compositional reasoning about system behaviour Bisimilar subcomponents can be substituted one for the other l This property does not hold for standard or located semantics Standard and located bisimilarity not preserved by contexts that perform substitutions a j b L a : b + b : a but b j b / L b : b + b : b
  • Slide 28
  • Roadmap l Process calculi l The standard semantics of -calculus l A new located semantics l A new concurrent semantics l Conclusions
  • Slide 29
  • Conclusions l Two new semantics for -calculus highlighting where synchronizations are performed which synchronizations can be performed concurrently l The semantics capture these behaviours More expressive power l Many good properties of standard semantics are preserved by the extensions Correspondance between reduction and labelled semantics Bisimilarities refine standard one l Additional property: concurrent bisimilarity is compositional
  • Slide 30
  • Future work l Further analysis on the new semantics Weak semantics (first results in the paper) Analysis techniques Applications l Looking for semantics in the same style for other calculi l Analysing the effects of more concurrency What happens if many actions are allowed on the same channel?
  • Slide 31
  • End of talk