Optimizing generation of object graphs in java pathfinder

Milos Gligoric, Tihomir Gvero, Steven Lauterburg, Darko Marinov, Sarfraz Khurshid

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Java PathFinder (JPF) is a popular model checker for Java programs. JPF was used to generate object graphs as test inputs for object-oriented programs. Specifically, JPF was used as an implementation engine for the Korat algorithm. Korat takes two inputs-a Java predicate that encodes properties of desired object graphs and a bound on the size of the graph-and generates all graphs (within the given bound) that satisfy the encoded properties. Korat uses a systematic search to explore the bounded state space of object graphs. Korat search was originally implemented in JPF using a simple instrumentation of the Java predicate. However, JPF is a general-purpose model checker and such direct implementation results in an unnecessarily slow search. We present our results on speeding up Korat search in JPF. The experiments on ten data structure subjects show that our modifications of JPF reduce the search time by over an order of magnitude.

Original languageEnglish (US)
Title of host publicationProceedings - 2nd International Conference on Software Testing, Verification, and Validation, ICST 2009
PublisherIEEE Computer Society
Pages51-60
Number of pages10
ISBN (Print)9780769536019
DOIs
StatePublished - 2009
Event2nd International Conference on Software Testing, Verification, and Validation, ICST 2009 - Denver, CO, United States
Duration: Apr 1 2009Apr 4 2009

Publication series

NameProceedings - 2nd International Conference on Software Testing, Verification, and Validation, ICST 2009

Conference

Conference2nd International Conference on Software Testing, Verification, and Validation, ICST 2009
CountryUnited States
CityDenver, CO
Period4/1/094/4/09

ASJC Scopus subject areas

  • Software

Fingerprint Dive into the research topics of 'Optimizing generation of object graphs in java pathfinder'. Together they form a unique fingerprint.

Cite this