• DocumentCode
    1579892
  • Title

    Machine-Code Verification for Multiple Architectures - An Application of Decompilation into Logic

  • Author

    Myreen, Magnus O. ; Gordon, Michael J C ; Slind, Konrad

  • Author_Institution
    Comput. Lab., Univ. of Cambridge, Cambridge
  • fYear
    2008
  • Firstpage
    1
  • Lastpage
    8
  • Abstract
    Realistic formal specifications of machine languages for commercial processors consist of thousands of lines of definitions. Current methods support trustworthy proofs of the correctness of programs for one such specification. However, these methods provide little or no support for reusing proofs of the same algorithm implemented in different machine languages. We describe an approach, based on proof-producing decompilation, which both makes machine-code verification tractable and supports proof reuse between different languages. We briefly present examples based on detailed models of machine code for ARM, PowerPC and x86. The theories and tools have been implemented in the HOL4 system.
  • Keywords
    formal logic; formal specification; program compilers; program verification; software architecture; commercial processors; formal specifications; logic; machine languages; machine-code verification; multiple architectures; Application software; Buildings; Cities and towns; Computer architecture; Drives; Formal specifications; Laboratories; Logic; Power system modeling; Registers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Formal Methods in Computer-Aided Design, 2008. FMCAD '08
  • Conference_Location
    Portland, OR
  • Print_ISBN
    978-1-4244-2735-2
  • Electronic_ISBN
    978-1-4244-2736-9
  • Type

    conf

  • DOI
    10.1109/FMCAD.2008.ECP.24
  • Filename
    4689183