Data-Flow Analysis as Model Checking Within the jABC

This paper describes how the jABC, a generic framework for library-based program development, and two of its plugins - the Model Checker and a flow graph converter – form a framework for intraprocedural data-flow analysis via model checking. Based on functionalities provided by the Soot program analysis platform, the converter generates graph structures from Java classes. Data flow analyses are then expressed as formulas in the modal μ-calculus. Executing the analysis is carried out by checking the validity of the formulas on the flow graph. The tool demonstration will illustrate the interplay of the involved components, which elegantly provides a fully integrated implementation of Data-Flow Analysis as Model Checking in a software development environment.

[1]  Bernhard Steffen,et al.  Data Flow Analysis as Model Checking , 1990, TACS.

[2]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[3]  Tiziana Margaria,et al.  Components, Features, and Agents in the ABC , 2003, Objects, Agents, and Features.

[4]  Flemming Nielson,et al.  Principles of Program Analysis , 1999, Springer Berlin Heidelberg.

[5]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[6]  Benjamin C. Pierce,et al.  Theoretical Aspects of Computer Software , 2001, Lecture Notes in Computer Science.

[7]  Tiziana Margaria,et al.  jETI: A Tool for Remote Tool Integration , 2005, TACAS.

[8]  David A. Schmidt,et al.  Program Analysis as Model Checking of Abstract Interpretations , 1998, SAS.

[9]  Matthew S. Hecht,et al.  Flow Analysis of Computer Programs , 1977 .

[10]  Alfred V. Aho,et al.  Principles of Compiler Design , 1977 .

[11]  John-Jules Ch. Meyer,et al.  Objects, Agents, and Features , 2004, Lecture Notes in Computer Science.

[12]  Bernhard Steffen,et al.  Generating Data Flow Analysis Algorithms from Modal Specifications , 1993, Sci. Comput. Program..

[13]  Bernhard Steffen,et al.  Model-Checking: A Tutorial Introduction , 1999, SAS.