mobile calculi

24
Mobile Calculi Prof. Diletta Romana Cacciagrano

Upload: guglielmo-blaney

Post on 01-Jan-2016

32 views

Category:

Documents


1 download

DESCRIPTION

Mobile Calculi. Prof. Diletta Romana Cacciagrano. Contents. From sequential over concurrent to mobile systems Introduction to the Pi-Calculus Operational Equivalences based on labels Operational Equivalences based on reduction Testing preorders Some e xpressiveness results. - PowerPoint PPT Presentation

TRANSCRIPT

Mobile Calculi

Prof. Diletta Romana Cacciagrano

Contents From sequential over concurrent to mobile

systems Introduction to the Pi-Calculus Operational Equivalences based on labels Operational Equivalences based on

reduction Testing preorders Some expressiveness results

A Shift in Theoretical Foundation

The Lambda-Calculus

The Lambda-Calculus

Petri Nets

Petri Nets

Petri Nets Drawbacks

The Pi-Calculus

The Pi-Calculus

Link Passing Mobility

Dynamic Topology

Mobility in the Pi-Calculus

Name mobility (pi-calculus): Processes communicate via names (channel/links) and names may move (cf. hypertext links, mobile phones, object references,..)

Process mobility: Processes communicate via names and processes may move (cf. mobile code, Jini, higher-order languages, load balancing,..)

The choice of the pure name mobility for the Pi-calculus: furthermore, there is no explicit notion of location and distribution.

• mathematically simpler;• other forms of mobility may (sometimes) be reduced to it;• basis for more complex formalisms.

The Pi-Calculus Advantage

Introduction to the Pi-Calculus

A calculus of processes whose linkage structure may change (name mobility or dynamic topology)

• rich and well-developed theory• small, yet a high expressive power• a metalanguage for concurrent languages (OO, higher-

order…)• basis for new programming languages• useful type system

But also:

A basic model of computation, where computing is interaction (cf. lambda-calculus, Turing Machines).

Informal Introduction to the Calculus

A small calculus (and the semantics only involves name-for name substitution) but very expressive

• encoding data structures• encoding functions as processes (Milner, Sangiorgi)• encoding synchronous communication with asynchronous

(Honda-Tokoro, Boudol)• encoding polyadic communication with monadic (Quaglia,

Walker)• encoding choice (or not) (Nestmann, Palamidessi)• ....

Informal Introduction to the Calculus

|

|| |

Informal Introduction to the Calculus

Informal Introduction to the Calculus

Informal Introduction to the Calculus

Informal Introduction to the Calculus

Informal Introduction to the Calculus

Informal Introduction to the Calculus

Informal Introduction to the Calculus