Inter-process buffers in separation logic with rely-guarantee

  • Authors:
  • Richard Bornat;Hasan Amjad

  • Affiliations:
  • Middlesex University, School of Engineering and Information Sciences, NW4 4BT, London, UK;University of Cambridge, Computing Laboratory, CB3 0FD, Cambridge, UK

  • Venue:
  • Formal Aspects of Computing
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Separation logic allows simple proofs of concurrent algorithms which use blocking mechanisms such as semaphores. It can even deal with non-blocking algorithms. With the addition of mechanisms borrowed from rely-guarantee, we can make reasonably simple proofs of some simple non-blocking algorithms. We show that it extends to proofs of some intricate algorithms, including Simpson’s famous asynchronous four-slot buffer and Harris’s novel three-slot algorithm, in a manner that is arguably simpler than earlier treatments, though we cannot claim that we have yet found proofs that are as simple as we would wish. Our example proofs show functional correctness but do not deal with questions of liveness.