Class invariants are a highly useful feature for the verification of object-oriented programs, because they can be used to capture all valid object states. In a sequential program setting, the validity of class invariants is typically described in terms of a visible state semantics, i.e., invariants only have to hold whenever a method begins or ends execution, and they may be broken inside a method body. However, in a concurrent setting, this restriction is no longer usable, because due to thread interleavings, any program state is potentially a visible state. In this paper we present a new approach for reasoning about class invariants in multithreaded programs. We allow a thread to explicitly break an invariant at specific program location...
This paper discusses how several concurrent program verification techniques can be combined in a lay...
We propose an approach for the modular specification and verification of total correctness propertie...
Reasoning about multithreaded object-oriented programs is difficult, due to the non-local nature of ...
Class invariants are a highly useful feature for the verification of object-oriented programs, becau...
Developing safe multithreaded software systems is difficult due to the potential unwanted interferen...
This thesis explores two kinds of program logics that have become important for modern program verif...
We propose an approach for the modular specification and verification of total correctness propertie...
An object invariant defines what it means for an object’s data to be in a consistent state. Object i...
We propose an approach for the modular specification and verification of total correctness propertie...
This paper presents the VerCors approach to verification of concurrent software. It first discusses ...
Abstract. This paper presents the VerCors approach to verification of concurrent software. It first ...
AbstractReasoning about multithreaded object-oriented programs is difficult, due to the non-local na...
This paper presents a program logic for reasoning about multithreaded Java-like programs with concur...
This paper motivates and presents a program logic for reasoning about multithreaded Java-like progra...
Class invariants -- consistency constraints preserved by every operation on objects of a given type ...
This paper discusses how several concurrent program verification techniques can be combined in a lay...
We propose an approach for the modular specification and verification of total correctness propertie...
Reasoning about multithreaded object-oriented programs is difficult, due to the non-local nature of ...
Class invariants are a highly useful feature for the verification of object-oriented programs, becau...
Developing safe multithreaded software systems is difficult due to the potential unwanted interferen...
This thesis explores two kinds of program logics that have become important for modern program verif...
We propose an approach for the modular specification and verification of total correctness propertie...
An object invariant defines what it means for an object’s data to be in a consistent state. Object i...
We propose an approach for the modular specification and verification of total correctness propertie...
This paper presents the VerCors approach to verification of concurrent software. It first discusses ...
Abstract. This paper presents the VerCors approach to verification of concurrent software. It first ...
AbstractReasoning about multithreaded object-oriented programs is difficult, due to the non-local na...
This paper presents a program logic for reasoning about multithreaded Java-like programs with concur...
This paper motivates and presents a program logic for reasoning about multithreaded Java-like progra...
Class invariants -- consistency constraints preserved by every operation on objects of a given type ...
This paper discusses how several concurrent program verification techniques can be combined in a lay...
We propose an approach for the modular specification and verification of total correctness propertie...
Reasoning about multithreaded object-oriented programs is difficult, due to the non-local nature of ...