Craig vs. Newton in Software Model Checking

被引:10
|
作者
Dietsch, Daniel [1 ]
Heizmann, Matthias [1 ]
Musa, Betim [1 ]
Nutz, Alexander [1 ]
Podelski, Andreas [1 ]
机构
[1] Univ Freiberg, Freiburg, Germany
关键词
Formal Verification; Craig Interpolation; Unsatisfiable Cores;
D O I
10.1145/3106237.3106307
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Ever since the seminal work on SLAM and BLAST, software model checking with counterexample-guided abstraction refinement (CEGAR) has been an active topic of research. The crucial procedure here is to analyze a sequence of program statements (the counterexample) to find building blocks for the overall proof of the program. We can distinguish two approaches (which we name Craig and Newton) to implement the procedure. The historically first approach, Newton (named after the tool Newton from the SLAM toolkit), is based on symbolic execution. The second approach, Craig, is based on Craig interpolation. It was widely believed that Craig is substantially more effective than Newton. In fact, 12 out of the 15 CEGAR-based tools in SV-COMP are based on Craig. Advances in software model checkers based on Craig, however, can go only lockstep with advances in SMT solvers with Craig interpolation. It may be time to revisit Newton and ask whether Newton can be as effective as Craig. We have implemented a total of 11 variants of Craig and Newton in two different state-of-the-art software model checking tools and present the outcome of our experimental comparison.
引用
收藏
页码:487 / 497
页数:11
相关论文
共 50 条
  • [1] Algorithms for Software Model Checking: Predicate Abstraction vs. IMPACT
    Beyer, Dirk
    Wendler, Philipp
    PROCEEDINGS OF THE 12TH CONFERENCE ON FORMAL METHODS IN COMPUTER-AIDED DESIGN (FMCAD 2012), 2012, : 106 - 113
  • [2] Model checking vs. generalized model checking: Semantic minimizations for temporal logics
    Godefroid, P
    Huth, M
    LICS 2005: 20TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE - PROCEEDINGS, 2005, : 158 - 167
  • [3] Numerical vs. statistical probabilistic model checking
    Håkan L. S. Younes
    Marta Kwiatkowska
    Gethin Norman
    David Parker
    International Journal on Software Tools for Technology Transfer, 2006, 8 (3) : 216 - 228
  • [4] Applications of Craig interpolants in model checking
    McMillan, KL
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PROCEEDINGS, 2005, 3440 : 1 - 12
  • [5] Applications of Craig interpolation to model checking
    McMillan, K
    COMPUTER SCIENCE LOGIC, PROCEEDINGS, 2004, 3210 : 22 - 23
  • [6] Applications of Craig interpolation to model checking
    McMillan, K
    APPLICATIONS AND THEORY OF PETRI NETS 2005, PROCEEDINGS, 2005, 3536 : 15 - 16
  • [7] Error detection using model checking vs. simulation
    Verma, Shireesh
    Lee, Patricia
    Harris, Ian G.
    HLDVT'06: ELEVENTH ANNUAL IEEE INTERNATIONAL HIGH-LEVEL DESIGN VALIDATION AND TEST WORKSHOP, PROCEEDINGS, 2006, : 55 - +
  • [8] States vs. traces in model checking by abstract interpretation
    Giacobazzi, R
    Ranzato, F
    STATIC ANALYSIS, PROCEEDINGS, 2002, 2477 : 461 - 476
  • [9] The Genesis and Development of Model Checking: Fact vs. Fiction
    Emerson, Allen
    PROCEEDINGS OF THE 15TH CONFERENCE ON FORMAL METHODS IN COMPUTER-AIDED DESIGN (FMCAD 2015), 2015, : 7 - 7
  • [10] Six years later: testing vs. model checking
    Beyer, Dirk
    Lemberger, Thomas
    INTERNATIONAL JOURNAL ON SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER, 2024, 26 (06) : 633 - 646