38
Probabilistic Modular Embedding for Stochastic Coordinated Systems Stefano Mariani, Andrea Omicini {s.mariani, andrea.omicini}@unibo.it Dipartimento di Informatica: Scienza e Ingegneria (DISI) Alma Mater Studiorum—Universit` a di Bologna COORDINATION2013 - Firenze, Italy, 3-5/6/2013 Mariani, Omicini (Universit` a di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 1 / 38

Probabilistic Modular Embedding for Stochastic Coordinated Systems

Embed Size (px)

DESCRIPTION

Embedding and modular embedding are two well-known tech- niques for measuring and comparing the expressiveness of languages— sequential and concurrent programming languages, respectively. The emer- gence of new classes of computational systems featuring stochastic be- haviours – such as pervasive, adaptive, self-organising systems – requires new tools for probabilistic languages. In this paper, we recall and refine the notion of probabilistic modular embedding (PME) as an extension to modular embedding meant to capture the expressiveness of stochas- tic systems, and show its application to different coordination languages providing probabilistic mechanisms for stochastic systems.

Citation preview

Page 1: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embeddingfor Stochastic Coordinated Systems

Stefano Mariani, Andrea Omicini{s.mariani, andrea.omicini}@unibo.it

Dipartimento di Informatica: Scienza e Ingegneria (DISI)Alma Mater Studiorum—Universita di Bologna

COORDINATION2013 - Firenze, Italy, 3-5/6/2013

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 1 / 38

Page 2: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 2 / 38

Page 3: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 3 / 38

Page 4: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

Comparing Languages Expressiveness

Understanding expressiveness of coordination languages is essential to dealwith interactions complexity [Wegner, 1997]

The notion of modular embedding [de Boer and Palamidessi, 1994] isparticularly effective in comparing the relative expressiveness of concurrentlanguages

A new kind of systems

However, the emergence of systems featuring stochastic behaviours[Omicini and Viroli, 2011] is asking for new techniques to observe, modeland measure their expressiveness.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 4 / 38

Page 5: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

Shapiro’s Embedding

The informal definition of embedding assumes that a language could betranslated in another [Shapiro, 1991]:

Easily — “without the need for a global reorganisation of the program”

Equivalently — “without affecting the program’s observable behaviour”

Formally

Given two languages L, L′, their program sets ProgL,ProgL′ , and the powersets of

their observable behaviours Obs,Obs ′, we assume that two observation criteria

Ψ,Ψ′ hold:

Ψ : ProgL → Obs Ψ′ : ProgL′ → Obs ′

Then, L embeds L′ (written L � L′) iff there exist a compiler C : ProgL′ → ProgLand a decoder D : Obs → Obs ′ such that for every program W ∈ L′

D(Ψ[C (W )]) = Ψ′[W ]

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 5 / 38

Page 6: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

Modular Embedding I

According to [de Boer and Palamidessi, 1994] such definition is tooweak, because any pair of Turing-complete languages would embedeach other

So they propose the definition of modular embedding1 (ME):

D can be defined independently for each of all the possible outcomes ofall the possible computations:

∀O ∈ Obs : D(O) = {d(o) | o ∈ O} (for some d)

In a concurrent setting it is reasonable to require compositionality ofthe compiler C :

C (A ||′ B) = C (A) || C (B) , C (A +′ B) = C (A) + C (B)

for every pair of programs A,B ∈ L′.Deadlocks should be considered and preserved by decoder D:

∀O ∈ Obs, ∀o ∈ O : tm′(Dd(o)) = tm(o)

where tm and tm′ are L and L′ termination modes.

1We stick with symbol � since we assume this definition as our “reference” embedding.Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 6 / 38

Page 7: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

ME At Work I

In [Bravetti et al., 2005], the ProbLinCa calculus is defined:

as the probabilistic extension of the LinCa calculus

in which each tuple gets a weight resembling selection probability: thehigher the weight, the higher its matching chance

ProbLinCa vs. LinCa

Suppose the following ProbLinCa process P and LinCa process Q are acting on

tuple space S :

P = inp(T ).∅+ inp(T ).rdp(T ′).∅ Q = in(T ).∅+ in(T ).rd(T ′).∅S = 〈tl[20], tr[10]〉

where T is a Linda template matching both tuples tl and tr, whereas T ′

matches tr solely.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 7 / 38

Page 8: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

ME At Work II

From the ME viewpoint, P and Q are not distinguishable, being their ending

states the same:

Ψ[P] = (success, 〈tr[10]〉) or (deadlock, 〈tl[20]〉)Ψ[Q] = (success, 〈tr[10]〉) or (deadlock, 〈tl[20]〉)

Quantity vs. quality

The point is, that whereas P and Q are qualitatively equivalent, they arenot so quantitatively, but ME cannot tell apart the probabilisticinformation conveyed by, e.g., a ProbLinCa primitive w.r.t. a LinCa one.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 8 / 38

Page 9: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Motivations & Background

ME At Work III

In fact, a “two-way” modular encoding can be established by defining compilers

C and C ′ as

CLinCa =

out 7−→ out

rd 7−→ rdp

in 7−→ inp

CProbLinCa =

out 7−→ out

rdp 7−→ rd

inp 7−→ in

ME observational equivalence

Therefore,

ProbLinCa � LinCa ∧ LinCa � ProbLinCa

=⇒ProbLinCa ≡Ψ LinCa

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 9 / 38

Page 10: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 10 / 38

Page 11: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding

Redefining “Easily” and “Equivalently” I

Restricting ourselves to asynchronous coordination calculi, a process can be saidto be easily mappable into another if it requires:

1 no extra-computations to mimic complex coordination operators

2 no extra-coordinators (neither coordinated processes nor coordinationmedium) to handle suspensive semantics

3 no unbounded extra-interactions to perform additional coordination

Focus on coordination primitives

Altogether, such requirements are necessary if the goal is to focus on“pure coordination expressiveness”, that is, we intentionally considercoordination primitives solely, abstracting away from processes andcoordination media own “algorithmic expressiveness”.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 11 / 38

Page 12: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding

Redefining “Easily” and “Equivalently” II

The notions of observables and termination need to be re-casted in the

probabilistic setting to re-define the term equivalently:

Probabilistic Observation — Observable actions should be associated withtheir execution probability, driven by synchronisationopportunities offered by the coordination medium atrun-time.

Probabilistic Termination — Ending states should be defined as those forwhich all outgoing transitions have probability 0.Furthermore, they should be refined with the probability ofreaching that state from a given initial one.

By meeting the three requirements and these two definitions, we shift fromME to Probabilistic Modular Embedding (PME).

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 12 / 38

Page 13: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Probabilistic Observation

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 13 / 38

Page 14: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Probabilistic Observation

Probabilistic Observation

Function Θ

Formally, we define the probabilistic observation function (Θ), mapping aprocess (W ) into observables, as follows:

Θ[W ] ={

(ρ,W [µ]) | (W , 〈σ〉) −→∗ (ρ,W [µ])}

where ρ is a probability value ∈ [0, 1], µ is a sequence of actual synchronisations –

e.g. µ = µ(T1, t1), . . . , µ(Tn, tn) – and σ is the space state—e.g. σ = 〈t1, . . . , tn〉.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 14 / 38

Page 15: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Probabilistic Termination

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 15 / 38

Page 16: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Probabilistic Termination

Probabilistic Termination

Function Φ

Analogously, we define reachability value ρ⊥ and the probabilistictermination function Φ as follows:

Φ[W ] ={

(ρ⊥, τ) | (W , 〈σ〉) −→∗⊥ (ρ⊥, τ)}

where subscript ⊥ stands for a sequence of finite transitions leading to

termination state τ 2.

Notice that Φ abstracts away from computation traces, that is, it does notkeep track of synchronisations in term W [µ], focussing solely ontermination states τ .

2E.g. τ = success, failure, deadlock, undefined.Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 16 / 38

Page 17: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Formal Tools

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 17 / 38

Page 18: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Formal Tools

Probability Aggregation Functions

From probability theory:

the probability of a sequence – that is, a “dot”-separated list – ofprobabilistic actions is the product of the probabilities of such actions

the probability of a choice – that is, a “+”-separated list – of probabilisticactions is the sum of the probabilities of such actions

Then we define the sequence probability aggregation function (ν) and the choice

probability aggregation function (ν+) as follows:

ν and ν+ functions

ν : W × 〈σ〉 7→ ρ where ρ =∏n

j=0{pj | (pj , µ¯) ∈ Θ[W = ¯.W ′])}ν+ : W × 〈σ〉 7→ ρ where ρ =

∑nj=0{pj | (pj , µ`+) ∈ Θ[W = `+.W ′])}

where ¯ is a sequence of synchronisation actions and `+ is a choice between

synchronisation actions.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 18 / 38

Page 19: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Formal Tools

The “↑” Operator I

[Bravetti, 2008] proposes a formalism to deal with those open transitionsystems which require quantitative information to be attached tosynchronisation actions at run-time.

The idea is that of partially closing labelled transition systems via theprocess-algebraic operator “↑”, as follows:

1 actions labelling open transitions are equipped with handles

2 ↑ composes a LTS to a specification G , associating each handle to a givennumeric value

3 quantitative information is computed from handle values for each enabledaction

4 quantitatively-labelled actions turn an open transition into a reductionwhose execution is driven by such quantitative information

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 19 / 38

Page 20: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Formal Tools

The “↑” Operator II

The ↑ operator can be used to compute synchronisations probability forPME, e.g. in the case of ProbLinCa:

1 handles represent tuple templates associated to coordination primitives

2 handles listed in term G represent tuples offered by the tuple space (atrun-time)

3 G associates handles to their weight

4 closure operator ↑ matches admissible synchronisations between a processand the tuple space, cutting out unavailable actions and computingadmissible ones probability

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 20 / 38

Page 21: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embedding Formal Tools

In Practice I

Given a single probabilistic observable transition step for, e.g., a ProbLinCa

process:

inp(T ).P | 〈t1[w1], .., tn[wn]〉µ(T ,tj )−→ pj P[tj/T ] | 〈t1[w1], .., tn[wn]〉\tj

we can expand its reduction steps to unambiguously define its probabilistic

semantics:

inp(T ).P | 〈t1[w1], .., tn[wn]〉T−→

inp(T ).P | 〈t1[w1], .., tn[wn]〉 ↑ {(t1,w1), .., (tn,wn)}↪→

inp(T ).P | 〈t1[w1], .., tn[wn]〉 ↑ {(t1, p1), .., (tj , pj ), .., (tn, pn)}tj−→pj

P[tj/T ] | 〈t1[w1], .., tn[wn]〉\tj

Coupling this with the probability aggregation functions ν and ν+, we arenow ready to compute PME Θ and Φ functions.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 21 / 38

Page 22: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 22 / 38

Page 23: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies ProbLinCa vs. LinCa

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 23 / 38

Page 24: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies ProbLinCa vs. LinCa

ProbLinCa vs. LinCa I

Recall P and Q?

P = inp(T ).∅+ inp(T ).rdp(T ′).∅ Q = in(T ).∅+ in(T ).rd(T ′).∅S = 〈tl[20], tr[10]〉

By repeating the embedding observation, but now under the assumptionsof PME, we get:

Φ[P] = (0.6, success) or (0.3, deadlock)

Φ[Q] = (•, success) or (•, deadlock)

where symbol • denotes “absence of information”.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 24 / 38

Page 25: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies ProbLinCa vs. LinCa

ProbLinCa vs. LinCa II

PME tells apart ProbLinCa

This time, only a “one-way” encoding can be established, by definingcompiler CLinCa as

CLinCa =

out 7−→ out

rd 7−→ rdp

in 7−→ inp

Therefore, we can state that ProbLinCa probabilistically embeds (�p)LinCa, but not the opposite:

ProbLinCa �p LinCa ∧ LinCa 6�p ProbLinCa

=⇒ProbLinCa 6≡p LinCa

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 25 / 38

Page 26: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies pKlaim vs. Klaim

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 26 / 38

Page 27: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies pKlaim vs. Klaim

pKlaim vs. Klaim I

Klaim [De Nicola et al., 1998] is a kernel programming language formobile computing.

processes as well as data can be moved across the network amongcomputing environments

features Linda with multiple tuple spaces

localities are first-class abstractions to manage mobility anddistribution-related aspects

pKlaim

pKlaim [Di Pierro et al., 2004] extends such model through:

a probabilistic choice operator +ni=1pi : Pi

a probabilistic parallel operator |ni=1 pi : Pi

probabilistic allocation environments, formally defined as a partial mapσ : Loc 7→ Dist(S) associating probability distributions on physical sites (S)to logical localities (Loc)

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 27 / 38

Page 28: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies pKlaim vs. Klaim

pKlaim vs. Klaim II

First of all, we focus on the probabilistic choice operator:

P = 23in(T )@s.∅+ 1

3in(T )@s.rd(T )@s.∅

Q = in(T )@s.∅+ in(T )@s.rd(T )@s.∅s = out(t)@self.∅ ≡ s = 〈t〉

Both processes have a non-deterministic branching structure which cannotbe distinguished by ME:

Ψ[P] = (success, 〈 〉) or (deadlock, 〈 〉)Ψ[Q] = (success, 〈 〉) or (deadlock, 〈 〉)

PME tells apart probabilistic choice

PME is instead sensitive to the probabilistic information available forpKlaim process P:

Φ[P] = (0.6, success) or (0.3, deadlock)

Φ[Q] = (•, success) or (•, deadlock)

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 28 / 38

Page 29: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies pKlaim vs. Klaim

pKlaim vs. Klaim III

As regards the probabilistic allocation operator:

P = in(T )@l .∅ Q = in(T )@l .∅

s1 = 〈t〉 s2 = 〈 〉 σ : l 7→{ 2

3s1

13s2

By applying ME we get:

Ψ[P] = (success, s1 = 〈 〉 ∧ s2 = 〈 〉) or (deadlock, s1 = 〈t〉 ∧ s2 = 〈 〉)Ψ[Q] = (success, s1 = 〈 〉 ∧ s2 = 〈 〉) or (deadlock, s1 = 〈t〉 ∧ s2 = 〈 〉)

PME tells apart probabilistic allocation

Whereas ME is insensitive to the probabilistic allocation function σ, PMEprovides “probability-sensitive” observation/termination functions:

Φ[P] = (0.6, success) or (0.3, deadlock)

Φ[Q] = (•, success) or (•, deadlock)

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 29 / 38

Page 30: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies πpa-calculus vs. πa-calculus

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 30 / 38

Page 31: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies πpa-calculus vs. πa-calculus

πpa-calculus vs. πa-calculus I

πpa-calculus [Herescu and Palamidessi, 2001] increases the expressive power of

πa-calculus [Boudol, 1992] through a probabilistic guarded choice operator

(∑

i piαi .Pi ) able to distinguish between probabilistic and purely

non-deterministic behaviours.

P =(

23x(y) + 1

3z(y)

).∅ Q =

(x(y) + z(y)

).∅

S = xy ≡ S = {Sx = 〈y〉⋃

Sz = 〈 〉}

As expected, they are indistinguishable despite the probabilistic information

available for P, which is lost by ME:

Ψ[P] = (success, 〈 〉) or (deadlock, 〈y〉)Ψ[Q] = (success, 〈 〉) or (deadlock, 〈y〉)

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 31 / 38

Page 32: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Early Case Studies πpa-calculus vs. πa-calculus

πpa-calculus vs. πa-calculus II

PME tells apart πpa-calculus

PME fills the gap:

Φ[P] = (0.6, success) or (0.3, deadlock)

Φ[Q] = (•, success) or (•, deadlock)

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 32 / 38

Page 33: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Conclusion & Further Works

Outline

1 Motivations & Background

2 Probabilistic Modular EmbeddingProbabilistic ObservationProbabilistic TerminationFormal Tools

3 Early Case StudiesProbLinCa vs. LinCa

pKlaim vs. Klaimπpa-calculus vs. πa-calculus

4 Conclusion & Further Works

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 33 / 38

Page 34: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Conclusion & Further Works

Conclusion & Further Works I

We refined and extended the definition of probabilistic modularembedding (PME) first sketched in [Mariani and Omicini, 2013]

We showed how PME succeeds in telling apart probabilistic languagesfrom non-probabilistic ones

A first step

Whereas apparently trivial, such distinction directly at the language levelwas not possible so far, to the best of our knowledge.

Next steps

A less trivial step for PME, is to tell apart expressiveness of the differentprobabilistic processes models proposed in [van Glabbeek et al., 1995],which is currently under investigation.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 34 / 38

Page 35: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Bibliography

Bibliography I

Boudol, G. (1992).Asynchrony and the Pi-calculus.Rapport de recherche RR-1702, INRIA.

Bravetti, M. (2008).Expressing priorities and external probabilities in process algebra via mixed open/closedsystems.Electronic Notes in Theoretical Computer Science, 194(2):31–57.

Bravetti, M., Gorrieri, R., Lucchi, R., and Zavattaro, G. (2005).Quantitative information in the tuple space coordination model.Theoretical Computer Science, 346(1):28–57.

de Boer, F. S. and Palamidessi, C. (1994).Embedding as a tool for language comparison.Information and Computation, 108(1):128–157.

De Nicola, R., Ferrari, G., and Pugliese, R. (1998).KLAIM: A kernel language for agent interaction and mobility.IEEE Transaction on Software Engineering, 24(5):315–330.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 35 / 38

Page 36: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Bibliography

Bibliography II

Di Pierro, A., Hankin, C., and Wiklicky, H. (2004).Probabilistic KLAIM.In De Nicola, R., Ferrari, G.-L., and Meredith, G., editors, Coordination Models andLanguages, volume 2949 of LNCS, pages 119–134. Springer Berlin / Heidelberg.6th International Conference (COORDINATION 2004), 24-27 February 2004, Pisa, Italy.

Herescu, O. M. and Palamidessi, C. (2001).Probabilistic asynchronous pi-calculus.CoRR, cs.PL/0109002.

Mariani, S. and Omicini, A. (2013).Probabilistic embedding: Experiments with tuple-based probabilistic languages.In 28th ACM Symposium on Applied Computing (SAC 2013), pages 1380–1382, Coimbra,Portugal.Poster Paper.

Omicini, A. and Viroli, M. (2011).Coordination models and languages: From parallel computing to self-organisation.The Knowledge Engineering Review, 26(1):53–59.Special Issue 01 (25th Anniversary Issue).

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 36 / 38

Page 37: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Bibliography

Bibliography III

Shapiro, E. (1991).Separating concurrent languages with categories of language embeddings.In 23rd Annual ACM Symposium on Theory of Computing.

van Glabbeek, R. J., Smolka, S. A., and Steffen, B. (1995).Reactive, generative, and stratified models of probabilistic processes.Information and Computation, 121(1):59–80.

Wegner, P. (1997).Why interaction is more powerful than algorithms.Communications of the ACM, 40(5):80–91.

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 37 / 38

Page 38: Probabilistic Modular Embedding for Stochastic Coordinated Systems

Probabilistic Modular Embeddingfor Stochastic Coordinated Systems

Stefano Mariani, Andrea Omicini{s.mariani, andrea.omicini}@unibo.it

Dipartimento di Informatica: Scienza e Ingegneria (DISI)Alma Mater Studiorum—Universita di Bologna

COORDINATION2013 - Firenze, Italy, 3-5/6/2013

Mariani, Omicini (Universita di Bologna) PME for Stochastic Coordinated Systems COORDINATION, 4/6/2013 38 / 38