Parallel program design: a foundation
Parallel program design: a foundation
Well-structured transition systems everywhere!
Theoretical Computer Science
Expressing interesting properties of programs in propositional temporal logic
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Abstraction by Symbolic Indexing Transformations
FMCAD '02 Proceedings of the 4th International Conference on Formal Methods in Computer-Aided Design
ESORICS '00 Proceedings of the 6th European Symposium on Research in Computer Security
A Unifying Approach to Data-Independence
CONCUR '00 Proceedings of the 11th International Conference on Concurrency Theory
Verification of Infinite State Systems by Compositional Model Checking
CHARME '99 Proceedings of the 10th IFIP WG 10.5 Advanced Research Working Conference on Correct Hardware Design and Verification Methods
Automatic Datapath Abstraction In Hardware Systems
Proceedings of the 7th International Conference on Computer Aided Verification
On the Verification of Broadcast Protocols
LICS '99 Proceedings of the 14th Annual IEEE Symposium on Logic in Computer Science
On model checking data-independent systems with arrays without reset
Theory and Practice of Logic Programming
Nested Petri Nets: Multi-level and Recursive Systems
Fundamenta Informaticae - Concurrency Specification and Programming (CS&P'2000)
Decidability of Reachability for Polymorphic Systems with Arrays: A Complete Classification
Electronic Notes in Theoretical Computer Science (ENTCS)
Transformational verification of parameterized protocols using array formulas
LOPSTR'05 Proceedings of the 15th international conference on Logic Based Program Synthesis and Transformation
Applied formal methods – from CSP to executable hybrid specifications
CSP'04 Proceedings of the 2004 international conference on Communicating Sequential Processes: the First 25 Years
Parametric verification of address space separation
POST'12 Proceedings of the First international conference on Principles of Security and Trust
Hi-index | 0.00 |
We consider programs which are data independent with respect to two type variables X and Y, and can in addition use arrays indexed by X and storing values from Y. We are interested in whether a program satisfies its control-state unreachability specification for all non-empty finite instances of X and Y. The decidability of this problem without whole-array operations is a corollary to earlier results. We address the possible addition of two whole-array operations: an array reset instruction, which sets every element of an array to a particular value, and an array assignment or copy instruction. For programs with reset, we obtain decidability if there is only one array or if Y is fixed to be the boolean type, and we obtain undecidability otherwise. For programs with array assignment, we show that they are more expressive than programs with reset, which yields undecidability if there are at least three arrays. We also obtain undecidability for two arrays directly.