Splitting Atoms with Rely/Guarantee Conditions Coupled with Data Reification
ABZ '08 Proceedings of the 1st international conference on Abstract State Machines, B and Z
The VerCors project: setting up basecamp
PLPV '12 Proceedings of the sixth workshop on Programming languages meets program verification
Hi-index | 0.00 |
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.