Skip to main navigation Skip to search Skip to main content

Proof Abstraction for Imperative Languages

  • William Harrison

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

1 Scopus citations

Abstract

Modularity in programming language semantics derives from abstracting over the structure of underlying denotations, yielding semantic descriptions that are more abstract and reusable. One such semantic framework is Liang's modular monadic semantics in which the underlying semantic structure is encapsulated with a monad. Such abstraction can be at odds with program verification, however, because program specifications require access to the (deliberately) hidden semantic representation. The techniques for reasoning about modular monadic definitions of imperative programs introduced here overcome this barrier. And, just like program definitions in modular monadic semantics, our program specifications and proofs are representation-independent and hold for whole classes of monads, thereby yielding proofs of great generality.
Original languageEnglish
Title of host publicationProceedings of the 4th Asian Symposium on Programming Languages and Systems (APLAS06)
Pages97-113
Number of pages17
DOIs
StatePublished - 2006
Externally publishedYes

Fingerprint

Dive into the research topics of 'Proof Abstraction for Imperative Languages'. Together they form a unique fingerprint.

Cite this