Abstract

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.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.