A Formally Verified Calculus for Full Java Card

We present a calculus for the verification of sequential Java programs. It supports all Java language constructs and has additional support for Java Card. The calculus is formally proved correct with respect to a natural semantics. It is implemented in the KIV system and used for smart card applications.

[1]  Egon Börger,et al.  A Programmer Friendly Modular Definition of the Semantics of Java , 1999, Formal Syntax and Semantics of Java.

[2]  Thomas Jensen,et al.  Java on Smart Cards:Programming and Security , 2001, Lecture Notes in Computer Science.

[3]  Kurt Stenzel,et al.  Formal System Development with KIV , 2000, FASE.

[4]  Sophia Drossopoulou,et al.  Describing the Semantics of Java and Proving Type Soundness , 1999, Formal Syntax and Semantics of Java.

[5]  David von Oheimb Analyzing Java in Isabelle-HOL: formalization, type safety and Hoare logic , 2001 .

[6]  Egon Börger,et al.  Java and the Java Virtual Machine: Definition, Verification, Validation , 2001 .

[7]  Martin Wirsing,et al.  An Event-Based Structural Operational Semantics of Multi-Threaded Java , 1999, Formal Syntax and Semantics of Java.

[8]  Jim Alves-Foss,et al.  Formal Syntax and Semantics of Java , 2002, Lecture Notes in Computer Science.

[9]  Marieke Huisman,et al.  Reasoning about Java programs in higher order logic using PVS and Isabelle , 2001 .

[10]  David von Oheimb,et al.  Axiomatic Semantics for Java^light in Isabelle/HOL , 2000 .

[11]  David,et al.  Analyzing Java in Isabelle/HOL , 2001 .

[12]  Bart Jacobs,et al.  Java Program Verification at Nijmegen: Developments and Perspective , 2003, ISSS.

[13]  Jean-Louis Lanet,et al.  Java Applet Correctness: A Developer-Oriented Approach , 2003, FME.

[14]  Tobias Nipkow,et al.  Machine-Checking the Java Specification: Proving Type-Safety , 1999, Formal Syntax and Semantics of Java.

[15]  Guy L. Steele,et al.  Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley)) , 2005 .

[16]  Deborah A. Frincke,et al.  Formal Grammar for Java , 1999, Formal Syntax and Semantics of Java.

[17]  Sophia Drossopoulou,et al.  Formal Techniques for Java Programs , 2000, ECOOP Workshops.

[18]  Michael D. Ernst,et al.  An overview of JML tools and applications , 2003, International Journal on Software Tools for Technology Transfer.

[19]  Bart Jacobs,et al.  Java Program Verification via a Hoare Logic with Abrupt Termination , 2000, FASE.

[20]  Bart Jacobs,et al.  A Logic for the Java Modeling Language JML , 2001, FASE.

[21]  James Gosling The Java Language Specification - Second Edition , 2000 .

[22]  J. Davenport Editor , 1960 .

[23]  David Harel,et al.  First-Order Dynamic Logic , 1979, Lecture Notes in Computer Science.

[24]  Pieter H. Hartel,et al.  Formalizing the safety of Java, the Java virtual machine, and Java card , 2001, CSUR.

[25]  Bernhard Beckert,et al.  A Dynamic Logic for the Formal Verification of Java Card Programs , 2000, Java Card Workshop.

[26]  Kurt Stenzel,et al.  Structured Specifications and Interactive Proofs with KIV , 1998 .

[27]  Prof. Dr. Robert F. Stärk,et al.  Java and the Java Virtual Machine , 2001, Springer Berlin Heidelberg.

[28]  Tobias Nipkow,et al.  Javalight is type-safe—definitely , 1998, POPL '98.