CCS with priority guards

Abstract It has long been recognised that standard process algebra has difficulty dealing with actions of different priority, such as for instance an interrupt action of high priority. Various solutions have been proposed. We introduce a new approach, involving the addition of “priority guards” to Milner’s process calculus CCS. In our approach, priority is unstratified , meaning that actions are not assigned fixed levels, so that the same action can have different priority depending where it appears in a program. Unlike in other unstratified accounts of priority in CCS (such as that of Camilleri and Winskel), we treat inputs and outputs symmetrically. We introduce the new calculus, give examples, develop its theory (including bisimulation and equational laws), and compare it with existing approaches. We use leader election problems to show that priority adds expressiveness to both CCS and the π -calculus.

[1]  Catuscia Palamidessi,et al.  Comparing the expressive power of the synchronous and the asynchronous π-calculus , 1998, POPL '97.

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

[3]  Rance Cleaveland,et al.  Priorities in process algebras , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[4]  Maria Grazia Vigliotti,et al.  Leader election in rings of ambient processes , 2006, Theor. Comput. Sci..

[5]  Alan Jeffrey A typed, prioritized process algebra , 2007 .

[6]  Rance Cleaveland,et al.  Priority in Process Algebra , 2001, Handbook of Process Algebra.

[7]  Gerald Lüttgen Pre-emptive modeling of concurrent and distributed systems , 1998, Berichte aus der Informatik.

[8]  Traian Muntean,et al.  Expressiveness of Point-to-Point versus Broadcast Communications , 1999, FCT.

[9]  Luc Bougé,et al.  On the existence of symmetric algorithms to find leaders in networks of communicating sequential processes , 1988, Acta Informatica.

[10]  Benjamin C. Pierce,et al.  Decoding Choice Encodings , 1996, CONCUR.

[11]  Glynn Winskel,et al.  CCS with Priority Choice , 1995, Inf. Comput..

[12]  Robin Milner,et al.  A Complete Inference System for a Class of Regular Behaviours , 1984, J. Comput. Syst. Sci..

[13]  Iain Phillips CCS with Priority Guards , 2001, CONCUR.

[14]  Robin Milner,et al.  A Complete Axiomatisation for Observational Congruence of Finite-State Behaviors , 1989, Inf. Comput..

[15]  Rob J. van Glabbeek,et al.  Branching time and abstraction in bisimulation semantics , 1996, JACM.

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

[17]  K. V. S. Prasad A Calculus of Broadcasting Systems , 1991, Sci. Comput. Program..

[18]  L. Bourgé,et al.  On the existence of symmetric algorithms to find leaders in networks of communicating sequential processes , 1988 .

[19]  Maria Grazia Vigliotti,et al.  Electoral Systems in Ambient Calculi , 2004, FoSSaCS.

[20]  Hans A. Hansson,et al.  A Process Calculus with Incomparable Priorities , 1992, NAPAW.

[21]  Colin J. Fidge,et al.  A formal definition of priority in CSP , 1993, TOPL.

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

[23]  Davide Sangiorgi,et al.  Communicating and Mobile Systems: the π-calculus, , 2000 .

[24]  Robin Milner,et al.  Algebraic laws for nondeterminism and concurrency , 1985, JACM.

[25]  Jan A. Bergstra,et al.  Syntax and defining equations for an interrupt mechanism in process algebra , 1985 .

[26]  Rance Cleaveland,et al.  A Process Algebra with Distributed Priorities , 1996, Theor. Comput. Sci..

[27]  Rance Cleaveland,et al.  Priority and abstraction in process algebra , 1994, Inf. Comput..

[28]  Catuscia Palamidessi,et al.  Comparing the expressive power of the synchronous and asynchronous $pi$-calculi , 2003, Mathematical Structures in Computer Science.

[29]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[30]  Bernhard Steffen,et al.  Priority as extremal probability , 1990, Formal Aspects of Computing.

[31]  J. Bergstra,et al.  Handbook of Process Algebra , 2001 .

[32]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[33]  Jan A. Bergstra,et al.  Process Algebra for Synchronous Communication , 1984, Inf. Control..