2017
DOI: 10.1145/3158125
|View full text |Cite
|
Sign up to set email alerts
|

Go with the flow: compositional abstractions for concurrent data structures

Abstract: Concurrent separation logics have helped to significantly simplify correctness proofs for concurrent data structures. However, a recurring problem in such proofs is that data structure abstractions that work well in the sequential setting are much harder to reason about in a concurrent setting due to complex sharing and overlays. To solve this problem, we propose a novel approach to abstracting regions in the heap by encoding the data structure invariant into a local condition on each individual node. This con… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

1
42
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
5
2

Relationship

2
5

Authors

Journals

citations
Cited by 29 publications
(43 citation statements)
references
References 58 publications
1
42
0
Order By: Relevance
“…The proof given here shows that the new framework eliminates the need for the customized concurrent separation logic defined in [24]. We start with a recap of Harris' algorithm adapted from [24].…”
Section: Advanced Flow Reasoning and The Harris Listmentioning
confidence: 99%
See 2 more Smart Citations
“…The proof given here shows that the new framework eliminates the need for the customized concurrent separation logic defined in [24]. We start with a recap of Harris' algorithm adapted from [24].…”
Section: Advanced Flow Reasoning and The Harris Listmentioning
confidence: 99%
“…As we argue in §2, cancellativity is, in general, necessary for local reasoning, and is critical for ensuring that the inflow of a composed graph is uniquely determined. Due to this issue, [24] requires proofs to reason about flow interface equivalence classes. This prevents the general modification of graphs with cyclic structures.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Finally, there is a lot of general work on proving linearisability [70][71][72], which essentially allows reasoning about fine-grained concurrency by using sequential verification techniques. Our technique, as well as the history-based technique of [67] uses process algebraic linearisation to do so.…”
Section: Related Workmentioning
confidence: 99%
“…Page 26 of 1-34. marking algorithm [Yang 2001a], but without any tool support or automation. Recent work on Flows [Krishna et al 2018] allows one to prove the preservation of a rich variety of graph invariants including reachability properties, but requires fixpoint computations that are hard to automate. Methods can operate on a subgraph; under the condition that interfaces [Krishna et al 2018] of these subgraphs are preserved, a view on the caller's graph can be reconstructed.…”
Section: Related Workmentioning
confidence: 99%