Abstract
Statecharts is a behavioral specification language proposed for specifying large real-time, event driven, reactive systems. It is a graphical language based on state-transition diagrams for finite state machines extended with many features like hierarchy, concurrency, broadcast communication and time-out. By generating external events symbolically, Statecharts can be executed, thereby turning it into a programming language for real-time concurrency (as well as enabling rapid prototyping). As such it is amenable to compositional program verification. We supply Statecharts with a compositional proof system for both safety and liveness properties which we prove to be sound and (relatively) complete. Especially, we focus on extending compositional techniques for proving safety properties to liveness, without immediately adopting temporal logic, since that formalism, elegant as it is, introduces some difficulties with a compositional treatment of sequentiality and looping.
This research was supported by Esprit Project 937 (DESCARTES) and Esprit-BRA project 3096 (SPEC).
The work described here was done while this author was at the Eindhoven University of Technology, partially supported by the Netherlands National Facility for Informatics (NFI).
Present address: Institut für Informatik und Praktische Mathematik II, Christian-AlbrechtsUniversität Kiel, 2300 Kiel 1, Fed. Rep. Germany.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Berry B, Cosserat L. The synchronous programming language Esterel and its mathematical semantics. Proceedings CMU Seminar on Concurrency, pages 389–349. LNCS 197, Springer-Verlag, 1985.
Bergerand J-L, Caspi P, Halbwachs N. Outline of a real-time data flow language. Proceedings IEEE Real-Time Systems Symposium, 1985.
Bernstein A, Harter (Jr) PK. Proving real-time properties of programs with temporal logic. Proceedings 8th Annual ACM Symposium on Operating System Principles, pages 1–11, 1981.
Barringer H, Kuiper R, Pnueli A. Now you may compose temporal logic specifications. Proceedings 16th Annual ACM Symposium on Theory of Computing, pages 51–63, 1984.
de Bakker J. Mathematical Theory of Program Correctness. Prentice-Hall, 1980.
Drusinsky D, Harel D. On the power of cooperative concurrency. Proceedings of Concurrency 88, pages 74–103. LNCS 335, Springer-Verlag, 1988.
Francez N. Fairness. Springer-Verlag, 1986.
le Guernic P, Benveniste A. Real-time, synchronous, data-flow programming: The language Signal and its mathematical semantics. Technical Report 620, INRIA, Rennes, 1986.
Harel D. First Order Dynamic Logic. LNCS 68, Springer-Verlag, 1979.
Harel D. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8 (3): 231–374, 1987.
Harel D. On visual formalisms. Communications of the ACM, 31:514 — 530, 1988.
Huizing C, Gerth R, de Roever WP. Modelling Statecharts behaviour in a fully abstract way. Proceedings 13th Colloquium on Trees in Algebra and Programming, pages 271–394. LNCS 299, Springer-Verlag, 1988.
Hoare CAR. Communicating Sequential Processes. Communications of the ACM, 21 (8): 666–677, 1978.
Hoare CAR. Communicating Sequential Processes. Prentice-Hall, 1985.
Hooman J. A compositional proof theory for real-time distributed message passing. Parallel Architectures and Languages Europe, pages 315–332. LNCS 259, Springer-Verlag, 1987.
Harel D, Pnueli A, Pruzan-Schmidt J, Sherman R. On the formal semantics of Statecharts. Proceedings IEEE Symposium on Logic in Computer Science, pages 54–64, 1987.
Huizing C, de Roever WP. Everything you always wanted to know about Statecharts but were afraid to ask. Technical Report TIR 90. 3, Eindhoven University of Technology, The Netherlands, 1990.
Hooman J, Ramesh S, de Roever WP. A compositional axiomatisation of Statecharts: Soundness and completeness. Technical Report TIR 89. 2, Eindhoven University of Technology, The Netherlands, 1989.
Hooman J, Widom J. A temporal-logic based compositional proof system for real-time message passing. Parallel Architectures and Languages Europe, volume II, pages 424–341. LNCS 366, Springer-Verlag, 1989.
Jones CB. Tentative steps towards a development method for interfering programs. ACM Transactions on Programming Languages and Systems, 5(4):596619, 1983.
Koymans R, Shyamasundar RK, de Roever WP, Gerth R, Arun-Kumar S. Compositional semantics for real-time distributed computing. Information and Computation, 79 (3): 210–356, 1988.
Lamport L. What Good is Temporal Logic, pages 657–668. Information Processing, R.E. Manson (ed ). North Holland, 1983.
Misra J, Chandy KM. Proofs of networks of processes. IEEE Transactions on Software Engineering, 7 (7): 417–326, 1981.
Nguyen V, Demers A, Gries D, Owicki S. A model and temporal proof system for networks of processes. Distributed Computing, 1 (1): 7–35, 1986.
Shalev M. On the Operational Semantics of Statecharts. M.Sc. thesis, The Weizmann Institute of Science, Rehovot, Israel, 1988.
Staunstrup J, Garland S, Guttag J. Compositional verification of VLSI circuits. Proceedings Workshop On Automatic Verification Methods For Finite State Systems. pages 349–364, LNCS 407, Springer-Verlag, 1989.
Sifakis J (editor). Proceedings Workshop On Automatic Verification Methods For Finite State Systems. LNCS 407, Springer-Verlag, 1989.
Shankar AU, Lam SS. Time-dependent distributed systems: proving safety, liveness and real-time properties. Distributed Computing, 2: 61–79, 1987.
Weihrauch K. Computability, volume 9 of EATCS Monographs on Theoretical Computer Science. Springer-Verlag, 1987.
Zwiers J, de Roever WP. Predicates are predicate transformers: a unified compositional theory for concurrency. Proceedings 8th ACM Symposium on Principles of Distributed Computing, 1989.
Zwiers J, de Roever WP, van Emde Boas P. Compositionality and concurrent networks: soundness and completeness of a proofsystem. Technical Report 57, University of Nijmegen, The Netherlands, 1984.
Zwiers J. Compositionality, Concurrency and Partial Correctness. LNCS 321, Springer-Verlag, 1989.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hooman, J.J.M., Ramesh, S., de Roever, W.P. (1990). A Compositional Axiomatisation of Safety and Liveness Properties for Statecharts. In: Semantics for Concurrency. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3860-0_15
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3860-0_15
Publisher Name: Springer, London
Print ISBN: 978-3-540-19625-9
Online ISBN: 978-1-4471-3860-0
eBook Packages: Springer Book Archive