Aarhus University Seal / Aarhus Universitets segl

Verifying object-oriented programs with higher-order separation logic in Coq

Research output: Contribution to book/anthology/report/proceedingArticle in proceedingsResearchpeer-review

  • Jesper Bengtson
  • ,
  • Jonas Braband Jensen
  • ,
  • Filip Sieczkowski
  • ,
  • Lars Birkedal
We present a shallow Coq embedding of a higher-order separation logic with nested triples for an object-oriented programming language. Moreover, we develop novel specification and proof patterns for reasoning in higher-order separation logic with nested triples about programs that use interfaces and interface inheritance. In particular, we show how to use the higher-order features of the Coq formalisation to specify and reason modularly about programs that (1) depend on some unknown code satisfying a specification or that (2) return objects conforming to a certain specification. All of our results have been formally verified in the interactive theorem prover Coq.
Original languageEnglish
Title of host publicationInteractive Theorem Proving : Second International Conference, ITP 2011, Berg en Dal, The Netherlands, August 22-25, 2011. Proceedings
EditorsMarko van Eekelen , Herman Geuvers, Julien Schmaltz , Freek Wiedijk
Number of pages17
PublisherSpringer
Publication year2011
Pages22-38
ISBN (print)978-3-642-22862-9
ISBN (Electronic)978-3-642-22863-6
DOIs
Publication statusPublished - 2011
Externally publishedYes
SeriesLecture Notes in Computer Science
Volume6898
ISSN0302-9743

See relations at Aarhus University Citationformats

ID: 81377977