Article

Integrating Evolutionary Computation with Abstraction Refinement for Model Checking

IEEE Transactions on Computers (Impact Factor: 1.47). 02/2010; 59(1):116 - 126. DOI: 10.1109/TC.2009.105
Source: IEEE Xplore

ABSTRACT Model checking for large-scale systems is extremely difficult due to the state explosion problem. Creating useful abstractions for model checking task is a challenging problem, often involving many iterations of refinement. In this paper we consider techniques for model checking in the counter example-guided abstraction refinement. The state separation problem is one popular approach in counterexample-guided abstraction refinement, and it poses the main hurdle during the refinement process. To achieve effective minimization of the separation set, we present a novel probabilistic learning approach based on the sample learning technique, evolutionary algorithm, and effective heuristics. We integrate it with the abstraction refinement framework in the VIS model checker. We include experimental results on model checking to compare our new approach to recently published techniques. The benchmark results show that our approach has overall speedup of more than 56 percent against previous techniques. Our work is the first successful integration of evolutionary algorithm and abstraction refinement for model checking.

0 Bookmarks
 · 
100 Views
  • [Show abstract] [Hide abstract]
    ABSTRACT: Abstraction is one of the most important strategies for dealing with the state space explosion problem in model checking. In an abstract model, the state space is largely reduced, however, a counterexample found in such a model may not be a real counterexample. Accordingly, the abstract model needs to be further refined where an NP-hard state separation problem is often involved. In this paper, a novel approach is presented, in which extra boolean variables are added to the abstract model for the refinement. With this approach, not only the NP-hard state separation problem can be avoided, but also a smaller refined abstract model can be obtained.
    Theoretical Computer Science 11/2012; 461:76–85. DOI:10.1016/j.tcs.2011.12.014 · 0.52 Impact Factor
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: Abstraction is one of the most important strategies for dealing with the state space explosion problem in model checking. In the abstract model, although the state space is largely reduced, however, a counterexample found in such a model may not be a real counterexample. And the abstract model needs to be further refined where an NP-hard state separation problem is often involved. In this paper, a novel method is presented by adding extra variables to the abstract model for the refinement. With this method, not only the NP-hard state separation problem is avoided, but also a smaller refined abstract model is obtained. Comment: 14 pages, 10 figures
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: Abstraction is one of the most important strategies for dealing with the state space explosion problem in model checking. In the abstract model, the state space is largely reduced, however, a counterexample found in such a model may not be a real counterexample in the concrete model. Accordingly, the abstract model needs to be further refined. How to check whether or not a reported counterexample is spurious is a key problem in the abstraction-refinement loop. In this paper, a formal definition for spurious path is given. Based on it, efficient algorithms for detecting spurious counterexamples are proposed.