Abstract

We combine “ownership transfer” with matching logic to reason about fault-free partial correctness of shared-memory concurrent programs. As we all know, what really gives separation logic (concurrent separation logic) an edge is the ownership transfer of the heap. Inspired by this, we use matching logic to realize variable ownership (permission) and its transfer mechanism, which reveals the hidden principle behind “protected variables” of resource and “rely set” in extended CSL. In addition, variable ownership can replace Dijkstra’s semaphore blocking technique to achieve the critical section. Soundness is important to us, we provide a semantic model that supports the separation property and demonstrate the soundness of our logic based on trace semantics.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call