Decidable verification under a causally consistent shared memory

Ori Lahav, Udi Boker

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

Abstract

Causal consistency is one of the most fundamental and widely used consistency models weaker than sequential consistency. In this paper, we study the verification of safety properties for finite-state concurrent programs running under a causally consistent shared memory model. We establish the decidability of this problem for a standard model of causal consistency (called also "Causal Convergence" and "Strong-Release-Acquire"). Our proof proceeds by developing an alternative operational semantics, based on the notion of a thread potential, that is equivalent to the existing declarative semantics and constitutes a well-structured transition system. In particular, our result allows for the verification of a large family of programs in the Release/Acquire fragment of C/C++11 (RA). Indeed, while verification under RA was recently shown to be undecidable for general programs, since RA coincides with the model we study here for write/write-race-free programs, the decidability of verification under RA for this widely used class of programs follows from our result. The novel operational semantics may also be of independent use in the investigation of weakly consistent shared memory models and their verification.

Original languageEnglish
Title of host publicationPLDI 2020 - Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation
EditorsAlastair F. Donaldson, Emina Torlak
PublisherAssociation for Computing Machinery
Pages211-226
Number of pages16
ISBN (Electronic)9781450376136
DOIs
StatePublished - 11 Jun 2020
Event41st ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2020 - London, United Kingdom
Duration: 15 Jun 202020 Jun 2020

Publication series

NameProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)

Conference

Conference41st ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2020
Country/TerritoryUnited Kingdom
CityLondon
Period15/06/2020/06/20

Keywords

  • Causal consistency
  • Concurrency
  • Decidability
  • Release/acquire
  • Shared-memory
  • Verification
  • Weak memory models
  • Well-structured transition systems

Fingerprint

Dive into the research topics of 'Decidable verification under a causally consistent shared memory'. Together they form a unique fingerprint.

Cite this