Strong Priority and Determinacy in Timed CCS
Abstract: Building on the standard theory of process algebra with priorities, we identify a new scheduling mechanism, called "constructive reduction" which is designed to capture the essence of synchronous programming. The distinctive property of this evaluation strategy is to achieve determinacy-by-construction for multi-cast concurrent communication with shared memory. In the technical setting of CCS extended by clocks and priorities, we prove for a large class of "coherent" processes a confluence property for constructive reductions. We show that under some restrictions, called "pivotability", coherence is preserved by the operators of prefix, summation, parallel composition, restriction and hiding. Since this permits memory and sharing, we are able to cover a strictly larger class of processes compared to those in Milner's classical confluence theory for CCS without priorities.
- H. Barendregt. The Lambda Calculus: Its Syntax and Semantics, volume 103 of Studies in Logic and the Foundations of Mathematics. North-Holland, Amsterdam, revised edition, 1984.
- G. Barrett. The semantics of priority and fairness in OCCAM. In M. Main, A. Melton, M. Mislove, and D. Schmidt, editors, Proc. MFPS’89, 1989.
- G. Berry. The Constructive Semantics of Pure Esterel. Draft Book, 1999. ftp://ftp-sop.inria.fr/esterel/pub/papers/constructiveness3.ps.
- G. Berry. The Foundations of Esterel. In Proof, Language and Interaction: Essays in Honour of Robin Milner, pages 425–454. MIT Press, 2000.
- G. Berry and G. Boudol. The chemical abstract machine. Theor. Comput. Sci., 96(1):217–248, 1992. URL: https://doi.org/10.1016/0304-3975(92)90185-I, doi:10.1016/0304-3975(92)90185-I.
- Parallel programming must be deterministic by default. In Proceedings of the First USENIX conference on Hot topics in parallelism, pages 4–4, 2009.
- J. Camilleri and G. Winskel. CCS with priority choice. Information and Computation, 116(1):26–37, 1995.
- An algebraic theory of multiple clocks. In A. Mazurkiewicz and J. Winkowski, editors, Proceedings of the International Conference on Concurrency Theory CONCUR’97, pages 166–180. Springer, 1997. LNCS 1243.
- V. Dieckert and G. Rozenberg, editors. The Book of Traces. World Scientific, 1995.
- S. A. Edwards. On determinism. In M. Lohstroh et. al., editor, Lee Festschrift, pages 240–253. Springer, 2018.
- Programming real time applications with SIGNAL. In Proceedings of the IEEE, volume 79, pages 1321–1336. IEEE Press, September 1991.
- M. Mendler H. R. Andersen. An asynchronous process algebra with multiple clocks. In D. Sannella, editor, In Proc. ESOP’94, pages 58–73, 1994.
- The synchronous data-flow programming language LUSTRE. Proceedings of the IEEE, 79(9):1305–1320, September 1991.
- On the formal semantics of Statecharts. In Logic in Computer Science (LICS’87), pages 54–64. IEEE Press, 1987.
- M. Hennessy and T. Regan. A process algebra for timed system. Information and Computation, 117:221–239, 1995.
- C.A.R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985. 256 pages.
- Formal Semantics for VHDL. Kluwer, 1995.
- J. W. Klop. Combinatory reduction systems. PhD thesis, Univ. Utrecht, 1980.
- E. A. Lee. The problem with threads. Computer, 39(5):33–42, 2006.
- Dataflow process networks. In Proceedings of the IEEE, pages 773–799, May 1995.
- G. Lüttgen and M. Mendler. When 1 clock is not enough. In L. Aceto and A.D. Gordon, editors, Algebraic Process Calculi: The First Twenty Five Years and Beyond (PA’05), number NS-05-03 in BRICS Notes Series, pages 155–158, June 2005.
- R. Milner. Communication and Concurrency. Prentice Hall, 1989.
- R. Milner. Functions as processes. Math. Struct. Comput. Sci., 2(2):119–141, 1992. URL: https://doi.org/10.1017/S0960129500001407, doi:10.1017/S0960129500001407.
- A calculus of mobile processes, I. Inf. Comput., 100(1):1–40, 1992. URL: https://doi.org/10.1016/0890-5401(92)90008-4, doi:10.1016/0890-5401(92)90008-4.
- A calculus of mobile processes, II. Inf. Comput., 100(1):41–77, 1992. URL: https://doi.org/10.1016/0890-5401(92)90009-5, doi:10.1016/0890-5401(92)90009-5.
- A compositional semantic theory for component-based synchronous design. In R. Amadio and D. Lugiez, editors, Int’l Conf. on Concurrency Theory (CONCUR’2003), pages 461–476, Marseille, September 2003. Springer LNCS 2761.
- I. Phillips. CCS with priority guards. In K. G. Larsen and M. Nielsen, editors, Proc. Concur 2001, pages 305–320, 2001.
- G. D. Plotkin. The origins of structural operational semantics. J. Log. Algebraic Methods Program., 60-61:3–15, 2004. URL: https://doi.org/10.1016/j.jlap.2004.03.009, doi:10.1016/J.JLAP.2004.03.009.
- G. D. Plotkin. A structural approach to operational semantics. J. Log. Algebraic Methods Program., 60-61:17–139, 2004.
- V. Natarajan R. Cleaveland, G. Lüettgen. Handbook of Process Agebra, chapter Priority in Process Algebra. Elsevier, 2001.
- K. Schneider. The synchronous programming language Quartz. Internal Report 375, Department of Computer Science, University of Kaiserslautern, Kaiserslautern, Germany, December 2009.
- Esterel Technologies. The Esterel v7 reference manual version v7_30 – initial IEEE standardization proposal. Technical report, Esterel Technologies, 679 av. Dr. J. Lefebvre, 06270 Villeneuve-Loubet, France, November 2005.
- S.H. Unger. Asynchronous sequential switching circuits with unrestricted input changes. IEEE Transactions on Computers, C-20(12):1437–1444, 1971. doi:10.1109/T-C.1971.223155.
- L. G. Valiant. A bridging model for parallel computation. Commun. ACM, 33(8):103–111, 1990. URL: https://doi.org/10.1145/79173.79181, doi:10.1145/79173.79181.
- R. J. van Glabbeek. Notes on the methodology of CCS and CSP. Theor. Comput. Sci., 177(2):329–349, 1997. URL: https://doi.org/10.1016/S0304-3975(96)00251-4, doi:10.1016/S0304-3975(96)00251-4.
- SCCharts: Sequentially Constructive Statecharts for safety-critical applications. In Proc. PLDI’14, Edinburgh, UK, June 2014. ACM.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.