Partial orderings descriptions and observations of nondeterministic concurrent processes

  • Pierpaolo Degano
  • Rocco De Nicola
  • Ugo Montanari
Technical Contributions
Part of the Lecture Notes in Computer Science book series (LNCS, volume 354)


A methodology is introduced for defining truly concurrent semantics of processes as equivalence classes of Labelled Event Structures (LES). The construction of a les providing the operational semantics of systems consists of three main steps. First, systems are decomposed into sets of sequential processes and a set of rewriting rules is introduced which describe both the actions sequential processes may perform and their causal relation. Then, the rewriting rules are used to build an occurrence net. Finally, the required event structure is easily derived from the occurrence net. As a test case, a partial ordering operational semantics is introduced first for a subset of Milner's CCS and then for the whole calculus. The proposed semantics are consistent with the original interleaving semantics of the calculus and are able to capture all and only the parallelism present in its multiset semantics. In order to obtain more abstract semantic definitions, new notions of observational equivalence on Labelled Event Structures are introduced that preserve both concurrency and nondeterminism.

Key words

Semantics of Programming Languages Communicating Processes Observational Equivalence Concurrency Nondeterminism CCS LES 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [ADF87]
    Aceto, L., De Nicola, R. and Fantechi, A. Testing Equivalences for Event Structures, in Mathematical Models for the Semantics of Parallelism (M. Venturini Zilli, Ed.), LNCS, 280, Springer-Verlag, Heidelberg, 1987, pp. 1–20.Google Scholar
  2. [AB84]
    Austry, D. and Boudol, G. Alg`ebre de Processus et Synchronization, Theoret. Comput. Sci., 30, 1 (1984), 91–131.CrossRefGoogle Scholar
  3. [BC87]
    Boudol, G. and Castellani, I. On the Semantics of Concurrency: Partial Orders and Transition Systems, in Proc. TAPSOFT-CAAP '87, Lecture Notes in Computer Science, 249, Springer-Verlag, Heidelberg, 1987, pp. 123–137.Google Scholar
  4. [CFM83]
    Castellani,I. Franceschi,P. and Montanari,U. Labeled Event Structures: A Model for Observable Concurrency, in Formal Description of Programming Concepts II (D. Bijørner, Ed.), North Holland, Amsterdam, 1983, pp. 383–400.Google Scholar
  5. [DDM87a]
    Degano,P., De Nicola,R. and Montanari,U. Observational Equivalences for Concurrency Models, in Formal Description of Programming Concepts III (M. Wirsing, Ed.), North Holland, Amsterdam, 1987, pp. 105–132.Google Scholar
  6. [DDM87b]
    Degano, P., De Nicola, R. and Montanari, U. CCS is an (Augmented) Contact-Free C/E System, in Mathematical Models for the Semantics of Parallelism (M. Venturini Zilli, Ed.), LNCS, 280, Springer-Verlag, Heidelberg, 1987, pp. 144–165.Google Scholar
  7. [DDM88]
    Degano, P., De Nicola, R. and Montanari, U. A Distributed Operational Semantics for CCS based on Condition/Event Systems. Acta Informatica, 26, (1988), 59–91.Google Scholar
  8. [DDM88a]
    Degano,P., De Nicola,R. and Montanari,U. A Partial Ordering Semantics for CCS, Nota Interna 88-3, Dip. Informatica, University of Pisa, 1988. Submitted for Publication.Google Scholar
  9. [DDM88b]
    Degano, P., De Nicola, R. and Montanari, U. On the Consistency of Operational and Denotational Semantics for True Concurrency, Proc. LICS '88, (IEEE Computer Society Press, Washington, 1988), pp. 133–141.Google Scholar
  10. [DeN87]
    De Nicola, R. Extensional Equivalences for Transition Systems, Acta Informatica, 24, (1987), 211–237.CrossRefGoogle Scholar
  11. [DM87]
    Degano, P. and Montanari, U. Concurrent Histories: A Basis for Observing Distributed Systems, Journal of Computer and System Sciences, 34 (1987), 442–461.CrossRefGoogle Scholar
  12. [GG89]
    van Glabeek,R. and Goltz,U. Equivalence Notions for Concurrent Systems and Refinement of Actions, Draft (1989).Google Scholar
  13. [GMM88]
    Gorrieri, R., Marchetti, S. and Montanari, U. A2CCS: Atomic Action for CCS, Proc. CAAP'88, lncs, 299, (Springer-Verlag, Heidelberg, 1987), pp. 258–270.Google Scholar
  14. [GR83]
    Goltz, U. and Reisig, W. The Non-sequential Behaviour of Petri Nets, Info. and Co. 57, (1983), 125–147.CrossRefGoogle Scholar
  15. [Kel76]
    Keller, R. Formal Verification of Parallel Programs. Communication of ACM, 7, (1976) 561–572.Google Scholar
  16. [Mil80]
    Milner, R. A Calculus of Communicating Systems. LNCS, 92, (Springer-Verlag, Heidelberg, 1980).Google Scholar
  17. [Mil83]
    Milner, R. Calculi for Synchrony and Asynchrony, Theoret. Comput. Sci., 25, (1983) 267–310.CrossRefGoogle Scholar
  18. [Mon85]
    Montanari,U. Observational Equivalence Revisited, minutes of the IFIP W.G. 2.2 meeting, Passau 1985.Google Scholar
  19. [MS81]
    Montanari,U. and Simonelli,C. On Distinguishing Between Concurrency and Nondeterminism, Proc. Ècole de Printemps on Concurrency and Petri Nets, Colleville sur Mer, 1980, available as Tech. Rep. PFI-Cnet No 7, 1981.Google Scholar
  20. [NPW81]
    Nielsen, M., Plotkin, G., Winskel, G. Petri Nets, Event Structures and Domains, Part 1, Theoret. Comput. Sci., 13, (1981) 85–108.CrossRefGoogle Scholar
  21. [Nie87]
    Nielsen, M. CCS — and its relationship to Net Theory, In Advances in Petri Nets 1987, (G. Rozenberg, Ed.) LNCS, 266, (Springer-Verlag, Heidelberg, 1987), pp. 393–415.Google Scholar
  22. [Old87]
    Olderog, E.-R. Operational Petri Net Semantics for CCSP. In Advances in Petri Nets 1987, (G. Rozenberg, Ed.) LNCS, 266, (Springer-Verlag, Heidelberg, 1987), pp. 196–223.Google Scholar
  23. [Par81]
    Park, D. Concurrency and Automata on Infinite Sequences, Proc. GI, LNCS, 104, (Springer-Verlag, Heidelberg, 1981), pp. 167–183.Google Scholar
  24. [Plo81]
    Plotkin, G. A Structural Approach to Operational Semantics. Technical Report DAIMI FN-19, Aarhus University, Department of Computer Science, Aarhus, 1981.Google Scholar
  25. [Pra86]
    Pratt, V. Modelling Concurrency with Partial Orders, International Journal of Parallel Programming, 15, (1986) 33–71.CrossRefGoogle Scholar
  26. [Rei85]
    Reisig, W.: Petri Nets: An Introduction, EATCS Monographs on Theoretical Computer Science, Springer-Verlag, 1985.Google Scholar
  27. [Wink80]
    Winkowski, J. Behaviours of Concurrent Systems, Theoret. Comput. Sci., 12 (1980), 39–60.CrossRefGoogle Scholar
  28. [Win80]
    Winskel,G. Events in Computation, Ph. D. Thesis, Univ. of Edinburgh, CST-10-80, (1980).Google Scholar
  29. [Win82]
    Winskel, G. Event Structures for CCS and Related Languages, Proc. 9th ICALP, (M. Nielsen, and E. M. Schmidt, Eds), LNCS, 140, Springer-Verlag, Heidelberg, 1982, pp. 561–576.Google Scholar
  30. [Win85]
    Winskel, G.: Categories of Models of Concurrency, in: Seminar on Concurrency (S.D. Brookes, A. W. Roscoe, G. Winskel, eds.), LNCS 197, Springer-Verlag, Heidelberg, 1985, pp. 246–267Google Scholar
  31. [Win87]
    Winskel, G. Event Structures, in Advances in Petri Nets 1987, (G. Rozenberg, ed.) LNCS, 266, Springer-Verlag, Heidelberg, 1987, pp. 196–223.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1989

Authors and Affiliations

  • Pierpaolo Degano
    • 1
  • Rocco De Nicola
    • 2
  • Ugo Montanari
    • 3
  1. 1.Dipartimento di InformaticaUniversità di PisaPisaItaly
  2. 2.Instituto di Elaborazione dell'Informazione, C.N.R.PisaItaly
  3. 3.Dipartimento di InformaticaUniversità di PisaPisaItaly

Personalised recommendations