View-Based Owicki–Gries Reasoning for Persistent x86-TSO

Eleni Vafeiadi Bila, Brijesh Dongol, Ori Lahav, Azalea Raad, John Wickerson

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

Abstract

The rise of persistent memory is disrupting computing to its core. Our work aims to help programmers navigate this brave new world by providing a program logic for reasoning about x86 code that uses low-level operations such as memory accesses and fences, as well as persistency primitives such as flushes. Our logic, Pierogi, benefits from a simple underlying operational semantics based on views, is able to handle optimised flush operations, and is mechanised in the Isabelle/HOL proof assistant. We detail the proof rules of Pierogi and prove them sound. We also show how Pierogi can be used to reason about a range of challenging single- and multi-threaded persistent programs.

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
Pages234-261
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

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

  • Isabelle/HOL
  • Owicki-Gries
  • Persistent memory
  • verification
  • x86-TSO

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'View-Based Owicki–Gries Reasoning for Persistent x86-TSO'. Together they form a unique fingerprint.

Cite this