• DocumentCode
    679657
  • Title

    On the laws of failure: a theory of compensable programs

  • Author

    Marmsoler, Diego

  • Author_Institution
    Tech. Univ. Munchen, Munich, Germany
  • fYear
    2013
  • fDate
    1-4 July 2013
  • Firstpage
    2146
  • Lastpage
    2151
  • Abstract
    This work identifies three basic programming concepts used for error handling and investigates the laws governing these concepts. A trace semantics for exception handling, long-running transactions and recovery blocks is given and 11 basic laws are derived. Algebraic reasoning is used to derive three more properties on top of these basic laws. An assumption about the existence of an inverse program is investigated and two direct consequences are provided. The assumption is weakened to address practical issues and a proof obligation is provided to obtain the properties anyway. The work is based on the algebraic method and provides a novel approach to completely specify a program in terms of commonalities and differences w.r.t. another program. Furthermore, all proofs are stated exclusively in Isabelle/Isar, thus they are mechanically checked, though human readable.
  • Keywords
    error handling; programming theory; system recovery; theorem proving; Isabelle/Isar; algebraic reasoning; compensable program theory; direct consequences; error handling; exception handling; failure laws; inverse program; long-running transactions; program commonalities; program differences; proof obligation; recovery blocks; trace semantics; Cognition; Computer languages; Interference; Programming; Semantics; Standards; Syntactics; Algebraic approaches to semantics; Denotational semantics; Error handling and recovery; Standards;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    EUROCON, 2013 IEEE
  • Conference_Location
    Zagreb
  • Print_ISBN
    978-1-4673-2230-0
  • Type

    conf

  • DOI
    10.1109/EUROCON.2013.6731014
  • Filename
    6731014