Input Elimination and Abstraction in Model Checking

  • Authors:
  • Sela Mador-Haim;Limor Fix

  • Affiliations:
  • -;-

  • Venue:
  • FMCAD '98 Proceedings of the Second International Conference on Formal Methods in Computer-Aided Design
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

Symbolic model checking, while gaining success in the industry as a valuable tool for finding hardware design bugs, is still severely limited with respect to the size of the verifiable designs. This limitation is due to the nonlinear memory consumption of the data structure (namely, BDD and its variants) used to represent the model and the explored states. Input elimination is a known method that reduces the size of the model by existential quantification of the inputs. In this paper, we improve this technique in several dimensions: we present a novel re-encoding of the model that results in a much large set of quantifiable inputs, we introduce a new greedy algorithm for early quantification of the inputs during the transition relation build, and we suggest a new algorithm to reconstruct the input values in an error trace. Model abstraction is a semiautomatic method that requires the user to provide an abstraction mapping, and can dramatically reduce the size of models with large data-path. We show that data abstraction can be reduced to input elimination using few simple manipulations of the hardware netlist description. Model abstraction is a wellknown technique and our contribution is a novel technique that generates the minimal transition relation with respect to a given abstraction mapping.