JPF verification of habanero Java programs

  • Authors:
  • Peter Anderson;Brandon Chase;Eric Mercer

  • Affiliations:
  • Brigham Young University, Provo, Utah;Brigham Young University, Provo, Utah;Brigham Young University, Provo, Utah

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

Quantified Score

Hi-index 0.00

Visualization

Abstract

Habanero Java (HJ), a mid-level concurrent language, provides several correctness advantages if it is data race free: deadlock freedom, determinism, serialization, etc. An HJ program execution can only demonstrate data race freedom for one scheduling path, but the correctness property only holds if it is data race free for all paths. Verifying an HJ program with a tool such as Java Path Finder (JPF) for complete data race freedom is time and memory consuming because of the numerous JPF state expansions. This paper provides a small, stand-alone, alternative, HJ verification runtime (VR) that is more suited for verification in JPF. Additionally, this paper presents an alternative JPF scheduler that will explore only relevant HJ related scheduling paths in the VR. Finally, this paper shows state expansion results in JPF using HJ benchmarks with the HJ library, VR with and without the scheduler. The results indicate a reduction using the VR with the schedule when compared to the HJ runtime.