Abstract
We formalise the Java Card bytecode optimisation from class file to CAP file format as a set of constraints between the two formats, and define and prove its correctness. Java Card bytecode is formalised as an abstract operational semantics, which can then be instantiated into the two formats. The optimisation is given as a logical relation such that the instantiated semantics are observably equal. The proof has been automated using the Coq theorem prover.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
P. Bertelsen. Semantics of Java byte code. Technical report, Department of Information Technology, Technical University of Denmark, March 1997.
Ewen Denney. Correctness of Java Card Tokenisation. Technical Report 1286, Projet Lande, IRISA, 1999. Also appears as INRIA research report 3831.
Jean-Louis Lanet and Antoine Requet. Formal proof of smart card applets correctness. In Third Smart Card Research and Advanced Application Conference (CARDIS’98), 1998.
T. Lindholm and F. Yelling. The Java Virtual Machine Specification. Addison-Wesley, 1997.
J. Mitchell. Foundations for Programming Languages. Foundations of Computing Series. MIT Press, 1996.
Peter D. Mosses. Modularity in structural operational semantics. Extended abstract, November 1998.
Cornelia Pusch. Verification of Compiler Correctness for the WAM. In J. von Wright, J. Grundy, and J. Harrison, editors, Theorem Proving in Higher Order Logics (TPHOLs’96), pages 347–362. Springer-Verlag, 1996.
Cornelia Pusch. Formalizing the Java Virtual Machine in Isabelle/HOL. Technical Report TUM-I9816, Institut für Informatik, Technische Universität München, 1998.
Gaëlle Segouat. Preuve en Coq d’une mise en oeuvre de Java Card. Master’s thesis, Projet Lande, IRISA, 1999.
Sun Microsystems. Java Card 2.0 Language Subset and Virtual Machine Specification, October 1997. Final Revision.
Sun Microsystems. Java Card 2.1 Virtual Machine Specification, March 1999. Final Revision 1.0.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Denney, E., Jensen, T. (2000). Correctness of Java Card Method Lookup via Logical Relations. In: Smolka, G. (eds) Programming Languages and Systems. ESOP 2000. Lecture Notes in Computer Science, vol 1782. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46425-5_7
Download citation
DOI: https://doi.org/10.1007/3-540-46425-5_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67262-3
Online ISBN: 978-3-540-46425-9
eBook Packages: Springer Book Archive