Publication: Simplifying linearizability proofs with reduction and abstraction
dc.contributor.coauthor | Qadeer, Shaz | |
dc.contributor.department | N/A | |
dc.contributor.department | N/A | |
dc.contributor.department | N/A | |
dc.contributor.department | Department of Computer Engineering | |
dc.contributor.kuauthor | Elmas, Tayfun | |
dc.contributor.kuauthor | Sezgin, Ali | |
dc.contributor.kuauthor | Subaşı, Ömer | |
dc.contributor.kuauthor | Taşıran, Serdar | |
dc.contributor.kuprofile | PhD Student | |
dc.contributor.kuprofile | N/A | |
dc.contributor.kuprofile | PhD Student | |
dc.contributor.kuprofile | Faculty Member | |
dc.contributor.other | Department of Computer Engineering | |
dc.contributor.schoolcollegeinstitute | Graduate School of Sciences and Engineering | |
dc.contributor.schoolcollegeinstitute | N/A | |
dc.contributor.schoolcollegeinstitute | Graduate School of Sciences and Engineering | |
dc.contributor.schoolcollegeinstitute | College of Engineering | |
dc.contributor.yokid | N/A | |
dc.contributor.yokid | N/A | |
dc.contributor.yokid | N/A | |
dc.contributor.yokid | N/A | |
dc.date.accessioned | 2024-11-09T23:11:58Z | |
dc.date.issued | 2010 | |
dc.description.abstract | The typical proof of linearizability establishes an abstraction map from the concurrent program to a sequential specification, and identifies the commit points of operations. If the concurrent program uses fine-grained concurrency and complex synchronization, constructing such a proof is difficult. We propose a sound proof system that significantly simplifies the reasoning about linearizability. Linearizability is proved by transforming an implementation into its specification within this proof system. The proof system combines reduction and abstraction, which increase the granularity of atomic actions, with variable introduction and hiding, which syntactically relate the representation of the implementation to that of the specification. We construct the abstraction map incrementally, and eliminate the need to reason about the location of commit points in the implementation. We have implemented our method in the QED verifier and demonstrated its effectiveness and practicality on several highly-concurrent examples from the literature. | |
dc.description.indexedby | WoS | |
dc.description.openaccess | YES | |
dc.description.publisherscope | International | |
dc.description.volume | 6015 | |
dc.identifier.doi | N/A | |
dc.identifier.isbn | 978-3-642-12001-5 | |
dc.identifier.issn | 0302-9743 | |
dc.identifier.quartile | Q4 | |
dc.identifier.scopus | 2-s2.0-77951540305 | |
dc.identifier.uri | https://hdl.handle.net/20.500.14288/9738 | |
dc.identifier.wos | 279334200024 | |
dc.keywords | Verifying linearizability | |
dc.keywords | Parallel programs | |
dc.language | English | |
dc.publisher | Springer | |
dc.source | Tools and Algorithms For The Construction and Analysis of Systems, Proceedings | |
dc.subject | Computer science | |
dc.subject | Artificial intelligence | |
dc.subject | Engineering | |
dc.subject | Software engineering | |
dc.subject | Theory methods | |
dc.title | Simplifying linearizability proofs with reduction and abstraction | |
dc.type | Conference proceeding | |
dspace.entity.type | Publication | |
local.contributor.authorid | N/A | |
local.contributor.authorid | N/A | |
local.contributor.authorid | 000-0002-8383-6000 | |
local.contributor.authorid | N/A | |
local.contributor.kuauthor | Elmas, Tayfun | |
local.contributor.kuauthor | Sezgin, Ali | |
local.contributor.kuauthor | Subaşı, Ömer | |
local.contributor.kuauthor | Taşıran, Serdar | |
relation.isOrgUnitOfPublication | 89352e43-bf09-4ef4-82f6-6f9d0174ebae | |
relation.isOrgUnitOfPublication.latestForDiscovery | 89352e43-bf09-4ef4-82f6-6f9d0174ebae |