Towards a Refinement Calculus for Concurrent Real-Time Programs
We define a language and a predicative semantics to model concurrent real-time programs. We consider different communication paradigms between the concurrent components of a program: communication via shared variables and asynchronous message passing (for different models of channels).
The semantics is the basis for a refinement calculus to derive machine-independent concurrent real-time programs from specifications. We give some examples of refinement laws that deal with concurrency.
Unable to display preview. Download preview PDF.
- 1.R.-J. Back and J. von Wright. Refinement Calculus: A Systematic Introduction. Springer, 1998.Google Scholar
- 3.E. W. Dijkstra. A Discipline of Programming. Prentice-Hall Series in Automatic Computation. Prentice Hall, 1976.Google Scholar
- 5.S. Grundon, I. Hayes, and C. Fidge. Timing constraint analysis. In C. McDonald, editor, Computer Science’ 98: Proc. 21st Australasian Computer Science Conference, pages 575–586. Springer-Verlag, Singapore, 1998.Google Scholar
- 7.I. J. Hayes, C. J. Fidge, and K. Lermer. Semantic characterisation of dead control-flow paths. IEE Proceedings-Software, 148(6): 175–186, December 2001.Google Scholar
- 9.E. C. R. Hehner. A Practical Theory of Programming. Springer, 1993.Google Scholar
- 11.C. Morgan. Programming from Specifications, 2nd edition. International Series in Computer Science. Prentice Hall, 1994.Google Scholar