Skip to main content

Co-inductive axiomatization of a synchronous language

  • Refereed Papers
  • Conference paper
  • First Online:
Theorem Proving in Higher Order Logics (TPHOLs 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1479))

Included in the following conference series:

Abstract

Over the last decade, the increasing demand for the validation of safety critical systems lead to the development of domain-specific programming languages (e.g. synchronous languages) and automatic verification tools (e.g. model checkers). Conventionally, the verification of a reactive system is implemented by specifying a discrete model of the system (i.e. a finite-state machine) and then checking this model against temporal properties (e.g. using an automata-based tool). We investigate the use of a theorem prover, Coq, for the specification of infinite state systems and for the verification of co-inductive properties.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bruno Barras and al. The Coq Proof Assistant Reference Manual. Technical report, INRIA, 1996.

    Google Scholar 

  2. Saddek Bensalem, Paul Caspi, and Catherine Parent-Vigouroux. Handling dataflow programs in PVS. Research report (draft), Verimag, May 1996.

    Google Scholar 

  3. Albert Benveniste, Paul Le Guernic, and Christian Jacquemot. Synchronous programming with events and relations: the Signal language and its semantics. Science of Computer Programming, 16:103–149, 1991.

    Article  MATH  MathSciNet  Google Scholar 

  4. G. Berry. The Constructive Semantics of Pure Esterel. Book in preparation, current version 2.0, http://zenon.inria.fr/meije/esterel.

    Google Scholar 

  5. Gerard Berry and Georges Gonthier. The Esterel synchronous programming language: design, semantics, implementation. Science of Computer Programming, 19:87–152, 1992.

    Article  MATH  Google Scholar 

  6. C. Cornes and D. Terrasse. Inverting inductive predicates in Coq. In BRA Workshop on Types for Proofs and Programs (TYPES'95), volume 1158 of LNCS, 1996.

    Google Scholar 

  7. Thierry Gautier, Paul Le Guernic, and FranÇois Dupont. Signal v4: manuel de référence (version préliminaire). Publication interne 832, IRISA, June 1994.

    Google Scholar 

  8. Thierry Gautier, Paul Le Guernic, and Olivier Maffeis. For a New Real-Time Methodology. Research report, INRIA, 1994.

    Google Scholar 

  9. Eduardo Giménez. An Application of Co-Inductive Types in Coq: Verification of the Alternating Bit Protocol. In Proceedings of the 1995 Workshop on Types for Proofs and Programs, number 1158 in LNCS, pages 135–152. Springer Verlag, 1995.

    Google Scholar 

  10. Eduardo Giménez. Types Co-Inductifs et Vérification de Systèmes Réactifs dans Coq. In Proceedings of the Journées du GDR Programmation, Grenoble, 1995.

    Google Scholar 

  11. Eduardo Giménez. Un Calcul de Constructions Infinies et son Application à la Vérification des Systèmes Communicants. PhD thesis, Laboratoire de l'Informatique du Parallélisme, Ecole Normale Supérieure de Lyon, December 1996.

    Google Scholar 

  12. Andrew D. Gordon. The Formal Definition of a Synchronous Hardware-Description Language in Higher Order Logic. In Proceedings of the International Conference on Computer Design, pages 531–534. IEEE Computer Society Press, October 1992.

    Google Scholar 

  13. Andrew D. Gordon. A Mechanised Definition of Silage in HOL. Research report 287, University of Cambridge Computer Laboratory, February 1993.

    Google Scholar 

  14. N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. The synchronous dataflow programming language Lustre. Proc. of the IEEE, 79(9):1305–1320, September 1991.

    Article  Google Scholar 

  15. Michel Le Borgne, Hervé Marchand, Eric Rutten, and Mazen Samaan. Formal Verification of Signal Programs: Application to a Power Transformer Station Controller. In Proc. of the 5th Int. Conf. on Algebraic Methodology and Software Technology (AMAST'96), number 1101 in LNCS, pages 270–285, July 1997.

    Google Scholar 

  16. Xavier Leroy. The Objective Caml system, release 1.07. Documentation and users's manual, INRIA, December 1997.

    Google Scholar 

  17. F. Maraninchi. The Argos language: Graphical Representation of Automata and Description of Reactive Systems. In IEEE Workshop on Visual Languages, oct 1991.

    Google Scholar 

  18. Robin Milner and Mads Tofte. Co-induction in relational semantics. Theoretical Computer Science, 87(1):209–220, 16 September 1991.

    Article  MATH  MathSciNet  Google Scholar 

  19. David Nowak. http://www.irisa.fr/prive/nowak/signal-coq/. Coq code, IRISA, 1997.

    Google Scholar 

  20. David Nowak, Jean-Pierre Talpin, Thierry Gautier, and Paul Le Guernic. An ML-Like Module System for the Synchronous Language Signal. In Proceedings of European Conference on Parallel Processing (Euro-Par'97), number 1300 in LNCS, pages 1244–1253. Springer Verlag, August 1997.

    Google Scholar 

  21. Christine Paulin-Mohring. Circuits as streams in Coq: Verification of a sequential multiplier. In S. Berardi and M. Coppo, editors, Types for Proofs and Programs, TYPES'95, volume 1158 of Lecture Notes in Computer Science, 1996.

    Google Scholar 

  22. K. V. S. Prasad. A calculus of broadcasting systems. Science of Computer Programming, 25(2–3):285–327, December 1995.

    Article  MathSciNet  Google Scholar 

  23. B. Werner. Une Théorie des Constructions Inductives. PhD thesis, Université Paris VII, Mai. 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jim Grundy Malcolm Newey

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Nowak, D., Beauvais, J.R., Talpin, J.P. (1998). Co-inductive axiomatization of a synchronous language. In: Grundy, J., Newey, M. (eds) Theorem Proving in Higher Order Logics. TPHOLs 1998. Lecture Notes in Computer Science, vol 1479. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0055148

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-64987-8

  • Online ISBN: 978-3-540-49801-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics