Abstract
Synchronous programming [20, 14] is a useful approach to design reactive systems. A synchronous program is supposed to instantly and deterministically react to events coming from its environment. The advantages of this approach have been pointed out elsewhere [20]. Synchronous languages are simple and clean, they have been given simple and precise formal semantics, they allow especially elegant programming style. They conciliate concurrency (at least at the description level) with determinism. They can be compiled into a very efficient sequential code, by means of a specific compiling technique: The control structure of the object code is a finite automaton which is synthesized by an exhaustive simulation of a finite abstraction of the program.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
D. Austry and G. Boudol. Algébre de processus et synchronisation. TCS, 30, April 1984.
M. Abdi and L. Lamport. Composing specifications. In J.W. de Bakker, W.-P. de Roever, and G. Rozemberg, editors, REX Workshop on Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, LNCS 430, Springer Verlag, May 1989.
M. Abadi, L. Lamport, and P. Wolper. Realizable and unrealizable specifications of reactive systems. In G. Ausiello, M. Dezani-Ciancaglini, and S. Ronchi Delia Rocca, editors, 16th ICALP, pages 1–17. LNCS 372, Springer Verlag, July 1989.
K. A. Bartlett, R. K. Brayton, G. D. Hachtel, R. M. Jacoby, R. Rudell, A. Sangiovanni-Vincentelli, and A. Wang. Multilevel logic minimization using implicit don’t cares. IEEE Transactions on CAD/ICAS, CAD-7(6):723–739, June 1988.
A. Bouajjani, J. C. Fernandez, N. Halbwachs, P. Raymond, and C. Ratel. Minimal state graph generation. Science of Computer Programming, 18:247–269, 1992.
G. Berry and G. Gonthier. The Esterel synchronous programming language: Design, semantics, implementation. Science Of Computer Programming, 19(2):87–152, 1992.
G. Boudol, V. Roy, R. de Simone, and D. Vergamini. Process calculi, from theory to practice: Verification tools. In International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, LNCS 407, Springer Verlag, 1990.
F. Boussinot and R. de Simone. The Esterel language. Proceedings of the IEEE, 79(9):1293–1304, September 1991.
P. Cousot and R. Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In 4th A CM Symposium on Principles of Programming Languages, January 1977.
P. Cousot and R. Cousot. Abstract interpretation and application to logic programs. Research Report LIX/RR/92/08, Ecole Polytechnique, March 1992. (to appear in the Journal of Logic Programming, special issue on Abstract Interpretation).
E. M. Clarke, E. A. Emerson, and A. P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM TOPLAS, 8(2), 1986.
M. Damiani and G. DeMicheli. Don’t care set specifications in combinational and synchronous logic circuits. Technical Report CSL-TR-92-531, Computer Systems Laboratory, Stanford University, 1992.
N. Halbwachs. Delay analysis in synchronous programs. In Fifth Int. Workshop on Computer Aided Verification, Elounda (Crete), July 1993.
N. Halb wachs. Synchronous programming of reactive systems. Kluwer Academic Pub., 1993.
N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. The synchronous dataflow programming language Lustre. Proceedings of the IEEE, 79(9).1305–1320, September 1991.
N. Halbwachs, F. Lagnier, and C. Ratel. An experience in proving regular networks of processes by modular model checking. Acta Informatica, 29(6/7), 1992.
N. Halbwachs, F. Lagnier, and C. Ratel. Programming and verifying real-time systems by means of the synchronous data-flow programming language Lustre. IEEE Transactions on Software Engineering, Special Issue on the Specification and Analysis of Real-Time Systems, September 1992.
G. J. Holzmann. Automated protocol validation in Argos: Assertion proving and scatter searching. IEEE Trans, on Software Ingineering, SE-13(6):683–696, June 1987.
G. Hoffmann and H. Wong-Toi. Symbolic synthesis of supervisory controllers. In American Control Conference, Chicago, iJune 1992.
Another look at real-time programming. Special Section of the Proceedings of the IEEE, 79(9):1293-1304, September 1991.
B. Josko. MCTL—An extension of CTL for modular verification of concurrent systems. In Workshop on Temporal Logic in Specification, Manchester.LNCS 398, Springer Verlag, 1987.
M. B. Josephs. Receptive process theory. Acta Informatica, 29, February 1992.
R. P. Kurshan and L. Lamport. Verification of a multiplier: 64 bits and beyond. In Fifth Int. Workshop on Computer Aided Verification, Elounda (Crete), July 1993.
R. P. Kurshan. Analysis of discrete event coordination. In J.W. de Bakker, W.-P. de Roever, and G. Rozemberg, editors, REX Workshop on Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness. LNCS 430, Springer Verlag, May 1989.
D. Lee and M. Yanakakis. Online minimization of transition systems. In 24th ACM Symp. on the Theory of Computing, STOC’92, Vancouver, B.C., 1992.
F. Maraninchi. Operational and compositional semantics of synchronous automaton compositions. In CONCUR’92, Stony Brook. LNCS 630, Springer Verlag, August 1992.
R. Milner. On relating synchrony and asynchrony. Technical Report CSR-75-80, Computer Science Dept., Edimburgh Univ., 1981.
R. Milner. Calculi for synchrony and asynchrony. TCS, 25(3), July 1983.
A. Pnueli. How vital is liveness? Verifying timing properties of reactive and hybrid systems. In CONCUR’92, Stony Brook. LNCS 630, Springer Verlag, August 1992.
A. Pnueli and R. Rosner. On the synthesis of a reactive module. In 16th Conference on Principles of Programming Languages.ACM, 1989.
J. P. Queilleand J. Sifakis. Specification and verification of concurrent systems in Cesar. In International Symposium on Programming. LNCS 137, Springer Verlag, April 1982.
P. J. Ramadge and W. M. Wonham. Supervisory control of a class of discrete event processes. SIAM J. Control and Optimization, 25(1), January 1987.
P. J. Ramadge and W. M. Wonham. The control of discrete event systems. Proceedings of the IEEE, 77(1), January 1989.
P. Wolper and V. Lovinfosse. Verifying properties of large sets of processes with network invariants. In International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble.LNCS 407, Springer Verlag, 1989.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1994 British Computer Society
About this paper
Cite this paper
Halbwachs, N., Lagnier, F., Raymond, P. (1994). Synchronous Observers and the Verification of Reactive Systems. In: Nivat, M., Rattray, C., Rus, T., Scollo, G. (eds) Algebraic Methodology and Software Technology (AMAST’93). Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3227-1_8
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3227-1_8
Publisher Name: Springer, London
Print ISBN: 978-3-540-19852-9
Online ISBN: 978-1-4471-3227-1
eBook Packages: Springer Book Archive