Completeness in SMT-based BMC for software programs

  • Authors:
  • Malay K. Ganai;Aarti Gupta

  • Affiliations:
  • NEC Labs America, Princeton, NJ;NEC Labs America, Princeton, NJ

  • Venue:
  • Proceedings of the conference on Design, automation and test in Europe
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Bounded Model Checking (BMC) is incomplete without a completeness threshold (CT) bound. Previous methods, using recurrence diameter for obtaining CT, check for existence of a longest loop-free path at every depth k. For terminating software programs, we propose an efficient method for obtaining CT that requires solving a formula of size O(k) at some depths only, as compared to previous methods that require solving a formula of O(k2) (or O(klogk)) size at every depth. We augment previous methods for BMC simplifications using model transformation and control flow information, with context-sensitive analysis. This results in more BMC simplifications and further reduction in the number of CT checks. We have implemented our techniques in a Satisfiability Modulo Theory (SMT)-based BMC framework. Our controlled experiments on real-world software programs show that our proposed formulation provides significant improvements over previous approaches.