Strong logic for weak memory: Reasoning about release-acquire consistency in iris

Jan Oliver Kaiser, Hoang Hai Dang, Derek Dreyer, Ori Lahav, Viktor Vafeiadis

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

Abstract

The field of concurrent separation logics (CSLs) has recently undergone two exciting developments: (1) the Iris framework for encoding and unifying advanced higher-order CSLs and formalizing them in Coq, and (2) the adaptation of CSLs to account for weak memory models, notably C11's release-acquire (RA) consistency. Unfortunately, these developments are seemingly incompatible, since Iris only applies to languages with an operational interleaving semantics, while C11 is defined by a declarative (axiomatic) semantics. In this paper, we show that, on the contrary, it is not only feasible but useful to marry these developments together. Our first step is to provide a novel operational characterization of RA+NA, the fragment of C11 containing RA accesses and "non-atomic" (normal data) accesses. Instantiating Iris with this semantics, we then derive higher-order variants of two prominent RA+NA logics, GPS and RSL. Finally, we deploy these derived logics in order to perform the first mechanical verifications (in Coq) of several interesting case studies of RA+NA programming. In a nutshell, we provide the first foundationally verified framework for proving programs correct under C11's weak-memory semantics.

Original languageEnglish
Title of host publication31st European Conference on Object-Oriented Programming, ECOOP 2017
EditorsPeter Muller
PublisherSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
Pages171-1729
Number of pages1559
ISBN (Electronic)9783959770354
DOIs
StatePublished - 1 Jun 2017
Externally publishedYes
Event31st European Conference on Object-Oriented Programming, ECOOP 2017 - Barcelona, Spain
Duration: 18 Jun 201723 Jun 2017

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume74

Conference

Conference31st European Conference on Object-Oriented Programming, ECOOP 2017
Country/TerritorySpain
CityBarcelona
Period18/06/1723/06/17

Keywords

  • Concurrency
  • Release-acquire
  • Separation logic
  • Weak memory models

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Strong logic for weak memory: Reasoning about release-acquire consistency in iris'. Together they form a unique fingerprint.

Cite this