slide1
Download
Skip this Video
Download Presentation
Ivan Lanese Computer Science Department Univers ity of Bologna Roberto Bruni

Loading in 2 Seconds...

play fullscreen
1 / 28

Ivan Lanese Computer Science Department Univers ity of Bologna Roberto Bruni - PowerPoint PPT Presentation


  • 66 Views
  • Uploaded on

PRISMA. A mobile calculus with parametric synchronization. Ivan Lanese Computer Science Department Univers ity of Bologna Roberto Bruni Computer Science Department University of Pisa. Roadmap. Why PRISMA calculus? Synchronization Algebras with Mobility Syntax and semantics

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Ivan Lanese Computer Science Department Univers ity of Bologna Roberto Bruni' - benita


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
PRISMA

A mobile calculus with

parametric synchronization

Ivan Lanese

Computer Science Department

University of Bologna

Roberto Bruni

Computer Science Department

University of Pisa

roadmap
Roadmap
  • Why PRISMA calculus?
  • Synchronization Algebras with Mobility
  • Syntax and semantics
  • Properties and applications
  • Conclusions and future work
roadmap1
Roadmap
  • Why PRISMA calculus?
  • Synchronization Algebras with Mobility
  • Syntax and semantics
  • Properties and applications
  • Conclusions and future work
process calculi and synchronization
Process calculi and synchronization
  • Process calculi are used to model a wide range of systems
    • Computer networks, biological systems, service oriented architectures, workflow patterns
  • Different systems communicate according to different synchronization policies
  • Each calculus has its own primitive(s)
    • Binary synchronization, broadcast, service invocation
modelling troubles
Modelling troubles
  • Sometimes the desired primitives are not (all) available in the used calculus
  • Either they should be implemented…
    • Difficult task, produces unclear models
  • …or a new ad hoc model is proposed
    • Theory and tools have to be redeveloped from scratch
our idea
Our idea
  • Define a (mobile) calculus where the synchronization primitives can be freely chosen, combined and compared
  • We build on
    • Winskel’s work on synchronization algebras
      • Do not consider mobility
    • Our previous work on synchronization algebras with mobility in the Synchronized Hyperedge Replacement framework
      • Belongs to the graph transformation approach
  • We apply the idea in the field of calculi for mobility
what we are claiming and not claiming
What we are claiming and NOT claiming
  • Our calculus is NOT able to easily and faithfully simulate each possible calculus
    • Synchronization is not the only feature that characterize a calculus

But

  • Real systems can be more easily modelled since the desired primitives can be defined and exploited
  • Shows how to use the parametric approach for mobile calculi
  • Is a first step towards the understanding of the commonalities / differences between different calculi
a sample scenario
A sample scenario
  • A news server takes news from providers and broadcasts them to clients
  • Two kinds of primitives
    • Binary communication between providers and the server
    • Broadcast between server and clients
  • Challenging scenario for previous calculi (e.g., π calculus)
roadmap2
Roadmap
  • Why PRISMA calculus?
  • Synchronization Algebras with Mobility
  • Syntax and semantics
  • Properties and applications
  • Conclusions and future work
synchronization algebras with mobility
Synchronization Algebras with Mobility
  • Abstract formalization of a synchronization policy
  • A SAM contains
    • A set of ranked actions Act
    • An element ε standing for “not taking part to the synchronization”
    • A set of action synchronizations of the form (a, b, (c, Mob, ))
      • Actions a and b can interact, producing action c
      • The parameters of a and b are merged according to 
      • The parameters of c are computed as described by Mob
    • A subset Fin of Act containing the complete actions
      • Allowed on restricted channels
  • SAMs must satisfy some coherence conditions
mob and
Mob and 

a

b

c

Mob

milner synchronization as a sam
in

out

τ

a

ε

a

Milner synchronization as a SAM
  • Actions: inputs (e.g., in), outputs (e.g., out), τ, ε
  • No other synchronization is allowed
  • Only τ and ε are in Fin
broadcast synchronization as a sam
in

out

out

in

in

in

Broadcast synchronization as a SAM
  • Actions: inputs, outputs, ε
  • ε can synchronize only with itself
  • Only out and ε are in Fin
  • As a result a complete synchronization involves one out and one in from each other partner
roadmap3
Roadmap
  • Why PRISMA calculus?
  • Synchronization Algebras with Mobility
  • Syntax and semantics
  • Properties and applications
  • Conclusions and future work
prisma calculus syntax
PRISMA Calculus syntax
  • Standard process calculi operators
    • Parallel composition, restriction, choice, …
    • Prefixes x a y allowing to perform action a on channel x with parameters in y
prisma calculus syntax1
(

)

h

i

f

b

l

h

f

P

i

i

i

t

n

o

p

u

s

o

u

n

o

=

PRISMA Calculus syntax
  • Standard process calculi operators
    • Parallel composition, restriction, choice, …
    • Prefixes x a y allowing to perform action a on channel x with parameters in y
  • Example:
prisma semantics
PRISMA semantics
  • Given by an LTS
    • Reduction semantics not suitable for multi-party synchronization
  • The behavior of a PRISMA process depends on the chosen SAM S
  • Inference rules parametric on S to derive labelled transitions
    • label (Y) x a y, πexecutes x a y extruding names in Y and applying fusion π
    • label √, π executes an action on a restricted channel applying fusion π
implementing the news scenario
j

j

j

(

(

(

)

)

)

h

h

i

i

(

h

[

i

]

h

i

j

0

[

]

)

!

f

b

l

b

h

l

h

f

P

S

S

C

P

C

C

U

S

i

i

i

i

i

i

t

t

x

y

n

p

o

n

u

e

p

w

u

s

s

n

s

n

y

o

x

u

n

s

n

e

e

w

o

y

s

o

u

x

x

=

=

=

b

b

i

i

1

2

:

:

h

i

b

l

h

d

i

i

p

u

s

¿

j

(

)

(

h

i

j

0

[

]

)

j

j

;

f

f

f

S

S

C

C

i

i

i

t

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

n

o

n

e

w

s

o

u

n

o

n

o

!

b

1

2

(

)

h

i

f

f

d

i

i

i

t

n

o

n

e

w

s

o

u

n

o

b

j

0

[

]

j

[

]

j

[

]

;

f

f

f

S

S

U

U

i

i

i

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

¡

n

o

s

e

n

o

s

e

n

o

!

1

2

Implementing the news scenario

News server:

Provider:

Clients:

abstract semantics
Abstract semantics
  • Bisimilarity can be defined in a standard way
  • Basic axioms (e.g., commutativity and associativity of parallel composition) bisimulate for any SAM

Theorem

Hyperbisimilarity (substitution closed bisimilarity) is a congruence for any SAM

roadmap4
Roadmap
  • Why PRISMA calculus?
  • Synchronization Algebras with Mobility
  • Syntax and semantics
  • Properties and applications
  • Conclusions and future work
prisma vs fusion
PRISMA vs Fusion
  • Fusion calculus can be easily translated into Milner PRISMA
    • Homomorphic extension of the translation of Fusion inputs and outputs into PRISMA ones
  • The obtained semantics is more detailed than standard Fusion one
    • Shows on which (free) channel a fusion is generated
  • The induced bisimilarity is more detailed too
composing sams
Composing SAMs
  • SAMs can be given a categorical structure
  • Categorical constructions allow to combine SAMs
    • Coproduct makes the union of the primitives
    • Product creates compound primitives
  • The SAM used in the sample application is a coproduct of a Milner SAM and a broadcast SAM
translating processes
Translating processes
  • A process on S1 can be translated along a morphism H:S1→S2 to a process on S2
  • Allows to execute a process in a different framework
  • Properties of the morphism ensure preservation of part of the behaviour
    • Translations along isomorphisms preserve bisimilarity
a sample application
A sample application
  • Priority SAM: many outputs synchronize with one input, the one with the highest priority is received
  • Suppose we want to execute a Fusion process PF in this framework
  • We can translate it into a Milner PRISMA process PM
  • There is a morphism Hn from Milner to Priority assigning priority n to each output
  • Hn(PM) is a priority process
roadmap5
Roadmap
  • Why PRISMA calculus?
  • Synchronization Algebras with Mobility
  • Syntax and semantics
  • Properties and applications
  • Conclusions and future work
conclusions
Conclusions
  • PRISMA is a mobile calculus suitable to model different kinds of systems
    • Heterogeneous systems
  • Suitable for interoperability analysis
  • Allows to reuse theory and tools for different applications
future work
Future work
  • Put PRISMA at work on more challenging case studies
  • Exploit PRISMA to compare different synchronization models
  • Analyze the relationships with existing calculi
end of talk
End of talk

Thanks

Questions?

ad