Skip to main content

Correctness of concurrent processes

  • Invited Lectures
  • Conference paper
  • First Online:
Mathematical Foundations of Computer Science 1989 (MFCS 1989)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 379))

Abstract

A new notion of correctness for concurrent processes is introduced and investigated. It is a relationship P sat S between process terms P built up from operators of CCS [Mi 80], CSP [Ho 85] and COSY [LTS 79] and logical formulas S specifying sets of finite communication sequences as in [Zw 89]. The definition of P sat S is based on a Petri net semantics for process terms [Ol 89]. The main point is that P sat S requires a simple liveness property of the net denoted by P. This implies that P is divergence free and externally deterministic.

Process correctness P sat S determines a new semantic model for process terms and logical formulas. It is a modification ℜ* of the readiness semantics [OH 86] which is fully abstract with respect to the relation P sat S. The model ℜ* abstracts from the concurrent behaviour of process terms and certain aspects of their internal activity. In ℜ* process correctness P sat S boils down to semantic equality: ℜ*[P]=ℜ*[S]. The modified readiness equivalence is closely related to failure equivalence [BHR 84] and strong testing equivalence [DH 84].

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

8. References

  1. E. Astesiano, Combining an operational with an algebraic approach to the specification of concurrency, in: D. Bjørner (Ed.), Proc. Workshop on Combining Methods (Nyborg, Denmark, 1984)

    Google Scholar 

  2. B. Alpern, F.B. Schneider, Defining liveness, Inform. Proc. Letters 21 (1985) 181–185.

    Google Scholar 

  3. J.W. de Bakker, J.-J. Meyer, E.-R. Olderog, J.I. Zucker, Transition systems, metric spaces and ready sets in the semantics of uniform concurrency, J. Comput. System Sci. 36 (1988) 158–224.

    Google Scholar 

  4. E. Best, COSY: its relation to nets and CSP, in: W. Brauer, W. Reisig, G. Rozenberg (Eds.), Petri Nets: Applications and Relationships to Other Models of Concurrency, Lecture Notes in Comput. Sci. 255 (Springer-Verlag, 1987) 416–440.

    Google Scholar 

  5. J.A. Bergstra, J.W. Klop, E.-R. Olderog, Failures without chaos: a new process semantics for fair abstraction, in: M. Wirsing (Ed.), Proc. IFIP Working Conference on Formal Description of Programming Concepts III (North-Holland, 1987) 77–101.

    Google Scholar 

  6. M. Bretschneider, M. Duque Anton, A. Fink, Constructing and verifying protocols using TCSP, in: S. Aggarwal, K. Sabnani (Ed.), Proc. IFIP Working Conference on Protocol Specification, Testing and Verification (North-Holland, 1988).

    Google Scholar 

  7. S.D. Brookes, C.A.R. Hoare, A.W. Roscoe, A theory of communicating sequential processes, J. ACM 31 (1984) 560–599.

    Google Scholar 

  8. Z. Chaochen, C.A.R. Hoare, Partial correctness of communicating processes, in: Proc. 2nd Intern. Conf. on Distributed Comput. Systems, Paris, 1981.

    Google Scholar 

  9. R. DeNicola, M. Hennessy, Testing equivalences for processes, Theoret. Comput. Sci. 34 (1984) 83–134.

    Google Scholar 

  10. E.W. Dijkstra, A Discipline of Programming (Prentice-Hall, Englewood Cliffs, NJ, 1976).

    Google Scholar 

  11. M. Duque Antón, M. Bretschneider, Formulas, processes and Petri-nets applied to the specification and verification of a HDLC protocol, in J. Diaz, F. Orejas (Eds.), Proc. TAPSOFT '89, Vol. 2 Lecture Notes in Comput. Sci. 352 (Springer-Verlag, 1989) 140–154.

    Google Scholar 

  12. U. Goltz, Über die Darstellung von CCS-Programmen durch Petrinetze, Doctoral Diss., RWTH Aachen, 1988.

    Google Scholar 

  13. M. Hennessy, Algebraic Theory of Processes (MIT Press, Cambridge, Mass., 1988).

    Google Scholar 

  14. M. Hennessy, G.D. Plotkin, Full abstraction for a simple programming language, in: J. Becvar (Ed.), 8th Symp. on Math. Found. of Comput. Sci., Lecture Notes in Comput. Sci. 74 (Springer-Verlag, 1979) 108–120.

    Google Scholar 

  15. C.A.R. Hoare, Some properties of predicate transformers, J. ACM 25 (1978) 461–480.

    Google Scholar 

  16. C.A.R. Hoare, A calculus of total correctness for communicating processes, Sci. Comput. Progr. 1 (1981) 44–72.

    Google Scholar 

  17. C.A.R. Hoare, Communicating Sequential Processes (Prentice-Hall, London, 1985).

    Google Scholar 

  18. B. Jonsson, Compositional Verification of Distributed Systems, Ph.D. Thesis, Dept. Comput. Sci., Uppsala Univ., 1987.

    Google Scholar 

  19. P.E. Lauer, P.R. Torrigiani, M.W. Shields, COSY — A system specification language based on paths and processes, Acta Inform. 12 (1979) 109–158.

    Google Scholar 

  20. A. Mazurkiewicz, Concurrent program schemes and their interpretations, Tech. Report DAIMI PB-78, Aarhus Univ., 1977.

    Google Scholar 

  21. A.R. Meyer, K. Sieber, Towards fully abstract semantics for local variables, Preliminary Report, in: Proc. 15th ACM Symp. Principles of Program. Lang. (San Diego, California, 1988) 191–203.

    Google Scholar 

  22. R. Milner, Fully abstract models of typed λ-calculi, Theoret. Comput. Sci. 4 (1977) 1–22.

    Google Scholar 

  23. R. Milner, A Calculus of Communicating Systems, Lecture Notes in Comput. Sci. 92 (Springer-Verlag, 1980).

    Google Scholar 

  24. J. Misra, K.M. Chandy, Proofs of networks of processes, IEEE Trans. Software Eng. 7 (1981) 417–426.

    Google Scholar 

  25. E.-R. Olderog, Nets, Terms and Formulas: Three Views of Concurrent Processes and Their Relationship, Habilitationsschrift, Univ. Kiel, 1988/89.

    Google Scholar 

  26. E.-R. Olderog, Strong bisimilarity on nets: a new cvoncept for comparing net semantics, in: J.W. de Bakker, W.P. de Roever, G. Rozenberg (Eds.), Linear Time/Branching Time/Partial Order in the Semantics of Concurrency, Lecture Notes in Comput. Sci. 354 (Springer-Verlag, 1989) 549–573.

    Google Scholar 

  27. E.-R. Olderog, C.A.R. Hoare, Specification-oriented semantics for communicating processes, Acta Inform. 23 (1986) 9–66.

    Google Scholar 

  28. M. Ossefort, Correctness proofs of communicating processes: three illustrative examples from the literature, ACM TOPLAS 5 (1983) 620–640.

    Google Scholar 

  29. S. Owicki, L. Lamport, Proving liveness properties of concurrent programs, ACM TOPLAS 4 (1982) 199–223.

    Google Scholar 

  30. G.D. Plotkin, LCF considered as a programming language, Theoret. Comput. Sci. 5 (1977) 223–255.

    Google Scholar 

  31. W. Reisig, Petri Nets, An Introduction, EATCS Monographs on Theoret. Comput. Sci. (Springer-Verlag, 1985).

    Google Scholar 

  32. M. Rem, Trace theory and systolic computation, in: J.W. de Bakker, A.J. Nijman, P.C. Treleaven (Eds.), Proc. PARLE Conf., Eindhoven, Vol. 1, Lecture Notes in Comput. Sci. 258, (Springer-Verlag, 1987) 14–33.

    Google Scholar 

  33. D.T. Sanella, A. Tarlecki, On observational equivalence and algebraic specification, J. Comput. System Sci. 34 (1987) 150–178.

    Google Scholar 

  34. J.L.A. van de Snepscheut, Trace Theory and VLSI Design, Lecture Notes in Comput. Sci. 200 (Springer-Verlag, 1985).

    Google Scholar 

  35. C. Stirling, Modal logics for communicating systems, Theoret. Comput. Sci. 49 (1987) 311–347.

    Google Scholar 

  36. J. Widom, D. Gries, F.B. Schneider, Completeness and incompleteness of trace-baced network proof systems, in: Proc. 14th ACM Symp. on Principles of Progr. Languages, München, 1987, 27–38.

    Google Scholar 

  37. J. Zwiers, Compositionality, Concurrency and Partial correctness, Lecture Notes in Comput. Sci. 321 (Springer-Verlag, 1989).

    Google Scholar 

  38. J. Zwiers, W.P. de Roever, P. van Emde-Boas, Compositionality and concurrent networks, in: W. Brauer (Ed.), Proc. 12th Coll. Automata, Languages and Programming, Lecture Notes in Comput. Sci. 194 (Springer-Verlag, 1985) 509–519.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Antoni Kreczmar Grazyna Mirkowska

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Olderog, ER. (1989). Correctness of concurrent processes. In: Kreczmar, A., Mirkowska, G. (eds) Mathematical Foundations of Computer Science 1989. MFCS 1989. Lecture Notes in Computer Science, vol 379. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-51486-4_59

Download citation

  • DOI: https://doi.org/10.1007/3-540-51486-4_59

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51486-2

  • Online ISBN: 978-3-540-48176-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics