• DocumentCode
    1688040
  • Title

    Java Goes TLA+

  • Author

    Lau, Hannes ; Nestmann, Uwe

  • Author_Institution
    Dept. of Software Eng. & Theor. Comput. Sci., Tech. Univ. Berlin, Berlin, Germany
  • fYear
    2011
  • Firstpage
    117
  • Lastpage
    124
  • Abstract
    This paper introduces the Inverse Implementation method, that augments classical software development processes by a step of formal conformity verification. Our method is based on a formal model of the machine that executes programs of the chosen programming language. The model can automatically be combined with the code of a concrete program to gain a model of the execution of that program. The execution model is expressed in the same language that the program is specified in. This reduces the task of verifying the conformity of the program to finding and proving a refinement relation between two models within the same formalism. We introduce the Inverse Implementation method, show how it fits into classic software engineering processes and discuss how the choice of a suitable formalism can allow to combine manual and automated proof techniques. We further show a prototypical formalization of the Java Virtual Machine in TLA+ and demonstrate how it can be used within an Inverse Implementation workflow to verify the adherence of a simple - yet multithreaded - Java program to a TLA+ specification.
  • Keywords
    Java; formal specification; formal verification; virtual machines; Java virtual machine; TLA+ specification; formal conformity verification; inverse implementation method; multithreading; program execution model; software development process; software engineering process; temporal logic of action; Cognition; Concrete; Instruction sets; Java; Manuals; Semantics; Abstraction; Formal Verification; Java; Model Checking; TLA;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Theoretical Aspects of Software Engineering (TASE), 2011 Fifth International Symposium on
  • Conference_Location
    Xi´an, Shaanxi
  • Print_ISBN
    978-1-4577-1487-0
  • Type

    conf

  • DOI
    10.1109/TASE.2011.44
  • Filename
    6042069