Proving correctness of JavaCard DL taclets using Bali

Kerry Trentelman*

*Corresponding author for this work

    Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

    4 Citations (Scopus)

    Abstract

    Developed at the University of Karlsruhe, KeY is an augmented commercial CASE tool with specification and deductive verification functionalities. Recently, lightweight, stand-alone tactics or «taclets» have been introduced in order to implement the JavaCard dynamic logic (JavaCard DL) sequent calculus within KeY. JavaCard DL captures the semantics of JavaCard, the subset of Java designed to run on smart cards. This paper discusses a case-study into proving taclets sound using the independent Bali formalism of Java in the theorem prover Isabelle/HOL. Rather than taking a foundational approach by embedding the entire JavaCard DL semantics directly into a theorem prover, we instead translate each taclet and prove its soundness via the Bali calculus. We analyse both calculi, prove three pivotal taclets sound, and argue whether the method is useful in proving the correctness of JavaCard programs overall.

    Original languageEnglish
    Title of host publicationProceedings - 3rd IEEE International Conference on Software Engineering and Formal Methods, SEFM 2005
    Pages160-169
    Number of pages10
    DOIs
    Publication statusPublished - 2005
    Event3rd IEEE International Conference on Software Engineering and Formal Methods, SEFM 2005 - Koblenz, Germany
    Duration: 7 Sept 20059 Sept 2005

    Publication series

    NameProceedings - 3rd IEEE International Conference on Software Engineering and Formal Methods, SEFM 2005

    Conference

    Conference3rd IEEE International Conference on Software Engineering and Formal Methods, SEFM 2005
    Country/TerritoryGermany
    CityKoblenz
    Period7/09/059/09/05

    Fingerprint

    Dive into the research topics of 'Proving correctness of JavaCard DL taclets using Bali'. Together they form a unique fingerprint.

    Cite this