Skip to main content

From trace specifications to process terms

  • Technical Contributions
  • Conference paper
  • First Online:
Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness (REX 1989)

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

  • 201 Accesses

Abstract

We present an approach to the top-down construction of process terms from trace specifications. Process terms are built from operators of CCS, CSP and COSY, and denote labelled Petri nets. Trace specifications are first order formulas of Zwiers' trace logic and denote sets of finite communication sequences. The link between process terms and trace specifications is given by a new notion of process correctness which deals with both safety and liveness properties. The top-down construction proceeds by an application of compositional transformation rules which refine the given trace specification stepwise into a process term satisfying the safety and liveness requirements of the specification.

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. B. Alpern, F.B. Schneider, Defining liveness, Inform. Proc. Letters 21 (1985) 181–185.

    MathSciNet  Google Scholar 

  2. J.W. de Bakker, Mathematical Theory of Program Correctness (Prentice-Hall, London, 1989).

    Google Scholar 

  3. F.L. Bauer et al., The Munich Project CIP, Vol. I: The Wide Spectrum Language CIP-L, Lecture Notes in Comput. Sci. 183 (Springer-Verlag, 1985).

    Google Scholar 

  4. F.L. Bauer et al., The Munich Project CIP, Vol. II: The Program Transformation System CIP-S, Lecture Notes in Comput. Sci. 292 (Springer-Verlag, 1987).

    Google Scholar 

  5. 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 

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

    Article  Google Scholar 

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

    Google Scholar 

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

    Article  Google Scholar 

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

    Google Scholar 

  10. N. Francez, D. Lehmann, A. Pnueli, A linear history semantics for languages for distributed programming, Theoret. Comput. Sci. 32 (1984) 25–46.

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

  16. 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 

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

    Google Scholar 

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

    Google Scholar 

  19. R. Milner, Communication and Concurrency (Prentice-Hall, London, 1989).

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

  22. E.-R. Olderog, Strong bisimilarity on nets: a new concept for comparing net semantics, in: J.W. de Bakker, W.P. de Roever, G. Rozenberg (Eds.), Linear Time, Branching Time and Partial Order in Logics and Models of Concurrency, Lectures Notes in Comput. Sci. 354 (Springer-Verlag, 1989) 549–573.

    Google Scholar 

  23. E.-R. Olderog, Correctness of concurrent processes, invited paper, in: A. Kreczmar, G. Mirkowska (Eds.), Math. Found. of Comput. Sci. 1989, Lecture Notes in Comput. Sci. 379 (Springer-Verlag, 1989) 107–132.

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

  28. D.S. Scott, Outline of a mathematical theory of computation, Tech. Monograph PRG-2, Progr. Research Group, Oxford Univ., 1970.

    Google Scholar 

  29. J.E. Stoy, Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory (MIT Press, Cambridge, Mass., 1977).

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

  32. N. Wirth, Program development by stepwise refinement, Comm. ACM 14 (1971) 221–227.

    Article  Google Scholar 

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

    Google Scholar 

  34. 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

J. W. de Bakker W. -P. de Roever G. Rozenberg

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Olderog, ER. (1990). From trace specifications to process terms. In: de Bakker, J.W., de Roever, W.P., Rozenberg, G. (eds) Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness. REX 1989. Lecture Notes in Computer Science, vol 430. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-52559-9_80

Download citation

  • DOI: https://doi.org/10.1007/3-540-52559-9_80

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-47035-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics