On the expressivity of the Mobile Ambients and the -calculus Linda - - PowerPoint PPT Presentation

on the expressivity of the mobile ambients and the
SMART_READER_LITE
LIVE PREVIEW

On the expressivity of the Mobile Ambients and the -calculus Linda - - PowerPoint PPT Presentation

Outline Introduction The two languages Our encoding Conclusions Future work On the expressivity of the Mobile Ambients and the -calculus Linda Brodo University of Sassari - Italy AMAST, 23-25 June 2010 - Quebec city L. Brodo - On the


slide-1
SLIDE 1

Outline Introduction The two languages Our encoding Conclusions Future work

On the expressivity of the Mobile Ambients and the π-calculus

Linda Brodo

University of Sassari - Italy

AMAST, 23-25 June 2010 - Quebec city

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-2
SLIDE 2

Outline Introduction The two languages Our encoding Conclusions Future work

Introduction The two languages Our encoding Conclusions Future work

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-3
SLIDE 3

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients;

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-4
SLIDE 4

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-5
SLIDE 5

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients;

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-6
SLIDE 6

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients; ◮ C. Fournet, J.-J. L´

evy, A. Schmitt, 2000. An Asynchronous, Distributed Implementation of Mobile Ambients;

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-7
SLIDE 7

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients; ◮ C. Fournet, J.-J. L´

evy, A. Schmitt, 2000. An Asynchronous, Distributed Implementation of Mobile Ambients;

◮ G. Ciobanu, V.A. Zakharov, 2003. Encoding Mobile Ambients

into the π-Calculus;

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-8
SLIDE 8

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients; ◮ C. Fournet, J.-J. L´

evy, A. Schmitt, 2000. An Asynchronous, Distributed Implementation of Mobile Ambients;

◮ G. Ciobanu, V.A. Zakharov, 2003. Encoding Mobile Ambients

into the π-Calculus; [D. Gorla, 2009] proves that a translation from MA to π-calculus is

  • impossible. A translation must have:
  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-9
SLIDE 9

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients; ◮ C. Fournet, J.-J. L´

evy, A. Schmitt, 2000. An Asynchronous, Distributed Implementation of Mobile Ambients;

◮ G. Ciobanu, V.A. Zakharov, 2003. Encoding Mobile Ambients

into the π-Calculus; [D. Gorla, 2009] proves that a translation from MA to π-calculus is

  • impossible. A translation must have:

compositionality, name invariance,

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-10
SLIDE 10

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients; ◮ C. Fournet, J.-J. L´

evy, A. Schmitt, 2000. An Asynchronous, Distributed Implementation of Mobile Ambients;

◮ G. Ciobanu, V.A. Zakharov, 2003. Encoding Mobile Ambients

into the π-Calculus; [D. Gorla, 2009] proves that a translation from MA to π-calculus is

  • impossible. A translation must have:

compositionality, name invariance,

  • perational correspondance,

divergence reflection,

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-11
SLIDE 11

Outline Introduction The two languages Our encoding Conclusions Future work

Previous results on this topic

◮ L. Cardelli, A. Gordon, 2000. Mobile Ambients; (presents a

translation from π-calculus to MA)

◮ D. Sangiorgi, F. Levi, 2000. Controlling Interference in Ambients; ◮ C. Fournet, J.-J. L´

evy, A. Schmitt, 2000. An Asynchronous, Distributed Implementation of Mobile Ambients;

◮ G. Ciobanu, V.A. Zakharov, 2003. Encoding Mobile Ambients

into the π-Calculus; [D. Gorla, 2009] proves that a translation from MA to π-calculus is

  • impossible. A translation must have:

compositionality, name invariance,

  • perational correspondance,

divergence reflection, success sensitiveness.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-12
SLIDE 12

Outline Introduction The two languages Our encoding Conclusions Future work

The motivation for this work

A definition of an encoding that clearly shows the distance between the two calculi.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-13
SLIDE 13

Outline Introduction The two languages Our encoding Conclusions Future work

The motivation for this work

A definition of an encoding that clearly shows the distance between the two calculi. With respect to the requirements in (Gorla, 2009), we do not have

◮ divergence reflection

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-14
SLIDE 14

Outline Introduction The two languages Our encoding Conclusions Future work

The motivation for this work

A definition of an encoding that clearly shows the distance between the two calculi. With respect to the requirements in (Gorla, 2009), we do not have

◮ divergence reflection

Divergence seems to be the intrinsic distance between MA and π.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-15
SLIDE 15

Outline Introduction The two languages Our encoding Conclusions Future work

The syntax of Mobile Ambients

We consider the pure Mobile Ambients, with recursion. P ::= 0 | X | M.P | (νn)P | P|P′ | µX.P | n[P] M ::= in n | out n | open n

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-16
SLIDE 16

Outline Introduction The two languages Our encoding Conclusions Future work

The syntax of Mobile Ambients

We consider the pure Mobile Ambients, with recursion. P ::= 0 | X | M.P | (νn)P | P|P′ | µX.P | n[P] M ::= in n | out n | open n µX.P ≡ P[µX.P/X], up to α-conversion

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-17
SLIDE 17

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-18
SLIDE 18

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In m[n[out m.P|Q]|R] → n[P|Q]|m[R] Out

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-19
SLIDE 19

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In m[n[out m.P|Q]|R] → n[P|Q]|m[R] Out

  • pen n.P|n[Q] → P|Q

Open

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-20
SLIDE 20

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In m[n[out m.P|Q]|R] → n[P|Q]|m[R] Out

  • pen n.P|n[Q] → P|Q

Open P → Q ⇒ (ν n)P → (ν n)Q Res

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-21
SLIDE 21

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In m[n[out m.P|Q]|R] → n[P|Q]|m[R] Out

  • pen n.P|n[Q] → P|Q

Open P → Q ⇒ (ν n)P → (ν n)Q Res P → Q ⇒ n[P] → n[Q] Amb

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-22
SLIDE 22

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In m[n[out m.P|Q]|R] → n[P|Q]|m[R] Out

  • pen n.P|n[Q] → P|Q

Open P → Q ⇒ (ν n)P → (ν n)Q Res P → Q ⇒ n[P] → n[Q] Amb P → Q ⇒ P|R → Q|R Par

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-23
SLIDE 23

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics of Mobile Ambients

n[in m.P|Q]|m[R] → m[n[P|Q]|R] In m[n[out m.P|Q]|R] → n[P|Q]|m[R] Out

  • pen n.P|n[Q] → P|Q

Open P → Q ⇒ (ν n)P → (ν n)Q Res P → Q ⇒ n[P] → n[Q] Amb P → Q ⇒ P|R → Q|R Par P′ ≡ P, P → Q, Q ≡ Q′ ⇒ P′ → Q′ ≡

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-24
SLIDE 24

Outline Introduction The two languages Our encoding Conclusions Future work

The syntax of π-calculus

A polyadic version, with process identifiers: Q ::= 0 | π.Q | (νa)Q | Q|Q′ | Q + Q′ | [x = a]Q | [x = a]Q | Ide(˜ x) = Q, where fn(Q) = ˜ x

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-25
SLIDE 25

Outline Introduction The two languages Our encoding Conclusions Future work

The syntax of π-calculus

A polyadic version, with process identifiers: Q ::= 0 | π.Q | (νa)Q | Q|Q′ | Q + Q′ | [x = a]Q | [x = a]Q | Ide(˜ x) = Q, where fn(Q) = ˜ x π ::= a(˜ x) | a ˜ b

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-26
SLIDE 26

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics (just a few rules) of π-calculus

π.Q

π

− → Q (prefix)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-27
SLIDE 27

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics (just a few rules) of π-calculus

π.Q

π

− → Q (prefix) Q1

θ

− → Q′

1

Q1 + Q2

θ

− → Q′

1

(sum)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-28
SLIDE 28

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics (just a few rules) of π-calculus

π.Q

π

− → Q (prefix) Q1

θ

− → Q′

1

Q1 + Q2

θ

− → Q′

1

(sum) P

a˜ b

− → P′, {˜ b} ∩ fn(P) = ∅ (ν ˜ b)P

a˜ b

− − → P′ (bound out)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-29
SLIDE 29

Outline Introduction The two languages Our encoding Conclusions Future work

The operational semantics (just a few rules) of π-calculus

π.Q

π

− → Q (prefix) Q1

θ

− → Q′

1

Q1 + Q2

θ

− → Q′

1

(sum) P

a˜ b

− → P′, {˜ b} ∩ fn(P) = ∅ (ν ˜ b)P

a˜ b

− − → P′ (bound out) P

a˜ b

− − → P′, Q

a(˜ x)

− − → Q′ P|Q

(a˜ b,a(x))

− − − − − − → (ν ˜ b)(P′|Q′[˜ b/˜ x]) (bound com)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-30
SLIDE 30

Outline Introduction The two languages Our encoding Conclusions Future work

Main mechanisms: who I am, where I am

(a,f) form a pair of unique names, i.e. the coordinates associated to the ambient:

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-31
SLIDE 31

Outline Introduction The two languages Our encoding Conclusions Future work

Main mechanisms: who I am, where I am

(a,f) form a pair of unique names, i.e. the coordinates associated to the ambient:

◮ a records the information who I am - is the unique name of

the ambient,

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-32
SLIDE 32

Outline Introduction The two languages Our encoding Conclusions Future work

Main mechanisms: who I am, where I am

(a,f) form a pair of unique names, i.e. the coordinates associated to the ambient:

◮ a records the information who I am - is the unique name of

the ambient,

◮ f records the information where I am - is the unique name of

the father ambient.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-33
SLIDE 33

Outline Introduction The two languages Our encoding Conclusions Future work

Main mechanisms: who I am, where I am

(a,f) form a pair of unique names, i.e. the coordinates associated to the ambient:

◮ a records the information who I am - is the unique name of

the ambient,

◮ f records the information where I am - is the unique name of

the father ambient.

◮ top identifies the topmost ambient

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-34
SLIDE 34

Outline Introduction The two languages Our encoding Conclusions Future work

The basic dynamics

A = n[in n.P1|m[out n.P2]] | n[open m.P3] | n[P4]

top

  • n[](a,top)
  • n[](b,top)
  • n[](c,top)
  • in n.P(a,top)

1

m[](d,a)

  • pen m.P(b,top)

3

P(c,top)

4

  • ut n.P(d,a)

2

(1)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-35
SLIDE 35

Outline Introduction The two languages Our encoding Conclusions Future work

The basic dynamics

A = n[in n.P1|m[out n.P2]] | n[open m.P3] | n[P4]

top

  • n[](a,top)
  • n[](b,top)
  • n[](c,top)
  • in n.P(a,top)

1

m[](d,a)

  • pen m.P(b,top)

3

P(c,top)

4

  • ut n.P(d,a)

2

(1) B = n[n[P1|m[out n.P2]] | open m.P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • pen m.P(b,top)

3

P(c,top)

4

P(a,b)

1

m[](d,a)

  • ut n.P(d,a)

2

(2)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-36
SLIDE 36

Outline Introduction The two languages Our encoding Conclusions Future work

The basic dynamics

B = n[n[P1|m[out n.P2]] | open m.P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • pen m.P(b,top)

3

P(c,top)

4

P(a,b)

1

m[](d,a)

  • ut n.P(d,a)

2

(2)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-37
SLIDE 37

Outline Introduction The two languages Our encoding Conclusions Future work

The basic dynamics

B = n[n[P1|m[out n.P2]] | open m.P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • pen m.P(b,top)

3

P(c,top)

4

P(a,b)

1

m[](d,a)

  • ut n.P(d,a)

2

(2) C = n[n[P1]|m[P2]|open m.P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • m[](d,b)
  • pen m.P(b,top)

3

P(c,top)

4

P(a,b)

1

P(d,b)

2

(3)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-38
SLIDE 38

Outline Introduction The two languages Our encoding Conclusions Future work

The basic dynamics

C = n[n[P1]|m[P2]|open m.P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • m[](d,b)
  • pen m.P(b,top)

3

P(c,top)

4

P(a,b)

1

P(d,b)

2

(3)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-39
SLIDE 39

Outline Introduction The two languages Our encoding Conclusions Future work

The basic dynamics

C = n[n[P1]|m[P2]|open m.P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • m[](d,b)
  • pen m.P(b,top)

3

P(c,top)

4

P(a,b)

1

P(d,b)

2

(3) D = n[n[P1]|P2|P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • P(b,top)

2

P(b,top)

3

P(c,top)

4

P(a,b)

1

(4)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-40
SLIDE 40

Outline Introduction The two languages Our encoding Conclusions Future work

The basic idea

Amb(top) | Ambn(a,top) | n[in n.out m.O | open s ]

  • Inn(a,top) |

Opens(a,top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-41
SLIDE 41

Outline Introduction The two languages Our encoding Conclusions Future work

Main encoding function

T : PMA × N → Pπ

T (P, top) = (ν ˜ m)Ta(P, top, top)|Amb(top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-42
SLIDE 42

Outline Introduction The two languages Our encoding Conclusions Future work

Main encoding function

T : PMA × N → Pπ

T (P, top) = (ν ˜ m)Ta(P, top, top)|Amb(top)

where:

◮ ˜

m = fn(Ta(P, top,top)),

◮ Ta : PMA × N × N → Pπ

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-43
SLIDE 43

Outline Introduction The two languages Our encoding Conclusions Future work

An example

P = open n.0|n[out n.0]|m[open n.0]

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-44
SLIDE 44

Outline Introduction The two languages Our encoding Conclusions Future work

An example

P = open n.0|n[out n.0]|m[open n.0] T (P, top) ≡ Q = (ν top, a, b, . . . ) Amb(top)|Openn(top, top) | Ambn(a, top)|Outn(a, top) | Ambm(b, top) | Openn(b, top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-45
SLIDE 45

Outline Introduction The two languages Our encoding Conclusions Future work

An example

P = open n.0|n[out n.0]|m[open n.0] T (P, top) ≡ Q = (ν top, a, b, . . . ) Amb(top)|Openn(top, top) | Ambn(a, top)|Outn(a, top) | Ambm(b, top) | Openn(b, top)

  • ut n.0

Openn(top,top) Ambn(a,top) Outn(a,top) Mobile Ambients −Calculus π

top m

Amb(top)

top top top

  • pen n.0

n

top top a

Openn(b,top)

b

Ambm(b,top)

  • pen n.0
  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-46
SLIDE 46

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

P = open n.0|n[out n.0]|m[open n.0]

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-47
SLIDE 47

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

P = open n.0|n[out n.0]|m[open n.0] P → P′ ≡ out n.0|m[open n.0]

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-48
SLIDE 48

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

P = open n.0|n[out n.0]|m[open n.0] P → P′ ≡ out n.0|m[open n.0] Mimicking a capability:

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-49
SLIDE 49

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

P = open n.0|n[out n.0]|m[open n.0] P → P′ ≡ out n.0|m[open n.0] Mimicking a capability: T (P, top)

˜ θ

− →

∗Q′

≡ Amb(top) | Opened(a,top,top)|Outn(a, top) | Ambm(m′, top)|Openn(m′, top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-50
SLIDE 50

Outline Introduction The two languages Our encoding Conclusions Future work

Acting as a link

The code: Opened(a, a′, f ′) = a(x).xa′, f ′.Opened(a, a′, f ′) + a(x, x′).xa′, f ′.Opened(a, a′, f ′)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-51
SLIDE 51

Outline Introduction The two languages Our encoding Conclusions Future work

Running encoding processes

T (P, top) = Q

θ

− → Q′ ≡ (νtop, a, . . . )Amb(top)|Opened(a,top,top)|Outn(a, top)|Ambm(m′, top)|Openn(m′, top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-52
SLIDE 52

Outline Introduction The two languages Our encoding Conclusions Future work

Running encoding processes

T (P, top) = Q

θ

− → Q′ ≡ (νtop, a, . . . )Amb(top)|Opened(a,top,top)|Outn(a, top)|Ambm(m′, top)|Openn(m′, top)

◮ Process Opened(a,top,top) has substituted the dissolved

Ambn(a,top).

◮ The old coordinates will be updated as soon as Outn(a,top)

will try to mimic the ‘out n’ capability. Opened(a,top,top) only acts as a link between the old channel name a of the dissolved ambient, and the unique channel name top associated to the ambient which has taken its place.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-53
SLIDE 53

Outline Introduction The two languages Our encoding Conclusions Future work

Running encoding processes

T (P, top) = Q

θ

− → Q′ ≡ (νtop, a, . . . )Amb(top)|Opened(a,top,top)|Outn(a, top)|Ambm(m′, top)|Openn(m′, top)

◮ Process Opened(a,top,top) has substituted the dissolved

Ambn(a,top).

◮ The old coordinates will be updated as soon as Outn(a,top)

will try to mimic the ‘out n’ capability. Opened(a,top,top) only acts as a link between the old channel name a of the dissolved ambient, and the unique channel name top associated to the ambient which has taken its place.

T (P′, top) = Q′′ ≡ (ν top, b, . . . ) Amb(top) | Outn(top, top) | Ambm(b, top)|Openn(b, top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-54
SLIDE 54

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

Now we have that: Q′ ≡ Amb(top)| Opened(a,top,top)|Outn(a, top)|Ambm(m′, top)|Openn(m′, top)

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-55
SLIDE 55

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

Now we have that: Q′ ≡ Amb(top)| Opened(a,top,top)|Outn(a, top)|Ambm(m′, top)|Openn(m′, top) while

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-56
SLIDE 56

Outline Introduction The two languages Our encoding Conclusions Future work

Encoding processes at work

Now we have that: Q′ ≡ Amb(top)| Opened(a,top,top)|Outn(a, top)|Ambm(m′, top)|Openn(m′, top) while T (P′, top) = Q′′ ≡ (ν top, b) Amb(top) | Outn(top, top) | Ambm(b, top)|Openn(b, top) Q′ differs from Q′′ as it contains the subprocess Opened(a, top, top) and different coordinates for Outn(a, top).

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-57
SLIDE 57

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

◮ The set of encoding π-calculus processes:

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-58
SLIDE 58

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

◮ The set of encoding π-calculus processes:

◮ Aπ = {Q |∃P ∈ PMA s.t. Q ≡ T (P, top)}

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-59
SLIDE 59

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

◮ The set of encoding π-calculus processes:

◮ Aπ = {Q |∃P ∈ PMA s.t. Q ≡ T (P, top)}

◮ The set of the derivatives of the encoding processes

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-60
SLIDE 60

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

◮ The set of encoding π-calculus processes:

◮ Aπ = {Q |∃P ∈ PMA s.t. Q ≡ T (P, top)}

◮ The set of the derivatives of the encoding processes

◮ Aπop = {Q′ | Q →∗ Q′, Q ∈ Aπ Aπ, Q′ ≡ ΠN

i=1(ν ˜

mi)Idei( ˜ mi)}

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-61
SLIDE 61

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

◮ The set of encoding π-calculus processes:

◮ Aπ = {Q |∃P ∈ PMA s.t. Q ≡ T (P, top)}

◮ The set of the derivatives of the encoding processes

◮ Aπop = {Q′ | Q →∗ Q′, Q ∈ Aπ Aπ, Q′ ≡ ΠN

i=1(ν ˜

mi)Idei( ˜ mi)}

◮ i.e. those processes that differs from Aπ because may contain

Opened() subprocesses.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-62
SLIDE 62

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

The equivalence relation ≃ deals with the presence of the identifiers Opened(. . . ) in the derivatives of translating processes.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-63
SLIDE 63

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

The equivalence relation ≃ deals with the presence of the identifiers Opened(. . . ) in the derivatives of translating processes. It relates processes that contain Opened() processes, with those processes that do not, but that may mimic the same capabilities: If R ∈ Aπop

(i.e. contains Opened() processes) and it exists a process Q ∈ Aπ (doesn’t) and still may mimic the same set of capabilities

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-64
SLIDE 64

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

The equivalence relation ≃ deals with the presence of the identifiers Opened(. . . ) in the derivatives of translating processes. It relates processes that contain Opened() processes, with those processes that do not, but that may mimic the same capabilities: If R ∈ Aπop

(i.e. contains Opened() processes) and it exists a process Q ∈ Aπ (doesn’t) and still may mimic the same set of capabilities

then we write R ≃ Q.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-65
SLIDE 65

Outline Introduction The two languages Our encoding Conclusions Future work

Syntactic characterization

The equivalence relation ≃ deals with the presence of the identifiers Opened(. . . ) in the derivatives of translating processes. It relates processes that contain Opened() processes, with those processes that do not, but that may mimic the same capabilities: If R ∈ Aπop

(i.e. contains Opened() processes) and it exists a process Q ∈ Aπ (doesn’t) and still may mimic the same set of capabilities

then we write R ≃ Q.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-66
SLIDE 66

Outline Introduction The two languages Our encoding Conclusions Future work

The notions of traces

A capability execution in MA: P → P′ A capability mimicking in π-calculus: T (P, top)

θ1

− → . . . θn − → Q′

◮ Q′ records the effects of a capability simulation,

ξ = θ1 . . . θn is a simulating trace

◮ if Q′ ≡ T (P, top) then we have an aborting trace

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-67
SLIDE 67

Outline Introduction The two languages Our encoding Conclusions Future work

The simulation of a capability

  • P
  • P

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-68
SLIDE 68

Outline Introduction The two languages Our encoding Conclusions Future work

The simulation of a capability

  • P
  • P

Simulating trace:ξ

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-69
SLIDE 69

Outline Introduction The two languages Our encoding Conclusions Future work

The simulation of a capability

  • P
  • P

Simulating trace:ξ

ξ ∗

  • Q
  • Q

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-70
SLIDE 70

Outline Introduction The two languages Our encoding Conclusions Future work

The simulation of a capability

  • P
  • P

Simulating trace:ξ

ξ ∗

  • Q
  • Q

  • P
  • P

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-71
SLIDE 71

Outline Introduction The two languages Our encoding Conclusions Future work

The simulation of a capability

  • P
  • P

Simulating trace:ξ

ξ ∗

  • Q
  • Q

  • P
  • P

Aborting trace:ξ

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-72
SLIDE 72

Outline Introduction The two languages Our encoding Conclusions Future work

The simulation of a capability

  • P
  • P

Simulating trace:ξ

ξ ∗

  • Q
  • Q

  • P
  • P

Aborting trace:ξ

  • Q

∗ ξ

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-73
SLIDE 73

Outline Introduction The two languages Our encoding Conclusions Future work

Ordered execution of traces

  • P1
  • P2

...

  • Pn
  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-74
SLIDE 74

Outline Introduction The two languages Our encoding Conclusions Future work

Ordered execution of traces

  • P1
  • P2

...

  • Pn

Assuming to execute orderly a trace per time.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-75
SLIDE 75

Outline Introduction The two languages Our encoding Conclusions Future work

Ordered execution of traces

  • P1
  • P2

...

  • Pn

Assuming to execute orderly a trace per time.

  • Q1

ξ1 ∗

ξ′

1

  • Q2

ξ2 ∗

ξ′

2

  • ...

ξ1 ∗

  • Qm
  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-76
SLIDE 76

Outline Introduction The two languages Our encoding Conclusions Future work

Weak soundness

Let P be a MA process, if T (P, top) = Q

˜ θa

− →

∗Q′, then ∃ P′, Q′′ such that Q′ ˜ θb

− →

∗Q′′,

Q′′ ≃ T (P′, top) with P →∗ P′.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-77
SLIDE 77

Outline Introduction The two languages Our encoding Conclusions Future work

Completeness

Let P be a MA process, if P →∗ P′ then there exists a process Q′ such that T (P, top)

˜ θ

− →

∗Q′ and T (P′, top) ≃ Q′.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-78
SLIDE 78

Outline Introduction The two languages Our encoding Conclusions Future work

Who I am - Where I am

A clear separation of the two information.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-79
SLIDE 79

Outline Introduction The two languages Our encoding Conclusions Future work

Who I am - Where I am

A clear separation of the two information. D = n[n[P1]|P2|P3] | n[P4]

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-80
SLIDE 80

Outline Introduction The two languages Our encoding Conclusions Future work

Who I am - Where I am

A clear separation of the two information. D = n[n[P1]|P2|P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • P(b,top)

2

P(b,top)

3

P(c,top)

4

P(a,b)

1

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-81
SLIDE 81

Outline Introduction The two languages Our encoding Conclusions Future work

Who I am - Where I am

A clear separation of the two information. D = n[n[P1]|P2|P3] | n[P4]

top

  • n[](b,top)
  • n[](c,top)
  • n[](a,b)
  • P(b,top)

2

P(b,top)

3

P(c,top)

4

P(a,b)

1

The ambient construct delimits a computing environment, and also holds a precise position within a hierarchical structure, hence each ambient has a unique ‘address’.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-82
SLIDE 82

Outline Introduction The two languages Our encoding Conclusions Future work

The two transition systems

A clear relation between the two transition systems.

  • P1
  • P2

...

  • Pn
  • Q1

ξ1 ∗

ξ′

1

  • Q2

ξ2 ∗

ξ′

2

  • ...

ξ1 ∗

  • Qm
  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-83
SLIDE 83

Outline Introduction The two languages Our encoding Conclusions Future work

Behavioral characterization and LTL for MA

◮ A more elegant characterization between the two languages in

terms of a behavioral equivalence, for example the testing equivalence.

◮ The understanding of the two roles of the ambients

(Who-I-am,Where-I-am) could help in defining a simple LTL for MA.

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010
slide-84
SLIDE 84

Outline Introduction The two languages Our encoding Conclusions Future work

Merci de votre attention

  • L. Brodo - On the expressivity of the Mobile Ambients and the π-calculus - AMAST, 2010