Abstract
There has been considerable controversy in concurrency theory between the ‘interleaving’ and ‘true concurrency’ schools. The former school advocates associating a transition system with a process which captures concurrent execution via the interleaving of occurrences; the latter adopts more complex semantic structures to avoid reducing concurrency to interleaving.
In this paper we show that the two approaches are not irreconcilable. We define a timed process algebra where occurrences are associated with intervals of time, and give it a transition system semantics. This semantics has many of the advantages of the interleaving approach; the algebra admits an expansion theorem, and bisimulation semantics can be used as usual. Our transition systems, however, incorporate timing information, and this enables us to express concurrency: merely adding timing appropriately generalises transition systems to asynchronous transition systems, showing that time gives a link between true concurrency and interleaving. Moreover, we can provide a complete axiomatisation of bisimulation for our algebra; a result that is often problematic in a timed setting.
Another advantage of incorporating timing information into the calculus is that it allows a particularly simple definition of action refinement; this we present. The paper concludes with a comparison of the equivalence we present with those in the literature, and an example system specification in our formalism.
Similar content being viewed by others
References
Aceto, L.: Relating distributed, temporal and causal observations of simple processes. Fund. Inf 17 (4), 369–397 (1992)
Aceto, L., Hennessy M.: Towards action refinement in process algebra. Inform. and Comput., 103 (2), 204–269 (1993)
Aceto, L., Jeffrey, A.: A complete axiomatization of timed bisimulation for a class of timed regular behaviours. Technical report 4/94, Computer Science, University of Sussex, March 1994. To appear in Theoret. Comput. Sci.
Aceto, L., Murphy, D.: On the Ill-Timed but Well-Caused. In Best, E. (ed), CONCUR. Proc. Hildesheim. (Lect. Notes Comput. Sci., Vol. 715) Springer 1993
Aceto, L., Murphy, D.: Timing and Causality in Process Algebra. Technical Report 9/93, University of Sussex, 1993
Axford, T.: Concurrent Programming: Fundamental Techniques for Real-Time and Parallel Software Design. Wiley 1989
Baeten, J.: Bergstra, J.: Global renaming operators in concrete process algebra. Inform. and Comput. 78 (3), 205–245 (1988)
Baeten, J., Bergstra, J.: Real time process algebra. Form. Asp. of Comput. 3 (2), 142–188 (1991)
Baeten, J., Weijland, W.: Process algebra. (Cambridge Tracts in Theoret. Comput. Sci., Vol. 18) Cambridge University Press 1990
Bednarczyk, M.: Categories of asynchronous systems. Ph.D. thesis, Department of Computer Science, University of Sussex, 1987. Available as Technical Report Number 3/87
Bergstra, J., Klop, J-W.: Fixed point semantics in process algebras. Report Number IW 206, Mathematisch Centrum. Amsterdam 1982
Best, E., Koutny, M.: Petri net semantics of priority systems. Theoret. Comput. Sci. 96, 175–215 (1992)
Boudol, G.: Atomic actions (note). Bull. EATCS 38, 136–144 (1989)
Boudol, G., Castellani I., Hennessy, M., Kiehn, A.: Observing localities. Theoret. Comput. Sci. 114, 31–62 (1993)
Campbell, R., Jalotte, P.: Atomic actions in concurrent systems. In Distributed Computing Systems. Proc. 5th Internat. Conf., 184–191, 1985
Castellani, I., Hennessy, M.: Distributed bisimulations. J. ACM 36 (4), 887–911 (1989)
Darondeau, P., Degano, P.: Causal trees. In Rovan, B. (ed.), Automata, Languages and Programming. Proc. (Lect. Notes Comput. Sci., Vol. 372) Springer 1989
Davies, J., Schneider, S.: An introduction to timed CSP. Technical Report Number 75, Oxford University Computer Laboratory, 1989
Davies, J., Schneider, S.: A bried history of timed CSP. Technical Report Number 96, Oxford University Computer Laboratory, 1992
Degano, P., De Nicola, R., Montanari, U.: A Partial Ordering Semantics for CCS. Theoret. Comput. Sci. 75, 223–262. (1990)
Ferrari, G-L., Gorrieri, R., Montanari, U.: Parametric laws for concurrency. Manuscript, Dipartimento di Informatica, Università di Pisa, 1992
Ferrari, G-L., Montanari, U.: Observing Time-Complexity of Concurrent Programs. Manuscript, Dipartimento di Informatica, Università di Pisa, 1993
Fidge, C.: A constraint-oriented real-time process calculus. In Proc. of the 5th Internat. Conf. Formal Description Techniques, 363–378. North-Holland 1993
van Glabbeek, R.: Comparative concurrency semantics and refinement of actions. Ph.D. thesis, Vrije Universiteit te Amsterdam, 1990
van Glabbeek, R.: A complete axiomatization for branching bisimulation congruence of finite-state behaviours. In Borzyszkowski, A. (ed.), Mathematical Foundations of Computer Science Proc. Gdansk (Lect. Notes Comput. Sci., Vol. 711) Springer 1993
van Glabbeek, R., Vaandrager, F.: Petri net models for algebraic theories of concurrency. In de Bakker, J. et al. (eds), PARLE II Parallel Languages. Proc. (Lect. Notes Comput. Sci., Vol 259) Springer 1987
van Glabbeek, R., Weijland, W.: Branching time and abstraction in bisimulation semantics (extended abstract). In Ritter, G. (ed.), Information Processing. Proc. 613–618, 1989. Full version available as Report CS-R9120, CWI, Amsterdam, 1991
van Glabbeek, R., Weijland, W.: Refinement in branching time semantics. Report CS-R8922, CWI, Amsterdam, 1989
Godskesen, J., Larsen, K.: Real-time calculi and expansion theorems. In Proc. 12th Conference on Foundations of Software Technology and Theoretical Computer Science (Lecture Notes in Comput. Sci.) Springer 1992
Gorrieri, R.: Refinement, atomicity and transactions for process description languages. Ph.D. thesis, Dipartimento di Informatica, Università di Pisa, 1991
Gorrieri, R., Roccetti, M.: Towards performance evaluation in process algebra. Technical report 93-27, Dipartimento di Matematica, Università di Bologna, 1993. An extended abstract appears in the Proc. AMAST ’93 (Lecture Notes in Comput. Sci.) Springer 1993
Groote, J.-F., Vaandrager, F.: An efficient algorithm for branching bisimulation and stuttering equivalence. In Automata, Languages and Programming. Proc. (Lect. Notes Comput. Sci., Vol. 443, 626–638) Springer 1990
Hennessy, M.: Axiomatising Finite Concurrent Processes. SIAM J Comput. 17, 5 (1988)
Hennessy, M., Regan, T.: A temporal process algebra. Technical Report 2/90, Department of Computer Science, University of Sussex, 1990
Hoare, C.: Communicating sequential processes. Internat. series on Comput. Sci., Prentice Hall 1985
Jeffrey, A.: Timed Process Algebra ≠ Time × Process Algebra. Technical Report Number 79, Programming Methodology Group, Chalmers University, 1991
Joseph, M., Goswami, A.: Relating computation and time. Technical Report RR 138, Department of Computer Science, University of Warwick, 1985
Lamport, L.: On interprocess communication. Part I: Basic formalism. Distrib. Comput. 1, 77–85 (1986)
Mattern, F.: Virtual Time and Global States of Distributed Systems. In Cosnard, M. et al. (eds.), Parallel and Distributed Algorithms. Proc., North-Holland 1989
Mazurkiewicz, A.: Traces, histories, graphs: Instances of a process monoid. In Mathematical Foundations of Computer Science. Proc. (Lect. Notes Comput. Sci., Vol. 176) Springer 1994
Milner, R.: Communciation and concurrency. Internat. series on Comput. Sci., Prentice-Hall International, 1989
Milner, R., Moller, F.: Unique decomposition of processes (note). Theoret. Comput. Scie. 107 (2) 357–363 (1993)
Moller, F.: Axioms for concurrency. Report CST-59-89, Department of Computer Science, University of Edinburgh, 1989
Moller, F., Tofts, C.: A temporal calculus of communicating systems. In Baeten, J. (ed.), CONCUR. Proc. Amsterdam, 1993 (Lect. Notes Comput. Sci., Vol. 459) Springer 1990
Murphy, D.: Timed Process Algebra, Petri Nets, and Event Refinement. In Morris, J. (ed.), Refinement. Proc., Springer 1991
Murphy, D.: Intervals and actions in a timed process algebra. Arbeitspapiere der GMD 680, Gesellschaft für Mathematik and Dataverarbeitung, St. Augustin, 1992. Presented at MFPS ’92 and submitted to Theoret. Comput. Sci.
Murphy, D. Pitt, D.: Real-timed concurrent refineable behaviours. In Vytopil, J. (ed.), Formal Techniques in Real Time and Fault Tolerant Systems Proc. Nijmegen (Lect. Notes Comput. Sci., Vol. 571) Springer 1992
Nicollin, X., Sifakis, J.: The algebra of timed processes ATP: Theory and application. Technical Report RT-C26, Laboratorie de Génie Informatique de Grenoble, 1990
Plotkin, G.: A structural approach to operational semantics. Technical Report DAIMI-FN-19, Computer Science Department, Århus University, 1981
Sassone, V., Nielsen, M. Winskel, G.: A classification of models for concurrency. In Best, E. (ed.), CONCUR. Proc. Hildesheim, 1993 (Lect. Notes Comput. Sci., Vol. 715) Springer 1993.
Schneider, S.: An operational semantics for timed CSP. Inform. and Comput. (1993) (to appear)
Stoughton, A.: Substitution revisted. Theoret. Comput. Sci. 59, 317–325 (1988)
Vogler, W.: Failures Semantics based on Interval Semiwords is a congruence for Refinement. Distributed Computing, 4, 139–162 (1991)
Vogler, W.: Moduler Construction and Partial Order Semantics fo Petri Nets (Lect. Notes Comput. Sci., Vol. 625) Springer 1993
Wang Yi.: CCS + Time = an Interleaving Model for Real Time Systems. In Automata, Languages and Programming. Proceedings, Madrid (Lect. Notes Comput. Sci., Vol. 510) Springer 1993
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Aceto, L., Murphy, D. Timing and causality in process algebra. Acta Informatica 33, 317–350 (1996). https://doi.org/10.1007/s002360050047
Received:
Issue Date:
DOI: https://doi.org/10.1007/s002360050047