Bug hunting with false negatives

  • Authors:
  • Jens Calamé;Natalia Ioustinova;Jaco Van De Pol;Natalia Sidorova

  • Affiliations:
  • Centrum voor Wiskunde en Informatica, Amsterdam, The Netherlands;Centrum voor Wiskunde en Informatica, Amsterdam, The Netherlands;Eindhoven University of Technology, Eindhoven, The Netherlands;Eindhoven University of Technology, Eindhoven, The Netherlands

  • Venue:
  • IFM'07 Proceedings of the 6th international conference on Integrated formal methods
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Safe data abstractions are widely used for verification purposes. Positive verification results can be transferred from the abstract to the concrete system. When a property is violated in the abstract system, one still has to check whether a concrete violation scenario exists. However, even when the violation scenario is not reproducible in the concrete system (a false negative), it may still contain information on possible sources of bugs. Here, we propose a bug hunting framework based on abstract violation scenarios. We first extract a violation pattern from one abstract violation scenario. The violation pattern represents multiple abstract violation scenarios, increasing the chance that a corresponding concrete violation exists. Then, we look for a concrete violation that corresponds to the violation pattern by using constraint solving techniques. Finally, we define the class of counterexamples that we can handle and argue correctness of the proposed framework. Our method combines two formal techniques, model checking and constraint solving. Through an analysis of contracting and precise abstractions, we are able to integrate overapproximation by abstraction with concrete counterexample generation.