Statecharts: A visual formalism for complex systems
Science of Computer Programming
Synchronous programming with events and relations: the SIGNAL language and its semantics
Science of Computer Programming
The ESTEREL synchronous programming language: design, semantics, implementation
Science of Computer Programming
Co-inductive Axiomatization of a Synchronous Language
Proceedings of the 11th International Conference on Theorem Proving in Higher Order Logics
The Steam-Boiler Problem in Lustre
Formal Methods for Industrial Applications, Specifying and Programming the Steam Boiler Control (the book grow out of a Dagstuhl Seminar, June 1995).
A comparative study of two formal semantics of the SIGNAL language
Frontiers of Computer Science: Selected Publications from Chinese Universities
Hi-index | 0.01 |
Over the last decade, the increasing demand for the validation of safety critical systems has led to the development of domainspecific 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 synchronous programming language, SIGNAL, and of a proof assistant, CoQ, for the specification and the verification of co-inductive properties of the well-known steam-boiler problem. By way of this large-scale case-study, the SiGNAL-CoQ formal approach, i.e. the combined use of SIGNAL and CoQ, is demonstrated to be a wellsuited and practical approach for the validation of reactive systems. Indeed, the deterministic model of concurrency of SIGNAL, for specifying systems, together with the unparalleled expressive power of the CoQ proof assistant, for verifying properties, enables to disregard any compromise incurred by any limitation of either the specification and the verification tools.