Skip to main content

A practical approach to the analysis of concurrent systems

  • 2. Tutorial Papers
  • Conference paper
  • First Online:
  • 127 Accesses

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

Abstract

The main thesis of this paper is that the analysis of concurrent programs (i.e. their specifications, their proofs of correctness, deadlockfreeness, etc.), can be done by using methods very similar to those used for analysing sequential programs.

This approach, which is certainly not new (for instance see (1),(5),(12), and (13) among others), is illustrated by various examples.

The first group of examples shows the transformations of various sequential programs into equivalent pairs of concurrent programs.

The last example shows how a network of concurrent programs can be abstracted by a very special non-deterministic sequential program. Consequently, properties of the network can be proved by applying traditional methods on its abstraction.

Some of the programs constructed in the examples are written in (pidgin) ADA.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. C.A.R. HOARE — A Calculus of Total Correctness for Communicating Sequential Processes — Science of Computer Programming — Volume 1 — 1981

    Google Scholar 

  2. C.A.R. HOARE — Communicating Sequential Processes — CACM — Volume 21 — 1978

    Google Scholar 

  3. C.A.R.HOARE — An Axiomatic Basis for Computer Programming — CACM — Volume 12 — 1969

    Google Scholar 

  4. M.E. CONWAY — Design of a Separable Transition-Diagram Compiler — CACM — Vo Volume 6 — 1963

    Google Scholar 

  5. S. OWICKI & D. GRIES — Verifying Properties of Parallel Programs: an Axiomatic Approach — CACM — Volume 19 — 1976

    Google Scholar 

  6. R.W. FLOYD — Assigning Meaning to Programs — Proc. Symposium Applied Mathematics — 1967

    Google Scholar 

  7. UNITED STATES DEPARTMENT OF DEFENSE — Reference Manual for the ADA Programming Language — 1983

    Google Scholar 

  8. E.W. DIJKSTRA — A Discipline of Programming — Prentice Hall — 1976

    Google Scholar 

  9. E.W. DIJKSTRA — A Correctness Proof for Communicating Processes. A Small Exercise — in Selected Writings on Computing: a Personal Perspective — Springer Verlag — 1982

    Google Scholar 

  10. E.W. DIJKSTRA — Guarded Commands, Non-determinacy and Formal Derivation of Programs — CACM — Volume 18 — 1975

    Google Scholar 

  11. C.B. JONES — Software Development: a Rigorous Approach — Prentice Hall — 1980

    Google Scholar 

  12. K.R. APT & N.FRANCEZ & W.P. DE ROEVER — A Proof System for Communicating Sequential Processes — ACM Transactions on Programming Languages — 1980

    Google Scholar 

  13. J.MISRA & K.M. CHANDY — Proofs of Networks of Processes — IEEE Transactions on Software Egineering — Volume SE 7 — 1981

    Google Scholar 

Download references

Authors

Editor information

B. T. Denvir W. T. Harwood M. I. Jackson M. J. Wray

Rights and permissions

Reprints and permissions

Copyright information

© 1985 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Abrial, J.R. (1985). A practical approach to the analysis of concurrent systems. In: Denvir, B.T., Harwood, W.T., Jackson, M.I., Wray, M.J. (eds) The Analysis of Concurrent Systems. Lecture Notes in Computer Science, vol 207. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-16047-7_36

Download citation

  • DOI: https://doi.org/10.1007/3-540-16047-7_36

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-39731-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics