JVer: A Java Verifier

  • Ajay Chander
  • David Espinosa
  • Nayeem Islam
  • Peter Lee
  • George Necula
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3576)

Abstract

We describe JVer, a tool for verifying Java bytecode programs annotated with pre and post conditions in the style of Hoare and Dijkstra. JVer is similar to ESC/Java [1], except that: (1) it produces verification conditions for Java bytecode, not Java source; (2) it is sound, because it makes conservative assumptions about aliasing and heap modification; (3) it produces verification conditions directly using symbolic simulation, without an intermediate guarded-command language; (4) by restricting predicates to conjunctions of relations between integers, it produces verification conditions that are more efficient to verify than general first-order formulae; (5) it generates independently verifiable proofs using the Kettle proof-generating theorem prover [2].

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Flanagan, C., Leino, R., Lilibridge, M., Nelson, G., Saxe, J., Stata, R.: Extended static checking for Java. In: Programming Language Design and Implementation, Berlin, Germany (June 2002)Google Scholar
  2. 2.
    Necula, G.C., Lee, P.: Efficient representation and validation of proofs. In: Logic in Computer Science, Indianapolis, Indiana (1998)Google Scholar
  3. 3.
    Chander, A., Espinosa, D., Islam, N., Lee, P., Necula, G.: Enforcing resource bounds via static verification of dynamic checks. In: European Symposium on Programming, Edinburgh, Scotland (April 2005)Google Scholar
  4. 4.
    Paulson, L.: ML for the Working Programmer. Cambridge University Press, Cambridge (1996)MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Ajay Chander
    • 1
  • David Espinosa
    • 1
  • Nayeem Islam
    • 1
  • Peter Lee
    • 2
  • George Necula
    • 3
  1. 1.DoCoMo Labs USASan Jose
  2. 2.Carnegie Mellon UniversityPittsburgh
  3. 3.University of CaliforniaBerkeley

Personalised recommendations