Data abstraction is crucial in the construction of modular programs, since it ensures that internal changes in one module do not propagate to other modules. In object-oriented programs, classes typically enforce data abstraction by providing access to their internal state only through methods. By using method calls in method contracts, data abstraction can be extended to specifications. In this paper, methods used for this purpose must be side-effect free, and are called pure methods. We present an approach to the automatic verification of object- oriented programs that use pure methods for data abstraction. The cornerstone of our approach is the solution to the framing problem, i.e. client code must be able to determine whether state chan...
Proving that particular methods within a code base are functionally pure—deterministic and side-effe...
Abstract. For specifying and reasoning about object-based programs it is often attractive for contra...
This paper describes ProMoVer, a tool for fully automated procedure–modular verification of Java pro...
Framing in the presence of data abstraction is a challenging and important problem in the verificati...
Program verification is a technique for proving that a program satisfies its specification. An impor...
Abstract. Framing in the presence of data abstraction is a challenging and important problem in the ...
Reasoning about object-oriented programs is hard, due to aliasing, dynamic binding and the need for ...
Automated verification is critical for ensuring that an implementation is correct and meets the spec...
I present an implementation of a new method purity analysis for Java programs, which is described in...
The dynamic frames approach has proven to be a powerful formalism for specifying and verifying objec...
Reasoning about multithreaded object-oriented programs is difficult, due to the nonlocal nature of o...
This dissertation deals with the automatic generation of sound specifications from a given program i...
Abstract. This paper describes ProMoVer, a tool for fully automated procedure–modular verification o...
This paper describes ProMoVer, a tool for fully automated procedure–modular verification of Java pro...
We present a new method purity analysis for Java programs.A method is pure if it does not mutate any...
Proving that particular methods within a code base are functionally pure—deterministic and side-effe...
Abstract. For specifying and reasoning about object-based programs it is often attractive for contra...
This paper describes ProMoVer, a tool for fully automated procedure–modular verification of Java pro...
Framing in the presence of data abstraction is a challenging and important problem in the verificati...
Program verification is a technique for proving that a program satisfies its specification. An impor...
Abstract. Framing in the presence of data abstraction is a challenging and important problem in the ...
Reasoning about object-oriented programs is hard, due to aliasing, dynamic binding and the need for ...
Automated verification is critical for ensuring that an implementation is correct and meets the spec...
I present an implementation of a new method purity analysis for Java programs, which is described in...
The dynamic frames approach has proven to be a powerful formalism for specifying and verifying objec...
Reasoning about multithreaded object-oriented programs is difficult, due to the nonlocal nature of o...
This dissertation deals with the automatic generation of sound specifications from a given program i...
Abstract. This paper describes ProMoVer, a tool for fully automated procedure–modular verification o...
This paper describes ProMoVer, a tool for fully automated procedure–modular verification of Java pro...
We present a new method purity analysis for Java programs.A method is pure if it does not mutate any...
Proving that particular methods within a code base are functionally pure—deterministic and side-effe...
Abstract. For specifying and reasoning about object-based programs it is often attractive for contra...
This paper describes ProMoVer, a tool for fully automated procedure–modular verification of Java pro...