Skip to main content
Log in

On the design of reactive systems

  • Part II Computer Science
  • Published:
BIT Numerical Mathematics Aims and scope Submit manuscript

Abstract

The notion of joint actions provides a framework in which the granularity of atomic actions can be refined in the design of concurrent systems. An example of a telephone exchange is elaborated to demonstrate the feasibility of this approach for reactive systems and to illustrate transformations that are justifiable in such a process. Particular problems arise when a refinement would allow new interleavings of semantically relevant events. The meaning of a reactive computation is specified in a way that makes this possible.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Ada Programming Language, ANSI/MIL-STD-1815A-1983.

  2. B. Alpern and F. B. Schneider,Defining liveness, Information Processing Letters 21, (Oct. 1985), 181–185.

    Google Scholar 

  3. R. J. R. Back,Refining atomicity in parallel algorithms, Reports in Computer Science 57, Åbo Akademi 1988.

  4. R. J. R. Back, E. Hartikainen and R. Kurki-Suonio,Multi-process handshaking on broadcasting networks, Reports in Computer Science 42, Åbo Akademi 1985.

  5. R. J. R. Back and R. Kurki-Suonio,Decentralization of process nets with a centralized control. In 2nd ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, Montreal, Canada, Aug. 1983, 131–142.

  6. R. J. R. Back and R. Kurki-Suonio,A case study in constructing distributed algorithms: distributed exchange sort, In Proc. Winter School on Theoretical Computer Science, Lammi, Finland, Jan. 1984, Finnish Society of Information Processing Science, 1–33.

  7. R. J. R. Back and R. Kurki-Suonio,A new paradigm for the design of concurrent systems, Ada Letters VII, 6 (Fall 1987), 110–112.

    Google Scholar 

  8. R. J. R. Back and R. Kurki-Suonio,Serializability in distributed systems with handshaking. In Automata, Languages and Programming (Ed. T. Lepisto and A. Salomaa), LNCS 317, Springer-Verlag, 1988, 52–66. An earlier version has appeared as Report CMU-CS-85-109, Carnegie-Mellon University, 1985.

  9. R. J. R. Back and R. Kurki-Suonio,Distributed cooperation with action systems, To appear in ACM Trans. Programming Languages and Systems. An earlier version has appeared as Reports in Computer Science 56, Åbo Akademi 1987.

  10. K. M. Chandy and J. Misra,A Foundation of Parallel Program Design, Addison-Wesley, 1988.

  11. E. W. Dijkstra,A Discipline of Programming, Prentice-Hall, 1976.

  12. C. Forgy and M. C. Dermot,OPS, a domain independent production system language, In Proc. Fifth International Joint Conference on Artificial Intelligence, Cambridge, Mass., 1977, 933–939.

  13. I. R. Forman,On the design of large distributed systems, Microelectronics and Computer Technology Corporation Report STP-098-86.

  14. D. Harel,Statecharts: a visual formalism for complex systems, Science of Computer Programming 8 (1987), 231–274.

    Google Scholar 

  15. C. A. R. Hoare,Communicating sequential processes, Commun. ACM 21, 8 (Aug. 1978), 666–677. Reprinted in Commun. ACM 26, 1 (Jan. 1983), 100–106.

    Google Scholar 

  16. C. A. R. Hoare,Communicating Sequential Processes, Prentice-Hall, 1985.

  17. R. Kurki-Suonio,Nondeterminism, parallelism and intermittent assertions, In Mathematical Studies in Information Processing (Ed. E. K. Blum, M. Paul and S. Takasu), LNCS 75, Springer-Verlag 1979, 106–126.

  18. R. Kurki-Suonio,Towards programming with knowledge expressions, In 13th ACM Symposium on Principles of Programming Languages, St. Petersburg Beach, Florida, Jan. 1986, 140–149.

  19. L. Lamport,A theorem on atomicity in distributed systems, Digital Systems Research Center Report 28, 1988.

  20. R. J. Lipton,Reduction: a method of proving properties of parallel programs, Commun. ACM 18, 12 (Dec. 1975), 717–721.

    Google Scholar 

  21. Z. Manna and A. Pnueli,How to cook a temporal proof system for your pet language, In 10th ACM Symposium on Principles of Programming Languages, Austin, Texas, Jan. 1983, 141–154.

  22. P. Naur,Formalization in program development, BIT 22, 4 (1982), 437–453.

    Google Scholar 

  23. S. Owicki and D. Gries,An axiomatic proof technique for parallel programs, Acta Informatica 6 (1976), 319–340.

    Google Scholar 

  24. A. Pnueli,Applications of temporal logic to the specification and verification of reactive systems: a survey of current trends, In Current Trends in Concurrency (Ed. J. W. de Bakker, W.-P. de Roever and G. Rozenberg), LNCS 224, Springer-Verlag 1986, 510–584.

Download references

Author information

Authors and Affiliations

Authors

Additional information

Dedicated to Peter Naur on the occasion of his 60th birthday

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kurki-Suonio, R., Kankaanpää, T. On the design of reactive systems. BIT 28, 581–604 (1988). https://doi.org/10.1007/BF01941136

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01941136

CR Categories

Keywords

Navigation