Concurrent data structures with fine-grained synchronization are notoriously difficult to implement correctly. The difficulty of reasoning about these implementations does not stem from the number of variables or the program size, but rather from the large number of possible interleavings. These implementations are therefore prime candidates for model checking. We introduce an algorithm for verifying linearizability of singly-linked heap-based concurrent data structures. We consider a model consisting of an unbounded heap where each node consists an element from an unbounded data domain, with a restricted set of operations for testing and updating pointers and data elements. Our main result is that linearizability is decidable for programs ...
Linearizability is an important correctness criterion for implementations of concurrent objects. Aut...
Linearisability is a key correctness criterion for concurrent data structures, ensuring that each hi...
AbstractThe notions of serializability, linearizability, and sequential consistency are used in the ...
Concurrent data structures with fine-grained synchronization are notoriously difficult to implement ...
Concurrent data structures with fine-grained synchronization are notoriously difficult to implement ...
Concurrent data structures with fine-grained synchronization are notoriously difficult to implement ...
Efficient implementations of data structures such as queues, stacks or hash-tables allow for concurr...
International audienceWe study a family of implementations for linked lists using fine-grain synchro...
Concurrent data structure algorithms have traditionally been designed using locks to regulate the be...
Linearizability of concurrent data structures is usually proved by monolithic simulation arguments r...
Linearizability requires that the outcome of calls by competing threads to a concurrent data structu...
Abstract. We present a comprehensive methodology for proving cor-rectness of concurrent data structu...
Concurrent data structure algorithms have traditionally been designed using locks to regulate the be...
Abstract. We investigate the algorithmic feasibility of checking whether concurrent implementations ...
Abstract. We investigate the algorithmic feasibility of checking whether concurrent implementations ...
Linearizability is an important correctness criterion for implementations of concurrent objects. Aut...
Linearisability is a key correctness criterion for concurrent data structures, ensuring that each hi...
AbstractThe notions of serializability, linearizability, and sequential consistency are used in the ...
Concurrent data structures with fine-grained synchronization are notoriously difficult to implement ...
Concurrent data structures with fine-grained synchronization are notoriously difficult to implement ...
Concurrent data structures with fine-grained synchronization are notoriously difficult to implement ...
Efficient implementations of data structures such as queues, stacks or hash-tables allow for concurr...
International audienceWe study a family of implementations for linked lists using fine-grain synchro...
Concurrent data structure algorithms have traditionally been designed using locks to regulate the be...
Linearizability of concurrent data structures is usually proved by monolithic simulation arguments r...
Linearizability requires that the outcome of calls by competing threads to a concurrent data structu...
Abstract. We present a comprehensive methodology for proving cor-rectness of concurrent data structu...
Concurrent data structure algorithms have traditionally been designed using locks to regulate the be...
Abstract. We investigate the algorithmic feasibility of checking whether concurrent implementations ...
Abstract. We investigate the algorithmic feasibility of checking whether concurrent implementations ...
Linearizability is an important correctness criterion for implementations of concurrent objects. Aut...
Linearisability is a key correctness criterion for concurrent data structures, ensuring that each hi...
AbstractThe notions of serializability, linearizability, and sequential consistency are used in the ...