TY - JOUR
T1 - Abstraction for concurrent objects
AU - Filipovi, Ivana
AU - O'Hearn, Peter
AU - Rinetzky, Noam
AU - Yang, Hongseok
N1 - Funding Information:
We thank the anonymous referees of this paper and the anonymous referees of the ESOP’09 paper [7] for helping us to improve this work; Viktor Vafeiadis and Matthew Parkinson for useful comments; and Ugo Montanari, Julian Rathke and Matthew Hennessy for pointing out related work. We acknowledge the support of the EPSRC. O’Hearn acknowledges the support of a Royal Society Wolfson Research Merit Award.
PY - 2010/12/4
Y1 - 2010/12/4
N2 - Concurrent data structures are usually designed to satisfy correctness conditions such as sequential consistency or linearizability. In this paper, we consider the following fundamental question: What guarantees are provided by these conditions for client programs? We formally show that these conditions can be characterized in terms of observational refinement. Our study also provides a new understanding of sequential consistency and linearizability in terms of abstraction of dependency between computation steps of client programs.
AB - Concurrent data structures are usually designed to satisfy correctness conditions such as sequential consistency or linearizability. In this paper, we consider the following fundamental question: What guarantees are provided by these conditions for client programs? We formally show that these conditions can be characterized in terms of observational refinement. Our study also provides a new understanding of sequential consistency and linearizability in terms of abstraction of dependency between computation steps of client programs.
KW - Linearizability
KW - Observational equivalence
KW - Observational refinement
KW - Sequential consistency
UR - http://www.scopus.com/inward/record.url?scp=78649324033&partnerID=8YFLogxK
U2 - 10.1016/j.tcs.2010.09.021
DO - 10.1016/j.tcs.2010.09.021
M3 - ???researchoutput.researchoutputtypes.contributiontojournal.article???
AN - SCOPUS:78649324033
SN - 0304-3975
VL - 411
SP - 4379
EP - 4398
JO - Theoretical Computer Science
JF - Theoretical Computer Science
IS - 51-52
ER -