Mobile Process in Unifying Theories

This report presents the initial work in the development of a theory of mobile processes in Circus, a language for describing state-based reactive systems. The mathematical basis for the work is Hoare and He's Unifying Theories of Programming (UTP), where the alphabetised relational calculus is used to provide a common framework for the semantics and refinement calculus of different programming paradigms. As our first step, we study the denotational semantics of mobile processes in UTP. Process mobility is interpreted as the assignment or communication of higher-order variables, whose values are process constants or parameterised processes, in which the target variables update their values and the source variables lose their values. We then present a set of algebraic and refinement to be used for the development of mobile systems. The correctness of these laws can be ensured by the UTP semantics of mobile processes. We illustrate our theory through a simple example that can be implemented in both a centralised and a distributed way. First, we present the pi-calculus specification for both systems and demonstrate that they are observationally equivalent. Next, we show how the centralised system may be derived into the distributed one using our proposed laws. By formalising mobile processes and studying their refinement laws in the same semantic framework of Circus, they can be included in Circus' refinement calculus to enhance Circus with the ability to develop networks of mobile processes.

[1]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

[2]  Jim Woodcock,et al.  A Concurrent Language for Refinement , 2001, IWFM.

[3]  J. Woodcock,et al.  Refinement in Circus , 2002, FME.

[4]  C. A. R. Hoare,et al.  A Calculus of Durations , 1991, Inf. Process. Lett..

[5]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[6]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[7]  Jim Woodcock,et al.  Unifying Theories of Parallel Programming , 2002, ICFEM.

[8]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[9]  Li Li,et al.  A denotational semantics of timed RSL using duration calculus , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[10]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[11]  Jim Woodcock,et al.  Using Z - specification, refinement, and proof , 1996, Prentice Hall international series in computer science.

[12]  Jim Woodcock,et al.  The Semantics of Circus , 2002, ZB.

[13]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[14]  Jin Song Dong,et al.  A Semantic Foundation for TCOZ in Unifying Theories of Programming , 2003, FME.

[15]  Davide Sangiorgi,et al.  A Fully Abstract Model for the [pi]-calculus , 1996, Inf. Comput..

[16]  He Jifeng,et al.  Towards a refinement calculus for object systems , 2002 .

[17]  Augusto Sampaio,et al.  A Refinement Strategy for Circus , 2003, Formal Aspects of Computing.

[18]  Matthew Hennessy A Fully Abstract Denotational Model for Higher-Order Processes , 1994, Inf. Comput..

[19]  Davide Sangiorgi,et al.  Expressing mobility in process algebras : first-order and higher-order paradigms , 1993 .

[20]  I. Stark,et al.  A fully abstract domain model for the /spl pi/-calculus , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[21]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[22]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[23]  Jin Song Dong,et al.  Timed Communicating Object Z , 2000, IEEE Trans. Software Eng..

[24]  Augusto Sampaio,et al.  Refinement of actions in Circus , 2002, Refine.