Termination Analysis of Java Bytecode

  • Authors:
  • Elvira Albert;Puri Arenas;Michael Codish;Samir Genaim;Germán Puebla;Damiano Zanardini

  • Affiliations:
  • DSIC, Complutense University of Madrid (UCM), Spain;DSIC, Complutense University of Madrid (UCM), Spain;CS, Ben-Gurion University of the Negev, Israel;CLIP, Technical University of Madrid (UPM), Spain;CLIP, Technical University of Madrid (UPM), Spain;CLIP, Technical University of Madrid (UPM), Spain

  • Venue:
  • FMOODS '08 Proceedings of the 10th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Termination analysis has received considerable attention, traditionally in the context of declarative programming, and recently also for imperative languages. In existing approaches, termination is performed on source programs. However, there are many situations, including mobile code, where only the compiled code is available. In this work we present an automatic termination analysis for sequential Java Bytecode programs. Such analysis presents all of the challenges of analyzing a low-level language as well as those introduced by object-oriented languages. Interestingly, given a bytecode program, we produce a constraint logicprogram, CLP, whose termination entails termination of the bytecode program. This allows applying the large body of work in termination of CLP programs to termination of Java bytecode. A prototype analyzer is described and initial experimentation is reported.