6 research outputs found
Sentinels: A concept for multiprocess coordination
Journal ArticleThe sentinel construct is introduced, which provides a certain syntactic and semantic framework for multiprocess coordination. The advantage of this construct over others is argued to be semantic transparency, efficiency, ease in implementation, and usefulness in verfication
A semantics for concurrent separation logic
AbstractWe 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