Block Library Driven Translation Validation for Dataflow Models in Safety Critical Systems
- First Online:
- Cite this paper as:
- Dieumegard A., Toom A., Pantel M. (2016) Block Library Driven Translation Validation for Dataflow Models in Safety Critical Systems. In: ter Beek M., Gnesi S., Knapp A. (eds) Critical Systems: Formal Methods and Automated Verification. FMICS 2016, AVoCS 2016. Lecture Notes in Computer Science, vol 9933. Springer, Cham
Model driven engineering is widely used in the development of complex and safety critical systems. Systems’ designs are specified and validated in domain specific modeling languages and software code is often produced by autocoding. Thus the correctness of the final systems depend on the correctness of those tools. We propose an approach for the formal verification of code generation from dataflow languages, such as Simulink, based on translation validation. It relies on the BlockLibraryDSL for the formal specification and verification of the structure, semantics and variability of the complex block libraries found in these languages. These specifications are then used here for deriving model and block-specific semantic contracts that will be woven into the generated C code. We present two different approaches for performing the block matching and weaving step. Finally, we rely on the Frama-C toolset and state-of-the-art SMT solvers for verifying the annotated code.