Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Tree automata, Mu-Calculus and determinacy
SFCS '91 Proceedings of the 32nd annual symposium on Foundations of computer science
Timing verification by successive approximation
Information and Computation
JMOCHA: a model checking tool that exploits design structure
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
The SLAM project: debugging system software via static analysis
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Symbolic Algorithms for Infinite-State Games
CONCUR '01 Proceedings of the 12th International Conference on Concurrency Theory
Abstract Interpretation of Game Properties
SAS '00 Proceedings of the 7th International Symposium on Static Analysis
Counterexample-Guided Abstraction Refinement
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
Three-Valued Abstractions of Games: Uncertainty, but with Precision
LICS '04 Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science
3-Valued Abstraction: More Precision at Less Cost
LICS '06 Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science
ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
Invited contribution: sociable interfaces
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
An abstraction-refinement framework for trigger querying
SAS'11 Proceedings of the 18th international conference on Static analysis
Hi-index | 0.01 |
Games that model realistic systems can have very large state-spaces, making their direct solution difficult. We present a symbolic abstraction-refinement approach to the solution of two-player games with reachability or safety goals. Given a reachability or safety property, an initial set of states, and a game representation, our approach starts by constructing a simple abstraction of the game, guided by the predicates present in the property and in the initial set. The abstraction is then refined, until it is possible to either prove, or disprove, the property over the initial states. Specifically, we evaluate the property on the abstract game in three-valued fashion, computing an over-approximation (the may states), and an under-approximation (the must states), of the states that satisfy the property. If this computation fails to yield a certain yes/no answer to the validity of the property on the initial states, our algorithm refines the abstraction by splitting uncertain abstract states (states that are may-states, but not must-states). The approach lends itself to an efficient symbolic implementation. We discuss the property required of the abstraction scheme in order to achieve convergence and termination of our technique.