Publication details

Accelerating Temporal Verification of Simulink Diagrams Using Satisfiability Modulo Theories

Investor logo
Authors

BAUCH Petr HAVEL Vojtěch BARNAT Jiří

Year of publication 2016
Type Article in Periodical
Magazine / Source Software Quality Journal
MU Faculty or unit

Faculty of Informatics

Citation
Doi http://dx.doi.org/10.1007/s11219-014-9259-x
Field Informatics
Keywords formal verification; model checking; circuit analysis; satisfiability modulo theories
Description Automatic verification of programs and computer systems with input variables represents a significant and well-motivated challenge. The case of Simulink diagrams is especially difficult, because there the inputs are read iteratively and the number of input variables is in theory unbounded. We apply the techniques of explicit model checking to account for the temporal (control) aspects of verification and use set-based representation of data, thus handling both sources of non-determinism present in the verification. Two different representations of sets are evaluated in scalability with respect to the range of input variables. Explicit (enumerating) sets are very fast for small ranges but fail to scale. Symbolic sets, represented as first-order formulas in the bit-vector theory and compared using satisfiability modulo theory solvers, scale well to arbitrary (though still bounded) range of input variables. To leverage the combined strengths of explicit and symbolic representations, we have designed a hybrid representation which we showed to outperform both pure representations. Thus the proposed method allows complete automatic verification without the need to limit the non-determinism of input. Moreover, the principle underlying the hybrid representation entails inferring knowledge about the system under verification, which the developers did not explicitly include in the system, and which can significantly accelerate the verification process.
Related projects:

You are running an old browser version. We recommend updating your browser to its latest version.

More info