Parametricity and local variables
Journal of the ACM (JACM)
Better verification through symmetry
Formal Methods in System Design - Special issue on symmetry in automatic verification
On full abstraction for PCF: I, II, and III
Information and Computation
The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
Types, Abstractions, and Parametric Polymorphism, Part 2
Proceedings of the 7th International Conference on Mathematical Foundations of Programming Semantics
A Unifying Approach to Data-Independence
CONCUR '00 Proceedings of the 11th International Conference on Concurrency Theory
The regular-language semantics of second-order idealized ALGOL
Theoretical Computer Science
Compositional software verification based on game semantics and process algebra
International Journal on Software Tools for Technology Transfer (STTT) - Special Section on Advances in Automated Verification of Critical Systems
A compositional method for deciding equivalence and termination of nondeterministic programs
IFM'10 Proceedings of the 8th international conference on Integrated formal methods
Data-abstraction refinement: a game semantic approach
SAS'05 Proceedings of the 12th international conference on Static Analysis
A counterexample-guided refinement tool for open procedural programs
SPIN'06 Proceedings of the 13th international conference on Model Checking Software
Hi-index | 0.00 |
This paper describes a concrete implementation of a game-semantics based approach for verification of open program terms parameterized by a data type. The programs are restricted to be data-independent with respect to the data type treated as a parameter, which means that the only operation allowed on values of that type is equality testing. The programs can also input, output, and assign such values. This provides a method for verifying a range of safety properties of programs which contain data-independent infinite types. In order to enable verification of programs with arbitrary infinite (integer) types, the proposed method can be extended by combining it with an abstraction refinement procedure. We have developed a tool which implements this method as well as its extension, and we present its practicality by several academic examples.