The dynamic frames approach has proven to be a powerful formalism for specifying and verifying object-oriented programs. However, it requires writing and checking many frame annotations. In this paper, we propose a variant of the dynamic frames approach that eliminates the need to explicitly write and check frame annotations. Reminiscent of separation logic's frame rule, programmers write access assertions inside pre- and postconditions instead of writing frame annotations. From the precondition, one can then infer an upper bound on the set of locations writable or readable by the corresponding method. We implemented our approach in a tool, and used it to automatically verify several challenging programs, including subject-observer, itera...
The specification of object-oriented and other pointer-based programs must be able to describe the s...
Abstract. In this paper we discuss a verification method for concur-rent Java programs based on the ...
iAbstract Despite the fact that object-oriented languages are well established in general, it is sti...
The dynamic frames approach has proven to be a powerful formalism for specifying and verifying objec...
An important, challenging problem in the verification of imperative programs with shared, mutable st...
Program verification is a technique for proving that a program satisfies its specification. An impor...
The theory of Dynamic Frames has been invented to deal with the frame problem in the presence of enc...
Separation logic is a concise method for specifying programs that manipulate dynamically allocated s...
Framing in the presence of data abstraction is a challenging and important problem in the verificati...
Abstract. Framing in the presence of data abstraction is a challenging and important problem in the ...
Data abstraction is crucial in the construction of modular programs, since it ensures that internal ...
The project files for the article `Reasoning About Invariant Properties of Object-oriented Programs'...
Reasoning about object-oriented programs is hard, due to aliasing, dynamic binding and the need for ...
With the years, program complexity has increased dramatically: ensuring program correctness has beco...
In this paper we discuss a verification method for concurrent Java programs based on the concept of ...
The specification of object-oriented and other pointer-based programs must be able to describe the s...
Abstract. In this paper we discuss a verification method for concur-rent Java programs based on the ...
iAbstract Despite the fact that object-oriented languages are well established in general, it is sti...
The dynamic frames approach has proven to be a powerful formalism for specifying and verifying objec...
An important, challenging problem in the verification of imperative programs with shared, mutable st...
Program verification is a technique for proving that a program satisfies its specification. An impor...
The theory of Dynamic Frames has been invented to deal with the frame problem in the presence of enc...
Separation logic is a concise method for specifying programs that manipulate dynamically allocated s...
Framing in the presence of data abstraction is a challenging and important problem in the verificati...
Abstract. Framing in the presence of data abstraction is a challenging and important problem in the ...
Data abstraction is crucial in the construction of modular programs, since it ensures that internal ...
The project files for the article `Reasoning About Invariant Properties of Object-oriented Programs'...
Reasoning about object-oriented programs is hard, due to aliasing, dynamic binding and the need for ...
With the years, program complexity has increased dramatically: ensuring program correctness has beco...
In this paper we discuss a verification method for concurrent Java programs based on the concept of ...
The specification of object-oriented and other pointer-based programs must be able to describe the s...
Abstract. In this paper we discuss a verification method for concur-rent Java programs based on the ...
iAbstract Despite the fact that object-oriented languages are well established in general, it is sti...