Several static proof systems have been developed over the years for verifying shared-memory multithreaded programs. These proof systems make use of auxiliary variables to express mutual exclusion or non-interference among shared variable accesses. Typically, the values of these variables summarize the past of the program execution; consequently, they are known as history variables. Prophecy variables, on the other hand, are the temporal dual of history variables and their values summarize the future of the program execution. In this paper, we show that prophecy variables are useful for locally constructing proofs of systems with optimistic concurrency. To enable the fullest use of prophecy variables in proof construction, we introduce tres...
In this paper we introduce an abstract algebra for reasoning about concurrent programs, that include...
The desire to model in a straightforward manner complex features of real physical systems is often t...
This thesis is not available on this repository until the author agrees to make it public. If you ar...
Abstract. Unlike sequential programs, concurrent programs have to ac-count for interference on share...
Optimism is a powerful technique for increasing concurrency. To date, use of optimism has been restr...
Early in the development of Hoare logic, Owicki and Gries introduced auxiliary variables as a way of...
We present a lightweight approach to Hoare-style specifications for fine-grained concurrency, based ...
Parkinson, Bornat, and Calcagno recently introduced a logic for partial correctness in which program...
We address the verification problem of eventual consistency of optimistic replication systems. Such ...
The combination of temporal logic and rely-guarantee reasoning is a solid approach for the verificat...
Abstract. We present a lightweight approach to Hoare-style specifications for fine-grained concurren...
Modern concurrent programming benefits from a large variety of synchronization techniques. These inc...
AbstractParkinson, Bornat, and Calcagno recently introduced a logic for partial correctness in which...
There are two approaches to reasoning about distributed algorithms. In the operational approach, one...
Program verification increases the degree of confidence that a program will perform correctly. Manua...
In this paper we introduce an abstract algebra for reasoning about concurrent programs, that include...
The desire to model in a straightforward manner complex features of real physical systems is often t...
This thesis is not available on this repository until the author agrees to make it public. If you ar...
Abstract. Unlike sequential programs, concurrent programs have to ac-count for interference on share...
Optimism is a powerful technique for increasing concurrency. To date, use of optimism has been restr...
Early in the development of Hoare logic, Owicki and Gries introduced auxiliary variables as a way of...
We present a lightweight approach to Hoare-style specifications for fine-grained concurrency, based ...
Parkinson, Bornat, and Calcagno recently introduced a logic for partial correctness in which program...
We address the verification problem of eventual consistency of optimistic replication systems. Such ...
The combination of temporal logic and rely-guarantee reasoning is a solid approach for the verificat...
Abstract. We present a lightweight approach to Hoare-style specifications for fine-grained concurren...
Modern concurrent programming benefits from a large variety of synchronization techniques. These inc...
AbstractParkinson, Bornat, and Calcagno recently introduced a logic for partial correctness in which...
There are two approaches to reasoning about distributed algorithms. In the operational approach, one...
Program verification increases the degree of confidence that a program will perform correctly. Manua...
In this paper we introduce an abstract algebra for reasoning about concurrent programs, that include...
The desire to model in a straightforward manner complex features of real physical systems is often t...
This thesis is not available on this repository until the author agrees to make it public. If you ar...