TY - JOUR
T1 - 基于 SMT 的区域控制器同步反应式模型的形式化验证
AU - Li, Teng Fei
AU - Sun, Jun Feng
AU - Lv, Xin Jun
AU - Chen, Xiang
AU - Liu, Jing
AU - Sun, Hai Ying
AU - He, Ji Feng
N1 - Publisher Copyright:
© 2023 Chinese Academy of Sciences. All rights reserved.
PY - 2023
Y1 - 2023
N2 - Formal verification is a proven technique for improving product quality during software development of safety critical systems.However, the verification must be complete, both theoretically and in the interest of practicality.Data-flow verification is a pervading manifestation of such verification approaches—environmental input, generic function, high order iterative operation and intermediate variables are therefore crucial for analyzing usability of verification approaches.To verify a synchronous reactive model, engineers readily verify the control-flow model (i.e., safe state machine).Existing work shows that these approaches fall short of complete verification of synchronous reactive model of industrial software, which results in the loss of reaching the industrial requirements. It presents a significant pain point for adopting formal verification of industrial software.We draw on the insight that the synchronous reactive model of safety-critical systems should be verified completely, and the data-flow models should be considered.We present a novel approach for automated, generic verification that tailor to verify the integration of safe state machines and data-flow models.Furthermore, we adopt a synthesis-based approach where the SCADE models describe functional requirements, safety requirements and environmental inputs that can be verified for an SMT-based model checker through program synthesis to Lustre model.Our technique promotes program synthesis as a general primitive for improving the integrity of formal verification.We evaluate our approach on an industrial application (nearly two million line Lustre code) in rail transit.We show that our approach is effective in sidestepping long-standing and complex verification issues in large scale synchronous reactive model.
AB - Formal verification is a proven technique for improving product quality during software development of safety critical systems.However, the verification must be complete, both theoretically and in the interest of practicality.Data-flow verification is a pervading manifestation of such verification approaches—environmental input, generic function, high order iterative operation and intermediate variables are therefore crucial for analyzing usability of verification approaches.To verify a synchronous reactive model, engineers readily verify the control-flow model (i.e., safe state machine).Existing work shows that these approaches fall short of complete verification of synchronous reactive model of industrial software, which results in the loss of reaching the industrial requirements. It presents a significant pain point for adopting formal verification of industrial software.We draw on the insight that the synchronous reactive model of safety-critical systems should be verified completely, and the data-flow models should be considered.We present a novel approach for automated, generic verification that tailor to verify the integration of safe state machines and data-flow models.Furthermore, we adopt a synthesis-based approach where the SCADE models describe functional requirements, safety requirements and environmental inputs that can be verified for an SMT-based model checker through program synthesis to Lustre model.Our technique promotes program synthesis as a general primitive for improving the integrity of formal verification.We evaluate our approach on an industrial application (nearly two million line Lustre code) in rail transit.We show that our approach is effective in sidestepping long-standing and complex verification issues in large scale synchronous reactive model.
KW - formal verification
KW - high order iteration
KW - program transformation
KW - safety-critical systems
KW - synchronous reactive model
UR - https://www.scopus.com/pages/publications/85161414462
U2 - 10.13328/j.cnki.jos.006861
DO - 10.13328/j.cnki.jos.006861
M3 - 文章
AN - SCOPUS:85161414462
SN - 1000-9825
VL - 34
JO - Ruan Jian Xue Bao/Journal of Software
JF - Ruan Jian Xue Bao/Journal of Software
IS - 7
ER -