Specification Quality Metrics Based on Mutation and Inductive Incremental Model Checking

被引:0
作者
Todorov, Vassil [1 ,2 ]
Taha, Safouan [2 ]
Boulanger, Frederic [2 ]
机构
[1] Grp PSA, F-78140 Velizy Villacoublay, France
[2] Univ Paris Saclay, CNRS, Cent Supelec, LRI, F-91405 Orsay, France
来源
NASA FORMAL METHODS (NFM 2020) | 2020年 / 12229卷
关键词
Formal verification; Model-based mutation; Incremental inductive model checking; Model coverage; Symbolic model checking; SOFTWARE;
D O I
10.1007/978-3-030-55754-6_11
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
When using formal verification on Simulink or SCADE models, an important question about their certification is how well the specified properties cover the entire model. A method using unsatisfiable cores and inductive model checking called IVC (Inductive Validity Cores) has been recently proposed within modern SMT-based model checkers such as JKind. The IVC algorithm determines a minimal set of model elements necessary to establish a proof and gives back the traceability to the design elements (lines of code) necessary for the proof. These metrics are interesting but are rather coarse grain for certification purposes. In this paper, we propose to use mutation combined with incremental inductive model checking to give more precision and quality to the traceability process and look inside the lines of code. Our algorithm, based on the result of IVC, mutates the source code to determine which parts inside a line of code have an impact on the properties (killed mutants) and which parts have no impact on the properties (survived mutants). Furthermore, using the incremental feature present in modern SMT-solvers, we observe that mutation can scale up to industrial models. We demonstrate the metrics first on a simple example, then on a complex industrial program and on the JKind benchmark.
引用
收藏
页码:187 / 203
页数:17
相关论文
共 26 条
[1]  
Barrett C., 2010, WORKSH SAT MOD THEOR
[2]   Recursive Online Enumeration of All Minimal Unsatisfiable Subsets [J].
Bendik, Jaroslav ;
Cerna, Ivana ;
Benes, Nikola .
AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS (ATVA 2018), 2018, 11138 :143-159
[3]   Online Enumeration of All Minimal Inductive Validity Cores [J].
Bendik, Jaroslav ;
Ghassabani, Elaheh ;
Whalen, Michael ;
Cerna, Ivana .
SOFTWARE ENGINEERING AND FORMAL METHODS, SEFM 2018, 2018, 10886 :189-204
[4]  
Berryhill R., 2019, CHASING MINIMAL INDU
[5]   Property-directed incremental invariant generation [J].
Bradley, Aaron R. ;
Manna, Zohar .
FORMAL ASPECTS OF COMPUTING, 2008, 20 (4-5) :379-405
[6]  
Caspi P., 1987, LUSTRE, a declarative language for programming synchronous systems, P178, DOI DOI 10.1145/41625.41641
[7]  
Chockler H, 2001, LECT NOTES COMPUT SC, V2102, P66
[8]  
Cimatti A., 2013, ARXIV
[9]   FAST Failure Detection Service for Large Scale Distributed Systems [J].
Kalewski, Michal ;
Kobusinska, Anna ;
Kobusinski, Jacek .
PROCEEDINGS OF THE PARALLEL, DISTRIBUTED AND NETWORK-BASED PROCESSING, 2009, :229-236
[10]  
Das S, 2005, I CONF VLSI DESIGN, P201