Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Precise interprocedural dataflow analysis via graph reachability
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Tabled evaluation with delaying for general logic programs
Journal of the ACM (JACM)
Bebop: A Symbolic Model Checker for Boolean Programs
Proceedings of the 7th International SPIN Workshop on SPIN Model Checking and Software Verification
Model Checking of Unrestricted Hierarchical State Machines
ICALP '01 Proceedings of the 28th International Colloquium on Automata, Languages and Programming,
Model Checking the Full Modal Mu-Calculus for Infinite Sequential Processes
ICALP '97 Proceedings of the 24th International Colloquium on Automata, Languages and Programming
Reachability Analysis of Pushdown Automata: Application to Model-Checking
CONCUR '97 Proceedings of the 8th International Conference on Concurrency Theory
Specification and verification of concurrent systems in CESAR
Proceedings of the 5th Colloquium on International Symposium on Programming
On-the-Fly Verification of Linear Temporal Logic
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume I - Volume I
Efficient Algorithms for Model Checking Pushdown Systems
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
Analysis of Recursive State Machines
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
A BDD-Based Model Checker for Recursive Programs
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
Verification of software via integration of design and implementation
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Symbolic support graph: a space efficient data structure for incremental tabled evaluation
ICLP'05 Proceedings of the 21st international conference on Logic Programming
Modeling and verification of distributed autonomous agents using logic programming
DALT'04 Proceedings of the Second international conference on Declarative Agent Languages and Technologies
Improved algorithm complexities for linear temporal logic model checking of pushdown systems
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Hi-index | 0.00 |
A number of recent papers present efficient algorithms for LTL model checking for recursive programs with finite data structures. A common feature in all these works is that they consider infinitely long runs of the program without regard to the size of the program stack. Runs requiring unbounded stack are often a result of abstractions done to obtain a finite-data recursive program. In this paper, we introduce the notion of resource-constrained model checking where we distinguish between stack-diverging runs and finite-stack runs. It should be noted that finiteness of stack-like resources cannot be expressed in LTL. We develop resource-constrained model checking in terms of good cycle detection in a finite graph called R-graph, which is constructed from a given push-down system (PDS) and a B眉chi automaton. We make the formulation of the model checker "executable" by encoding it directly as Horn clauses. We present a local algorithm to detect a good cycle in an R-graph. Furthermore, by describing the construction of R-graph as a logic program and evaluating it using tabled resolution, we do model checking without materializing the push-down system or the induced Rgraph. Preliminary experiments indicate that the local model checker is at least as efficient as existing model checkers for push-down systems.