Heuristics: intelligent search strategies for computer problem solving
Heuristics: intelligent search strategies for computer problem solving
Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Proceedings of the Fourth Annual Symposium on Logic in computer science
Local model checking in the modal mu-calculus
TAPSOFT '89 2nd international joint conference on Theory and practice of software development
Model checking and modular verification
ACM Transactions on Programming Languages and Systems (TOPLAS)
Model checking and abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
Petri-net-based deadlock analysis of process algebra programs
Science of Computer Programming
Validation with guided search of the state space
DAC '98 Proceedings of the 35th annual Design Automation Conference
State space reduction by non-standard semantics for deadlock analysis
Science of Computer Programming
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Selective mu-calculus and formula-based equivalence of transition systems
Journal of Computer and System Sciences
Automatic predicate abstraction of C programs
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Directed explicit model checking with HSF-SPIN
SPIN '01 Proceedings of the 8th international SPIN workshop on Model checking of software
Symbolic Model Checking
Software Testing Techniques
Communication and Concurrency
Partial-Order Methods for the Verification of Concurrent Systems: An Approach to the State-Explosion Problem
Java Language Specification, Second Edition: The Java Series
Java Language Specification, Second Edition: The Java Series
Evaluating Deadlock Detection Methods for Concurrent Software
IEEE Transactions on Software Engineering
Model Checking Based on Simultaneous Reachability Analysis
Proceedings of the 7th International SPIN Workshop on SPIN Model Checking and Software Verification
Heuristic Model Checking for Java Programs
Proceedings of the 9th International SPIN Workshop on Model Checking of Software
Partial Order Reduction in Directed Model Checking
Proceedings of the 9th International SPIN Workshop on Model Checking of Software
Efficient Guiding Towards Cost-Optimality in UPPAAL
TACAS 2001 Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Exploring Very Large State Spaces Using Genetic Algorithms
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Compositional Proof Systems for Model Checking Infinite State Processes
CONCUR '95 Proceedings of the 6th International Conference on Concurrency Theory
KI '98 Proceedings of the 22nd Annual German Conference on Artificial Intelligence: Advances in Artificial Intelligence
A Stubborn Attack On State Explosion
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
Finiteness Conditions and Structural Construction of Automata for All Process Algebras
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
Bounded-memory Algorithms for Verification On-the-fly
CAV '91 Proceedings of the 3rd International Workshop on Computer Aided Verification
Property Preserving Simulations
CAV '92 Proceedings of the Fourth International Workshop on Computer Aided Verification
All from One, One for All: on Model Checking Using Representatives
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Proceedings of the 7th International Conference on Computer Aided Verification
The NCSU Concurrency Workbench
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Property Preserving Homomorphisms of Transition Systems
Proceedings of the Carnegie Mellon Workshop on Logic of Programs
Using Partial Orders for the Efficient Verification of Deadlock Freedom and Safety Properties
CAV '91 Proceedings of the 3rd International Workshop on Computer Aided Verification
SetA*: an efficient BDD-based heuristic search algorithm
Eighteenth national conference on Artificial intelligence
On Verifying Distributed Multithreaded Java Programs
HICSS '00 Proceedings of the 33rd Hawaii International Conference on System Sciences-Volume 8 - Volume 8
Group Multicast in Distributed Mobile Systems with Unreliable Wireless Network
SRDS '99 Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems
Heuristic Search + Local Model Checking in Selective mu-Calculus
IEEE Transactions on Software Engineering
Clone detection through process algebras and Java bytecode
Proceedings of the 5th International Workshop on Software Clones
Hi-index | 0.00 |
Model checking is a formal technique for proving the correctness of a system with respect to a desired behavior. This is accomplished by checking whether a structure representing the system (typically a labeled transition system) satisfies a temporal logic formula describing the expected behavior. Model checking has a number of advantages over traditional approaches that are based on simulation and testing: it is completely automatic and when the verification fails it returns a counterexample that can be used to pinpoint the source of the error. Nevertheless, model checking techniques often fail because of the state explosion problem: transition systems grow exponentially with the number of components. The aim of this paper is to attack the state explosion problem that may arise when looking for deadlocks in concurrent systems described through the calculus of communicating systems. We propose to use heuristics-based techniques, namely the A* algorithm, both to guide the search without constructing the complete transition system, and to provide minimal counterexamples. We have realized a prototype tool to evaluate the methodology. Experiments we have conducted on processes of different size show the benefit from using our technique against building the whole state space, or applying some other methods.