Abstraction for Crash-Resilient Objects

Artem Khyzha, Ori Lahav

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

Abstract

We study abstraction for crash-resilient concurrent objects using non-volatile memory (NVM). We develop a library-correctness criterion that is sound for ensuring contextual refinement in this setting, thus allowing clients to reason about library behaviors in terms of their abstract specifications, and library developers to verify their implementations against the specifications abstracting away from particular client programs. As a semantic foundation we employ a recent NVM model, called Persistent Sequential Consistency, and extend its language and operational semantics with useful specification constructs. The proposed correctness criterion accounts for NVM-related interactions between client and library code due to explicit persist instructions, and for calling policies enforced by libraries. We illustrate our approach on two implementations and specifications of simple persistent objects with different prototypical durability guarantees. Our results provide the first approach to formal compositional reasoning under NVM.

Original languageEnglish
Title of host publicationProgramming Languages and Systems - 31st European Symposium on Programming, ESOP 2022, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022, Proceedings
EditorsIlya Sergey
PublisherSpringer Science and Business Media Deutschland GmbH
Pages262-289
Number of pages28
ISBN (Print)9783030993351
DOIs
StatePublished - 2022
Event31st European Symposium on Programming, ESOP 2022, held as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022 - Munich, Germany
Duration: 5 Apr 20227 Apr 2022

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13240 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference31st European Symposium on Programming, ESOP 2022, held as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022
Country/TerritoryGermany
CityMunich
Period5/04/227/04/22

Keywords

  • Library abstraction
  • Linearizability
  • Non-volatile memory

Fingerprint

Dive into the research topics of 'Abstraction for Crash-Resilient Objects'. Together they form a unique fingerprint.

Cite this