Abstract. Loops and other unbound control structures constitute a major bottleneck in formal software verification, because correctness proofs over such control structures generally require user interaction: typically, induction hypotheses or invariants must be found or modified by hand. Such interaction involves expert knowledge of the underlying calculus and proof engine. We show that one can replace interactive proof techniques, such as induction, with automated first-order reasoning in order to deal with parallelizable loops. A loop can be parallelized, whenever the execution of a generic iteration of its body depends only on the step parameter and not on other iterations. We use a symbolic dependence analysis that ensures parallelizabi...
In this paper we investigate how formal software verification systems can be improved by utilising p...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approa...
A simple but general parallel programming language is considered. The semantics of programs is defin...
AVA (similar comments apply to C, C++, or C#). Hence, not only isthere a lack of heuristic technique...
Parallelization of programs relies on sound and precise analysis of data dependences in the code, sp...
Two formal models for parallel computation are presented: an abstract conceptual model and a paralle...
Concurrency is often an optimisation, rather than intrinsic to the functional behaviour of a program...
This paper presents a fully automatic approach to loop paralleliza-tion that integrates the use of s...
This thesis presents the first formalization of the Owicki-Gries method and its compositional versio...
This thesis presents an axiomatic method for proving certain correctness properties of parallel pro...
In this paper we investigate how formal software verification systems can be improved by utilising p...
Invariants are a standard concept for reasoning about unbounded loops since Floyd-Hoare logic in the...
In this paper, we present a new approach to automatically ver-ify multi-threaded programs which are ...
This thesis presents a set of verification techniques based on permission-based separation logic to ...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our ap-pro...
In this paper we investigate how formal software verification systems can be improved by utilising p...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approa...
A simple but general parallel programming language is considered. The semantics of programs is defin...
AVA (similar comments apply to C, C++, or C#). Hence, not only isthere a lack of heuristic technique...
Parallelization of programs relies on sound and precise analysis of data dependences in the code, sp...
Two formal models for parallel computation are presented: an abstract conceptual model and a paralle...
Concurrency is often an optimisation, rather than intrinsic to the functional behaviour of a program...
This paper presents a fully automatic approach to loop paralleliza-tion that integrates the use of s...
This thesis presents the first formalization of the Owicki-Gries method and its compositional versio...
This thesis presents an axiomatic method for proving certain correctness properties of parallel pro...
In this paper we investigate how formal software verification systems can be improved by utilising p...
Invariants are a standard concept for reasoning about unbounded loops since Floyd-Hoare logic in the...
In this paper, we present a new approach to automatically ver-ify multi-threaded programs which are ...
This thesis presents a set of verification techniques based on permission-based separation logic to ...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our ap-pro...
In this paper we investigate how formal software verification systems can be improved by utilising p...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approa...
A simple but general parallel programming language is considered. The semantics of programs is defin...