Integrating deductive verification and symbolic execution for abstract object creation in dynamic logic

Stijn de Gouw, Frank S. de Boer, Wolfgang Ahrendt, Richard Bubel

Research output: Contribution to journalArticleAcademicpeer-review


We present a fully abstract weakest precondition calculus and its integration with symbolic execution. Our assertion language allows both specifying and verifying properties of objects at the abstraction level of the programming language, abstracting from a specific implementation of object creation. Objects which are not (yet) created never play any role. The corresponding proof theory is discussed and justified formally by soundness theorems. The usage of the assertion language and proof rules is illustrated with an example of a linked list reachability property. All proof rules presented are fully implemented in a version of the KeY verification system for Java programs.
Original languageEnglish
Pages (from-to)1117-1140
Number of pages24
JournalSoftware and System Modeling
Issue number4
Publication statusPublished - 2016
Externally publishedYes


Cite this