Granularity and concurrent separation logic

  • Authors:
  • Jonathan Hayman

  • Affiliations:
  • Computer Laboratory, University of Cambridge

  • Venue:
  • CONCUR'11 Proceedings of the 22nd international conference on Concurrency theory
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

When defining the semantics of shared-memory concurrent programming languages, one conventionally has to make assumptions about the atomicity of actions such as assignments. Running on physical hardware, these assumptions can fail to hold in practice, which puts in question reasoning about their concurrent execution. We address an observation, due to John Reynolds, that processes proved sound in concurrent separation logic are separated to an extent that these assumptions can be disregarded, so judgements remain sound even if the assumptions on atomicity fail to hold. We make use of a Petri-net based semantics for concurrent separation logic with explicit representations of the key notions of ownership and interference. A new characterization of the separation of processes is given and is shown to be stronger than existing race-freedom results for the logic. Exploiting this, sufficient criteria are then established for an operation of refinement of processes capable of changing the atomicity of assignments.