A Refinement Method for Java Programs

Holger Grandy, Kurt Stenzel, Wolfgang Reif

A Refinement Method for Java Programs

We present a refinement method for Java programs which is motivated by the challenge of verifying security protocol implementations. The method can be used for stepwise refinement of abstract specifications down to the level of code running in the real application. The approach is based on a calculus for the verification of Java programs for the concrete level and Abstract State Machines for the abstract level. In this paper we illustrate our method by the verification of a M-Commerce application for buying movie tickets using a mobile phone written in J2ME. For verification we use KIV, our interactive theorem prover.
published 2007 Proceedings of FMOODS 2007, Springer LNCS 4468, Paphos, Cyprus,