Footprint Logic for Object-Oriented Components (extended paper)

F. S. De Boer, Stijn De Gouw, Hans Dieter Hiep*, Jinting Bian

*Corresponding author for this work

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

We introduce a new way of reasoning about invariance in terms of footprints in a program logic for object-oriented components. A footprint of an object-oriented component is formalized as a monadic predicate that describes which objects on the heap can be affected by the execution of the component. Assuming encapsulation, this amounts to specifying which objects of the component can be called. Adaptation of local specifications into global specifications amounts to showing invariance of assertions, which is ensured by means of a form of bounded quantification which excludes references to a given footprint. The new approach is compared to two existing approaches to reason about invariance: separation logic and dynamic frames.

Original languageEnglish
Article number11
Number of pages23
JournalFormal Aspects of Computing
Volume37
Issue number2
DOIs
Publication statusPublished - 2025

Keywords

  • Hoare logic
  • invariance
  • strong partial correctness

Fingerprint

Dive into the research topics of 'Footprint Logic for Object-Oriented Components (extended paper)'. Together they form a unique fingerprint.

Cite this