Formula-Dependent Abstraction for CTL Model Checking

We present a state abstraction that is defined with respect to a given CTL formula. Since it does not attempt to preserve all ACTL formula, like simulation does, we can expect to compute coarser abstraction. Specifically, the abstraction is used to reduce the size of each Kripke structure, so that their product will be smaller. When the abstraction is too coarse, we show how refinement can be applied to produce a more precise abstract model. We also extend the notion of formula-dependent abstraction to Kripke structure with fairness, and define the coarsest abstraction that preserves the given CTL formula interpreted with respect to the fair paths. The method is exact and fully automatic, and handles full CTL.

[1]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[2]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[3]  Orna Grumberg,et al.  Abstract interpretation of reactive systems , 1997, TOPL.

[4]  Yassine Lakhnech,et al.  Computing Abstractions of Infinite State Systems Compositionally and Automatically , 1998, CAV.

[5]  Hassen Saïdi,et al.  Construction of Abstract State Graphs with PVS , 1997, CAV.

[6]  Orna Grumberg,et al.  Generation of Reduced Models for Checking Fragments of CTL , 1993, CAV.

[7]  K. L. McMillan,et al.  Automatic verification of sequential circuit designs , 1992, Philosophical Transactions of the Royal Society of London. Series A: Physical and Engineering Sciences.

[8]  Klaus Havelund,et al.  Model checking JAVA programs using JAVA PathFinder , 2000, International Journal on Software Tools for Technology Transfer.

[9]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[10]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[11]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[12]  Alberto Sangiovanni-Vincentelli,et al.  Equivalences for Fair Kripke Structures , 1994, ICALP.

[13]  Joseph Sifakis,et al.  Property preserving abstractions for the verification of concurrent systems , 1995, Formal Methods Syst. Des..

[14]  Edmund M. Clarke,et al.  Counterexample-Guided Abstraction Refinement , 2000, CAV.

[15]  Brian Campbell,et al.  Amortised Memory Analysis Using the Depth of Data Structures , 2009, ESOP.

[16]  Francesco Ranzato,et al.  Strong Preservation as Completeness in Abstract Interpretation , 2004, ESOP.

[17]  James C. Corbett,et al.  Bandera: extracting finite-state models from Java source code , 2000, ICSE.

[18]  Edmund M. Clarke,et al.  Model checking and abstraction , 1994, TOPL.

[19]  Kousha Etessami,et al.  Analysis of Recursive Game Graphs Using Data Flow Equations , 2004, VMCAI.

[20]  Roberto Giacobazzi,et al.  Incompleteness, Counterexamples, and Refinements in Abstract Model-Checking , 2001, SAS.

[21]  Alon Itai,et al.  Timing Verification by Successive Approximation , 1992, CAV.

[22]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[23]  Thomas A. Henzinger,et al.  Lazy abstraction , 2002, POPL '02.

[24]  Francesco Ranzato,et al.  Strong Preservation of Temporal Fixpoint-Based Operators by Abstract Interpretation , 2006, VMCAI.

[25]  Patrick Cousot,et al.  Abstract Interpretation Frameworks , 1992, J. Log. Comput..

[26]  Yassine Lakhnech,et al.  Incremental Verification by Abstraction , 2001, TACAS.

[27]  Adnan Aziz,et al.  Formula-Dependent Equivalence for Compositional CTL Model Checking , 1994, CAV.

[28]  Alex Groce,et al.  Efficient Verification of Sequential and Concurrent C Programs , 2004, Formal Methods Syst. Des..

[29]  Erwin Engeler,et al.  Logic of Programs, Workshop , 1981 .

[30]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[31]  Jan van Leeuwen,et al.  Formal models and semantics , 1990 .