This paper describes the formalisation of Java thread synchronisation in an extended Owicki-Gries theory, which facilitates the proof of safety and progress properties of multi-threaded Java programs. Although we can use this formalisation to verify existing Java programs, our focus is on deriving them instead. The derivation process consists of two stages: design and transformation. In the design stage, we use the method of Feijen and van Gasteren to obtain a program that satisfies the given requirements. This solution will most likely make atomicity assumptions Java is unable to guarantee. In the transformation stage, we reduce the granularity of the statements and develop a solution that can be translated directly to a Java implementatio...
AbstractBesides the features of a class-based object-oriented language, Java integrates concurrency ...
This paper discusses formal specification and verification of the synchronisation classes of the Jav...
Abstract. To assist developing robust multithreaded software, we develop a thread monitoring system ...
For a subset JavaTck (Java Thread Composition Kernel) of Java an empirical semantics has been develo...
Abstract We provide a parametric framework for verifying safety properties of concurrent Java progra...
AbstractIn this paper a proof outline logic is introduced for the partial correctness of multi-threa...
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...
Abstract. The research concerning Java’s semantics and proof theory has mainly focussed on various a...
Java threads are synchronised through primitives based upon monitor concepts developed in the early ...
Besides the features of a class-based object-oriented language, Java integrates concurrency via its ...
Abstract Language-supported synchronization is a source of serious performance problems in Java prog...
Besides the features of a class-based object-oriented language, Java integrates concurrency via its ...
It is all too easy to write unsafe multithreaded Java code, in part because the languages notify() a...
Reasoning about object-oriented programs is hard, due to aliasing, dynamic binding and the need for ...
AbstractBesides the features of a class-based object-oriented language, Java integrates concurrency ...
This paper discusses formal specification and verification of the synchronisation classes of the Jav...
Abstract. To assist developing robust multithreaded software, we develop a thread monitoring system ...
For a subset JavaTck (Java Thread Composition Kernel) of Java an empirical semantics has been develo...
Abstract We provide a parametric framework for verifying safety properties of concurrent Java progra...
AbstractIn this paper a proof outline logic is introduced for the partial correctness of multi-threa...
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...
Abstract. The research concerning Java’s semantics and proof theory has mainly focussed on various a...
Java threads are synchronised through primitives based upon monitor concepts developed in the early ...
Besides the features of a class-based object-oriented language, Java integrates concurrency via its ...
Abstract Language-supported synchronization is a source of serious performance problems in Java prog...
Besides the features of a class-based object-oriented language, Java integrates concurrency via its ...
It is all too easy to write unsafe multithreaded Java code, in part because the languages notify() a...
Reasoning about object-oriented programs is hard, due to aliasing, dynamic binding and the need for ...
AbstractBesides the features of a class-based object-oriented language, Java integrates concurrency ...
This paper discusses formal specification and verification of the synchronisation classes of the Jav...
Abstract. To assist developing robust multithreaded software, we develop a thread monitoring system ...