Skip to main content

Synchronous Observers and the Verification of Reactive Systems

  • Conference paper

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

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

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. D. Austry and G. Boudol. Algébre de processus et synchronisation. TCS, 30, April 1984.

    Google Scholar 

  2. 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.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. A. Bouajjani, J. C. Fernandez, N. Halbwachs, P. Raymond, and C. Ratel. Minimal state graph generation. Science of Computer Programming, 18:247–269, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  6. G. Berry and G. Gonthier. The Esterel synchronous programming language: Design, semantics, implementation. Science Of Computer Programming, 19(2):87–152, 1992.

    Article  MATH  Google Scholar 

  7. 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.

    Google Scholar 

  8. F. Boussinot and R. de Simone. The Esterel language. Proceedings of the IEEE, 79(9):1293–1304, September 1991.

    Article  Google Scholar 

  9. 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.

    Google Scholar 

  10. 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).

    Google Scholar 

  11. 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.

    Google Scholar 

  12. 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.

    Google Scholar 

  13. N. Halbwachs. Delay analysis in synchronous programs. In Fifth Int. Workshop on Computer Aided Verification, Elounda (Crete), July 1993.

    Google Scholar 

  14. N. Halb wachs. Synchronous programming of reactive systems. Kluwer Academic Pub., 1993.

    Google Scholar 

  15. 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.

    Article  Google Scholar 

  16. 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.

    Google Scholar 

  17. 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.

    Google Scholar 

  18. 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.

    Article  Google Scholar 

  19. G. Hoffmann and H. Wong-Toi. Symbolic synthesis of supervisory controllers. In American Control Conference, Chicago, iJune 1992.

    Google Scholar 

  20. Another look at real-time programming. Special Section of the Proceedings of the IEEE, 79(9):1293-1304, September 1991.

    Google Scholar 

  21. 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.

    Google Scholar 

  22. M. B. Josephs. Receptive process theory. Acta Informatica, 29, February 1992.

    Google Scholar 

  23. 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.

    Google Scholar 

  24. 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.

    Google Scholar 

  25. 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.

    Google Scholar 

  26. F. Maraninchi. Operational and compositional semantics of synchronous automaton compositions. In CONCUR’92, Stony Brook. LNCS 630, Springer Verlag, August 1992.

    Google Scholar 

  27. R. Milner. On relating synchrony and asynchrony. Technical Report CSR-75-80, Computer Science Dept., Edimburgh Univ., 1981.

    Google Scholar 

  28. R. Milner. Calculi for synchrony and asynchrony. TCS, 25(3), July 1983.

    Google Scholar 

  29. 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.

    Google Scholar 

  30. A. Pnueli and R. Rosner. On the synthesis of a reactive module. In 16th Conference on Principles of Programming Languages.ACM, 1989.

    Google Scholar 

  31. J. P. Queilleand J. Sifakis. Specification and verification of concurrent systems in Cesar. In International Symposium on Programming. LNCS 137, Springer Verlag, April 1982.

    Google Scholar 

  32. 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.

    Google Scholar 

  33. P. J. Ramadge and W. M. Wonham. The control of discrete event systems. Proceedings of the IEEE, 77(1), January 1989.

    Google Scholar 

  34. 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.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics