Verification of Java Programs with Generics
Kurt Stenzel, Holger Grandy, Wolfgang Reif
Several proof systems allow the formal verification of Java programs,
and a specification language was specifically designed for Java.
However, none of these systems support generics that were introduced
in Java 5. Generics are very important and useful when the collection framework
(lists, sets, hash tables etc.) is used. Though they are mainly dealt with
at compile time, they have some effect on the run time behavior of a Java
program. Most notably, heap pollution can cause exceptions. A
verification system for Java must incorporate these effects. In this paper
we describe what effects can occur at run time, and how they are handled
in the KIV system.
To the authors knowledge, this makes KIV the first verification system
to support generics.
J. Meseguer and G. Rosu, editors, Algebraic Methodology and Software Technology (AMAST) 2008, Proceedings. Springer LNCS 5140, 2008. © Springer.
Downloads:
- Verification of Java Programs with Generics - (VerificationOfJavaProgramsWithGenerics.pdf, 149 KB)
