Efficient concurrent programs and data structures rarely em-ploy coarse-grained synchronization mechanisms (i.e., locks); instead, they implement custom synchronization patterns via fine-grained primitives, such as compare-and-swap. Due to sophisticated interference scenarios between threads, rea-soning about such programs is challenging and error-prone, and can benefit from mechanization. In this paper, we present the first completely formalized framework for mechanized verification of full functional correctness of fine-grained concurrent programs. Our tool is based on the recently proposed program logic FCSL. It is im-plemented as an embedded domain-specific language in the dependently-typed language of the Coq proof assistant, and is po...
AbstractIntel has announced that in future each standard computer chip will contain many processors ...
Synchronisation constructs lie at the heart of any reliable concurrent program. Many such constructs...
Developing correct concurrent software is a difficult task, due to the inherently non-deterministic ...
Efficient concurrent programs and data structures rarely employ coarse-grained synchronization mecha...
Efficient concurrent programs and data structures rarely employ coarse-grained synchronization mecha...
This paper discusses how several concurrent program verification techniques can be combined in a lay...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
This artifact provides the full mechanization in FCSL of the developments in the companion paper, "C...
Compared to coarse-grained external synchronization of operations on data structures shared between ...
Abstract. This paper presents a proof framework for verifying concurrent programs that communicate u...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
We present a novel framework for automatic inference of efficient synchronization in concurrent prog...
This thesis takes up the challenge of formal specification and verification of concurrent programs w...
This thesis explores two kinds of program logics that have become important for modern program verif...
AbstractIntel has announced that in future each standard computer chip will contain many processors ...
Synchronisation constructs lie at the heart of any reliable concurrent program. Many such constructs...
Developing correct concurrent software is a difficult task, due to the inherently non-deterministic ...
Efficient concurrent programs and data structures rarely employ coarse-grained synchronization mecha...
Efficient concurrent programs and data structures rarely employ coarse-grained synchronization mecha...
This paper discusses how several concurrent program verification techniques can be combined in a lay...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
This artifact provides the full mechanization in FCSL of the developments in the companion paper, "C...
Compared to coarse-grained external synchronization of operations on data structures shared between ...
Abstract. This paper presents a proof framework for verifying concurrent programs that communicate u...
Thanks to recent advances, modern proof assistants now enable verification of realistic sequential p...
We present a novel framework for automatic inference of efficient synchronization in concurrent prog...
This thesis takes up the challenge of formal specification and verification of concurrent programs w...
This thesis explores two kinds of program logics that have become important for modern program verif...
AbstractIntel has announced that in future each standard computer chip will contain many processors ...
Synchronisation constructs lie at the heart of any reliable concurrent program. Many such constructs...
Developing correct concurrent software is a difficult task, due to the inherently non-deterministic ...