Typed pi-calculus at Work: A Correctness Proof of Jones's Parallelisation Transformation on Concurrent Objects

Cliff Jones has proposed transformations between concrete programs and general transformation rules that increase concurrency in a system of objects, and has raised the challenge of how to prove their validity. We present a proof of correctness of the hardest of Jones's concrete transformations. The proof uses a typed π-calculus and typed behavioral equivalences. Our type system tracks receptiveness; it guarantees that the input-end of certain channels is always ready to receive messages (at least as long as there are processes that could send such messages), and that all messages will be processed using the same continuation. This work is also intended as an example of the usefulness of π-calculus types for reasoning. © 1999 John Wiley & Sons, Inc.

[1]  David Walker Algebraic Proofs of Properties of Objects , 1994, ESOP.

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

[3]  Kohei Honda,et al.  Composing processes , 1996, POPL '96.

[4]  Cliff B. Jones A pi-Calculus Semantics for an Object-Based Design Notation , 1993, CONCUR.

[5]  Frits W. Vaandrager,et al.  Process algebra semantics of POOL , 1992 .

[6]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[7]  Robin Milner,et al.  The Problem of "Weak Bisimulation up to" , 1992, CONCUR.

[8]  Helmut Schwichtenberg,et al.  Logic and Algebra of Specification , 1993, NATO ASI Series.

[9]  David Walker,et al.  Objects in the pi-Calculus , 1992, Inf. Comput..

[10]  C. B. Jones,et al.  Constraining Inference in an Object-Based Design Model , 1993, TAPSOFT.

[11]  D. J. Walker Process Calculus and Parallel Object-oriented Programming Languages , 1993 .

[12]  David Walker,et al.  On Transformations of Concurrent-Object Programs , 1996, Theor. Comput. Sci..

[13]  B. Pierce,et al.  Typing and subtyping for mobile processes , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[14]  Davide Sangiorgi pi-Calculus, Internal Mobility, and Agent-Passing Calculi , 1996, Theor. Comput. Sci..

[15]  Roberto M. Amadio An Asynchronous Model of Locality, Failurem and Process Mobility , 1997, COORDINATION.

[16]  Naoki Kobayashi A partially deadlock-free typed process calculus , 1998, TOPL.

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

[18]  G. Plotkin,et al.  Proof, language, and interaction: essays in honour of Robin Milner , 2000 .

[19]  Robin Milner,et al.  Barbed Bisimulation , 1992, ICALP.

[20]  David Walker,et al.  Confluence of Processes and Systems of Objects , 1995, TAPSOFT.