Copyright © 2007 Elsevier Ltd All rights reserved.
A semantics for concurrent separation logic
Available online 31 December 2006.
References and further reading may be available for this article. To view references and further reading you must purchase this article.
Abstract
We present a trace semantics for a language of parallel programs which share access to mutable data. We introduce a resource-sensitive logic for partial correctness, based on a recent proposal of O’Hearn, adapting separation logic to the concurrent setting. The logic allows proofs of parallel programs in which “ownership” of critical data, such as the right to access, update or deallocate a pointer, is transferred dynamically between concurrent processes. We prove soundness of the logic, using a novel “local” interpretation of traces which allows accurate reasoning about ownership. We show that every provable program is race-free.
Keywords: Concurrency; Pointers; Race condition; Semantics; Logic







E-mail Article
Add to my Quick Links

Cited By in Scopus (2)

), and rules for pairs of dual decidable atoms (such as 




