COMPONENT-BASED VERIFICATION IN A SYNCHRONOUS SETTING
Abstract
Formal verification of properties in reactive real-time systems is crucial, as these systems are often safety-critical. Such systems are successfully implemented using synchronous languages, where refinement is a relevant operation. This paper investigates the interplay between this operation and formal verification. It turns out that, while for the refined program component-based verification of properties expressed using suitable temporal logics is easily achieved, component-based verification from the point of view of the refining program is best achieved with observers. Our results are based on a translation of synchronous programs into Boolean automata. Their practical relevance is illustrated with a protocol case study.
A preliminary version of this paper was presented at the First Asia-Pacific Conference on Quality Software (APAQS 2000) [19]. Work partially supported by the MURST project TOSCA.