Combining Timing, Localities and Migration in a Process Calculus - - PowerPoint PPT Presentation

combining timing localities and migration in a process
SMART_READER_LITE
LIVE PREVIEW

Combining Timing, Localities and Migration in a Process Calculus - - PowerPoint PPT Presentation

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions Combining Timing, Localities and Migration in a Process Calculus Andrew


slide-1
SLIDE 1

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Combining Timing, Localities and Migration in a Process Calculus

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew

Department of Computer Science University of Sheffield

BCTCS - 05/04/2006

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-2
SLIDE 2

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Outline

1

Introduction

2

The Starting Point: A Calculus with Global Synchronization

3

Localities: The First Step to Mobility

4

Migration Gives Mobility

5

Further Thoughts and Conclusions

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-3
SLIDE 3

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Aim

Combine discrete time and mobility to gain a calculus with:

Global synchronization Localities Migration

Two routes: we take that of adding mobility to a calculus with global synchronization. Be as conservative as possible.

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-4
SLIDE 4

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Motivation

Masters project developed semantics for the Cashew-S web-service orchestration language [Norton, Foster and Hughes, 2005] Used the Calculus for Synchrony and Encapsulation (CaSE) [Norton, Lüttgen and Mendler, 2005], a conservative extension of CCS Idea: Would be interesting to extend CaSE with mobility

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-5
SLIDE 5

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Hennessy’s Temporal Process Language (TPL)

CCS with the addition of a single clock. Time, but not as we naively know it. Primary motivation is synchronization Exhibits a phenomenon known as maximal progress The clock ticks after all τ actions.

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-6
SLIDE 6

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Timeouts

Example ⌊E⌋σ(F) E and F are processes and σ is a clock. F acts if E times out on the clock σ

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-7
SLIDE 7

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Scaling Synchronization

Example a.0 | a.0 Easy to do local synchronization in CCS – one sender, one receiver. But what about with an arbitrary number (n) of processes? Can be done, but not compositionally

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-8
SLIDE 8

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

The Problem

Example a1.a2.E | a1.F| a2.G We can model the case with two receivers fine. . .

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-9
SLIDE 9

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

The Problem

Example a1.a2.a3.E | a1.F | a2.G | a3.H But further composition requires rebuilding the semantics

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-10
SLIDE 10

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

The Solution

Example µX.⌊o.X⌋σ(P) | o.E | o.F | o.G Recursive output with the clock signal effectively the base case. Clock will tick when no more synchronizations can occur.

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-11
SLIDE 11

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Hierarchies

Multiple clocks Arranged in hierarchies Accomplished via clock hiding Example ((E|F)/σ)|G

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-12
SLIDE 12

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Broadcast

  • σ

i σ

µX.i.(µY.⌊o.Y⌋σ(X)) + ∆ Insistence is provided by the timelock operator, ∆

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-13
SLIDE 13

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

What are Localities?

Localities group a set of composed processes. Multitude of uses – common one is distribution Nested localities echo clock hiding We combine the two.

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-14
SLIDE 14

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

A Slight Syntax Change

Example ((E|F)/σ)|G Example (l[E|F]{σ})|G Consider

uniqueness of locality names structure – one top-level locality or more?

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-15
SLIDE 15

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Merging in Ideas from Ambient-based Calculi

We allow our localities to be moved. Adopt ambient-like capabilities:

in n

  • ut n

Expand on this to increase granularity

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-16
SLIDE 16

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

An Example

in n.out n.P n m

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-17
SLIDE 17

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

An Example

  • ut n.P

n m

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-18
SLIDE 18

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

An Example

P n m

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-19
SLIDE 19

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Communication Between Ambients

Two choices:

1

  • pen n – dissolve n from the parent

2

  • r add the following Seal calculus primitives, as does Boxed

Ambients [Bugliesli, Castagna and Crafa, 2001]:

an (to child n) a↑ (to parent) Or generalize to just an, where n is an arbitrary locality

Depends on the use of the model

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-20
SLIDE 20

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Using the New Calculus

Lots of uses we can think of. . . Because lots of complex systems with componentisation and dynamic elements Hopefully feed some of this back into the Cashew project Useful test base

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-21
SLIDE 21

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Our Case Study: Biology

Lots of cases of moving elements with internal synchronization Ambients already used in this context P-systems similar and imply a clock Interesting area to look into

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-22
SLIDE 22

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Further Points

Mobility via value passing Give clocks a value for broadcast Typing of processes (given names, processes, clocks and localities)

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-23
SLIDE 23

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

Conclusions

Started with CaSE Added localities and migration Applications specifically web service composition and biology Lots of possibilities to take it even further. . .

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-24
SLIDE 24

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

The End

Thanks for listening.

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus

slide-25
SLIDE 25

Introduction The Starting Point: A Calculus with Global Synchronization Localities: The First Step to Mobility Migration Gives Mobility Further Thoughts and Conclusions

NORTON, B., FOSTER, S., AND HUGHES, A. A compositional operational semantics for OWL-S. In Proceedings of the 2nd International Workshop on Web Services and Formal Methods (WS-FM 2005) (September 2005), no. 3670 in LNCS, Springer-Verlag, pp. 303–317. NORTON, B., LÜTTGEN, G., AND MENDLER, M. A compositional semantic theory for synchronous component-based design. In Proceedings of the 14th International Conference on Concurreny Theory (CONCUR ’03) (2003), no. 2761 in LNCS, Springer-Verlag. BUGLIESLI, M., CASTAGNA, G., AND CRAFA, S. Boxed ambients. In (TACS ’01) (2001), vol. 2215 of LNCS, pp. 38–63.

Andrew Hughes http://www.dcs.shef.ac.uk/~andrew Combining Timing, Localities and Migration in a Process Calculus