SMT-based Software Model Checking: An Experimental Comparison of Four Algorithms

被引:4
|
作者
Beyer, Dirk [1 ]
Dangl, Matthias [1 ]
机构
[1] Univ Passau, Passau, Germany
关键词
Software verification; Program analysis; Bounded model checking; k-induction; IMPACT; Lazy abstraction; SMT solving; K-INDUCTION;
D O I
10.1007/978-3-319-48869-1_14
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
After many years of successful development of new algorithms for software model checking, there is a need to consolidate the knowledge about the different algorithms and approaches. This paper gives a coarse overview in terms of effectiveness and efficiency of four algorithms. We compare the following different "schools of thought" of algorithms: bounded model checking, k-induction, predicate abstraction, and lazy abstraction with interpolants. Those algorithms are well-known and successful in software verification. They have in common that they are based on SMT solving as the back-end technology, using the theories of uninterpreted functions, bit vectors, and floats as underlying theory. All four algorithms are implemented in the verification framework CPACHECKER. Thus, we can present an evaluation that really compares only the core algorithms, and keeps the design variables such as parser front end, SMT solver, used theory in SMT formulas, etc. constant. We evaluate the algorithms on a large set of verification tasks, and discuss the conclusions.
引用
收藏
页码:181 / 198
页数:18
相关论文
共 50 条
  • [1] SMT-Based Software Model Checking
    Cimatti, Alessandro
    MODEL CHECKING SOFTWARE, 2010, 6349 : 1 - 3
  • [2] SMT-based Bounded Model Checking for Cooperative Software with a Deterministic Scheduler
    Zhang, Haitao
    Lu, Yonggang
    STRUCTURED OBJECT-ORIENTED FORMAL LANGUAGE AND METHOD, 2017, 10189 : 181 - 200
  • [3] SMT-based model checking for recursive programs
    Komuravelli, Anvesh
    Gurfinkel, Arie
    Chaki, Sagar
    FORMAL METHODS IN SYSTEM DESIGN, 2016, 48 (03) : 175 - 205
  • [4] SMT-based model checking for recursive programs
    Anvesh Komuravelli
    Arie Gurfinkel
    Sagar Chaki
    Formal Methods in System Design, 2016, 48 : 175 - 205
  • [5] SMT-Based Model Checking for Recursive Programs
    Komuravelli, Anvesh
    Gurfinkel, Arie
    Chaki, Sagar
    COMPUTER AIDED VERIFICATION, CAV 2014, 2014, 8559 : 17 - 34
  • [6] SMT-Based Unbounded Model Checking for ATL
    Kanski, Michal
    Niewiadomski, Artur
    Kacprzak, Magdalena
    Penczek, Wojciech
    Nabialek, Wojciech
    VERIFICATION AND EVALUATION OF COMPUTER AND COMMUNICATION SYSTEMS (VECOS 2021), 2022, 13187 : 43 - 58
  • [7] SMT-Based Bounded Model Checking for Embedded ANSI-C Software
    Cordeiro, Lucas
    Fischer, Bernd
    Marques-Silva, Joao
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2012, 38 (04) : 957 - 974
  • [8] SMT-Based Bounded Model Checking for Embedded ANSI-C Software
    Cordeiro, Lucas
    Fischer, Bernd
    Marques-Silva, Joao
    2009 IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2009, : 137 - 148
  • [9] Verifying cooperative software: A SMT-based bounded model checking approach for deterministic scheduler
    Zhang, Haitao
    Li, Guoqiang
    Sun, Daniel
    Lu, Yonggang
    Hsu, Ching-Hsien
    JOURNAL OF SYSTEMS ARCHITECTURE, 2017, 81 : 7 - 16
  • [10] Light-Weight SMT-based Model Checking
    Ghilardi, Silvio
    Ranise, Silvio
    Valsecchi, Thomas
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2009, 250 (02) : 85 - 102