Fate and free will in error traces

  • Authors:
  • HoonSang Jin;Kavita Ravi;Fabio Somenzi

  • Affiliations:
  • University of Colorado at Boulder, 80309, Boulder, CO, USA;Cadence Design Systems, 07974, New Providence, NJ, USA;University of Colorado at Boulder, 80309, Boulder, CO, USA

  • Venue:
  • International Journal on Software Tools for Technology Transfer (STTT) - Special section on tools and algorithms for the construction and analysis of systems
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

The ability to generate counterexamples for failing properties is often cited as one of the strengths of model checking. However, it is often difficult to interpret long error traces in which many variables appear. Besides, a traditional error trace presents only one possible behavior of the system causing the failure, with no further annotation. Our objective is to identify some structure in the error trace to make debugging easier. We present an enhanced error trace as an alternation of fated (forced) and free segments. The fated segments show unavoidable progress toward the error while the free segments show choices that, if avoided, may have prevented the error. Hence, the demarcation into segments tends to highlight critical events. The segmentation of a trace raises the questions of whether the fated segment should indeed be inevitable and whether the free segments are critical in causing the error. Addressing these questions may help the user to better analyze the failure of the property.