by Francesco Logozzo
In Proceedings of the 5th International Conference on Verification, Model Checking and Abstract Interpretation (VMCAI ’04), volume 2937 of Lectures Notes in Computer Science
http://www.stix.polytechnique.fr/~logozzo/vmcai04.ps
Add To MetaCart
Abstract:
Abstract. We present a generic framework for the automatic and modular inference of sound class invariants for class-based object oriented languages. The idea is to derive a sound class invariant as a conservative abstraction of the class semantics. In particular we show how a class invariant can be characterized as the solution of a set of equations extracted from the program source. Once a static analysis for the method bodies is supplied, a solution for the former equation system can be iteratively computed. Thus, the class invariant can be automatically inferred. Moreover, our framework is modular since it allows the derivation of class invariants without any hypothesis on the instantiation context and, in the case of subclassing, without accessing to the parent code. 1
Citations
|
1267
|
Abstract interpretation : a unified lattice model for the static analysis of programs by construction or approximation of fixpoints
– Cousot, Cousot
- 1977
|
|
1190
|
Object-Oriented Software Construction
– Meyer
- 1997
|
|
270
|
Extended static checking for Java
– Flanagan, Leino, et al.
- 2002
|
|
159
|
ObjectOriented Type Systems
– Palsberg, Schwartzbach
- 1994
|
|
91
|
Relevant Context Inference
– Chatterjee, Ryder, et al.
- 1999
|
|
87
|
The octagon abstract domain
– Miné
- 2001
|
|
80
|
Escape analysis for object oriented languages. Application to Java
– Blanchet
- 1999
|
|
79
|
A static analyzer for large safety-critical software
– Blanchet, Cousot, et al.
- 2003
|
|
61
|
Dynamically Discovering Likely Program Invariants
– Ernst
- 2002
|
|
22
|
Deriving specialized program analyses for certifying component-client conformance
– Ramalingam, Warshavsky, et al.
- 2002
|
|
14
|
Modular static program analysis, invited paper
– Cousot, Cousot
- 2002
|
|
14
|
Class-level modular analysis for object oriented languages
– Logozzo
- 2003
|
|
11
|
The Java Language Specification Second Edition. Sun microsystems
– Gosling, Joy, et al.
- 2000
|
|
10
|
Related field analysis
– Aggarwal, Randall
- 2001
|
|
5
|
Incremental refinement of semantic based program analysis for logic programs
– Genaim, Codish
- 1999
|
|
2
|
Approximating module semantics with constraints
– Logozzo
- 2004
|
|
1
|
Thinking in C++, 2nd Edition, volume 1
– Eckel
- 2000
|