Theoretical Computer Science
Shuffle languages, Petri nets, and context-sensitive grammars
Communications of the ACM
The SLAM project: debugging system software via static analysis
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Construction of Abstract State Graphs with PVS
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Temporal-Safety Proofs for Systems Code
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Finite state machines for strings over infinite alphabets
ACM Transactions on Computational Logic (TOCL)
A framework for numeric analysis of array operations
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Two-Variable Logic on Words with Data
LICS '06 Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science
LTL with the Freeze Quantifier and Register Automata
LICS '06 Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science
SYNERGY: a new algorithm for property checking
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Lifting abstract interpreters to quantified logical domains
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
FCT '07 Proceedings of the 16th international symposium on Fundamentals of Computation Theory
Automatic verification of data-centric business processes
Proceedings of the 12th International Conference on Database Theory
Decidability of Reachability for Polymorphic Systems with Arrays: A Complete Classification
Electronic Notes in Theoretical Computer Science (ENTCS)
What else is decidable about integer arrays?
FOSSACS'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Foundations of software science and computational structures
Shape analysis by predicate abstraction
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
What's decidable about arrays?
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
On notions of regularity for data languages
FCT'07 Proceedings of the 16th international conference on Fundamentals of Computation Theory
Shuffle expressions and words with nested data
MFCS'07 Proceedings of the 32nd international conference on Mathematical Foundations of Computer Science
Hi-index | 0.00 |
For programs whose data variables range over Boolean or finite domains, program verification is decidable, and this forms the basis of recent tools for software model checking. In this article, we consider algorithmic verification of programs that use Boolean variables, and in addition, access a single read-only array whose length is potentially unbounded, and whose elements range over an unbounded data domain. We show that the reachability problem, while undecidable in general, is (1) Pspace-complete for programs in which the array-accessing for-loops are not nested, (2) decidable for a restricted class of programs with doubly nested loops. The second result establishes connections to automata and logics defining languages over data words.