Towards a generic framework for the abstract interpretation of Java
The application field for static analysis of Java programs is getting broader, ranging from compiler optimizations (like dynamic dispatch elimination) to security issues. Many of those analyses include type analyses. We propose a `generic' framework, which improves on previous type analyses by introducing structural information. Moreover, structural information allows us to easily extend the framework to perform many different kinds of analyses.
The framework is based on the abstract interpretation methodology. It is composed of a standard semantics, a family of abstract domains, an abstract semantics based on these domains and a
post-fixpoint algorithm to compute the abstract semantics. The analysis is limited to a representative subset of Java, without concurrency.
A complete prototype of the framework allows us to illustrate the accuracy and the efficiency of the approach (for moderately sized programs).
School:Université catholique de Louvain
Source Type:Master's Thesis
Keywords:program analysis abstract interpretation object oriented programming java
Date of Publication:04/23/2004