Formalized Verification of Snapshotable Trees: Separation and Sharing

Hannes Mehnert, Filip Sieczkowski, Lars Birkedal, Peter Sestoft

Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review


We use separation logic to specify and verify a Java program
that implements snapshotable search trees, fully formalizing the speci-
cation and verication in the Coq proof assistant. We achieve local and
modular reasoning about a tree and its snapshots and their iterators, al-
though the implementation involves shared mutable heap data structures
with no separation or ownership relation between the various data.
The paper also introduces a series of four increasingly sophisticated im-
plementations and veries the rst one. The others are included as future
work and as a set of challenge problems for full functional specication
and verication, whether by separation logic or by other formalisms.

Original languageEnglish
Title of host publicationVerified Software: Theories, Tools, Experiments : 4th International Conference, VSTTE 2012, Philadelphia, PA, USA, January 28-29, 2012. Proceedings
Number of pages15
Volume 7152
Publication date2012
ISBN (Print)978-3-642-27704-7
Publication statusPublished - 2012
SeriesLecture Notes in Computer Science


Dive into the research topics of 'Formalized Verification of Snapshotable Trees: Separation and Sharing'. Together they form a unique fingerprint.

Cite this