Heuristics for model checking Java programs

被引:49
|
作者
Groce A. [1 ]
Visser W. [2 ]
机构
[1] School of Computer Science, Carnegie Mellon University, Pittsburgh, PA
[2] RIACS, NASA Ames Research Center, Moffett Field, CA
关键词
Coverage metrics; Heuristic search; Model checking; Testing;
D O I
10.1007/s10009-003-0130-9
中图分类号
学科分类号
摘要
Model checking of software programs has two goals - the verification of correct software and the discovery of errors in faulty software. Some techniques for dealing with the most crucial problem in model checking, the state space explosion problem, concentrate on the first of these goals. In this paper we present an array of heuristic model checking techniques for combating the state space explosion when searching for errors. Previous work on this topic has mostly focused on property-specific heuristics closely related to particular kinds of errors. We present structural heuristics that attempt to explore the structure (branching structure, thread interdependency structure, abstraction structure) of a program in a manner intended to expose errors efficiently. Experimental results show the utility of this class of heuristics. In contrast to these very general heuristics, we also present very lightweight techniques for introducing program-specific heuristic guidance. © 2004 Springer-Verlag.
引用
收藏
页码:260 / 276
页数:16
相关论文
共 50 条
  • [41] A framework for model checking concurrent Java components
    School of Maths, Physics and Information Technology, James Cook University , Australia
    J. Softw., 2009, 8 (867-874):
  • [42] Bounded Model Checking for Probabilistic Programs
    Jansen, Nils
    Dehnert, Christian
    Kaminski, Benjamin Lucien
    Katoen, Joost-Pieter
    Westhofen, Lukas
    AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS, ATVA 2016, 2016, 9938 : 68 - 85
  • [43] Abstract Model Checking of tccp programs
    Alpuente, MarIa
    Gallardo, MarIa Del Mar
    Pimentel, Ernesto
    Villanueva, Alicia
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 112 : 19 - 36
  • [44] JBMC: Bounded Model Checking for Java']Java Bytecode (Competition Contribution)
    Cordeiro, Lucas
    Kroening, Daniel
    Schrammel, Peter
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT III, 2019, 11429 : 219 - 223
  • [45] Bounded model checking of concurrent programs
    Rabinovitz, I
    Grumberg, O
    COMPUTER AIDED VERIFICATION, PROCEEDINGS, 2005, 3576 : 82 - 97
  • [46] Model Checking Parallel Programs with Inputs
    Barnat, Jiri
    Bauch, Petr
    Havel, Vojtech
    2014 22ND EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING (PDP 2014), 2014, : 756 - 759
  • [47] LTL Model Checking for Recursive Programs
    Huang, Geng-Dian
    Cai, Lin-Zan
    Wang, Farn
    AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS, PROCEEDINGS, 2009, 5799 : 382 - 396
  • [48] Autotuning Parallel Programs by Model Checking
    N. O. Garanina
    S. P. Gorlatch
    Automatic Control and Computer Sciences, 2022, 56 : 634 - 648
  • [49] Model checking nonblocking MPI programs
    Siegel, Stephen F.
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, PROCEEDINGS, 2007, 4349 : 44 - 58
  • [50] Model Checking Linear Programs with Arrays
    Armando, Alessandro
    Benerecetti, Massimo
    Mantovani, Jacopo
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2006, 144 (03) : 79 - 94