Towards a lazier symbolic pathfinder

  • Authors:
  • Benjamin Hillery;Eric Mercer;Neha Rungta;Suzette Person

  • Affiliations:
  • Brigham Young University, Provo, UT;Brigham Young University, Provo, UT;NASA Ames, Mountain View, CA;NASA Langley, Hampton, VA

  • Venue:
  • ACM SIGSOFT Software Engineering Notes
  • Year:
  • 2014

Quantified Score

Hi-index 0.00

Visualization

Abstract

To explore the state space of programs with complex user-defined data structures, most symbolic execution engines use the lazy initialization algorithm. Symbolic Pathfinder (SPF) is the symbolic execution engine for the Java PathFinder (JPF) model checker; SPF too contains an implementation of the lazy initialization algorithm. A number of extensions to the original lazy initialization algorithm have since been published. One such extension is the lazier# algorithm which demonstrated dramatic performance gains over the other algorithms. There is, however, no open-source implementation of the lazier# algorithm available. This work is an implementation of the the lazier# algorithm within the Symbolic PathFinder framework. In addition, this work describes the implementation of two heap bounding techniques in SPF, namely k-bounding and n-bounding. The purpose of this paper is to discuss the nature of the improvements, implementation details, usage and performance test results.