Denotational semantics for a program logic of objects

  • Authors:
  • Bernhard Reus;Jan Schwinghammer

  • Affiliations:
  • Department of Informatics, University of Sussex, Brighton BN1 9QH, U.K.;Programming Systems Lab, Saarland University, 66041 Saarbrücken, Germany

  • Venue:
  • Mathematical Structures in Computer Science
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The object-calculus is an imperative and object-based programming language in which every object comes equipped with its own method suite. Consequently, methods need to reside in the store (‘higher-order store’), which complicates the semantics. Abadi and Leino defined a program logic for this language enriching object types by method specifications. We present a new soundness proof for their logic using denotational semantics. It turns out that denotations of store specifications are predicates defined by mixed-variant recursion. A benefit of our approach is that derivability and validity can be kept distinct. Moreover, it reveals which of the limitations of Abadi and Leino's logic are incidental design decisions and which follow inherently from the use of a higher-order store. We discuss the implications for the development of other, more expressive, program logics.