DATALOG_SOLVE: A Datalog-Based Demand-Driven Program Analyzer

https://doi.org/10.1016/j.entcs.2009.07.059Get rights and content
Under a Creative Commons license
open access

Abstract

This work presents a practical Java program analysis framework that is obtained by combining a Java virtual machine with a general-purpose verification toolbox that we previously extended. In our methodology, Datalog clauses are used to specify complex interprocedural program analyses involving dynamically created objects. After extracting an initial set of Datalog constraints about the Java bytecode program semantics, our framework transforms the Datalog rules of a particular analysis into a Boolean Equation System (Bes), whose local resolution using the aforementioned extended verification toolbox corresponds to the demand-driven computation of the analysis.

Keywords

Java program analysis
Datalog
boolean equation system
demand-driven evaluation

Cited by (0)

This work has been supported by the Spanish mec/micinn under grant TIN 2007-68093-C02-02, by the Generalitat Valenciana GVPRE/2008/113, and by the Universidad Politécnica de Valencia, under grant PAID-06-07 (tacpas).