Disjunctive image computation for software verification

  • Authors:
  • Chao Wang;Zijiang Yang;Franjo Ivančić;Aarti Gupta

  • Affiliations:
  • NEC Laboratories America, Princeton, NJ;Western Michigan University, Kalamazoo, MI;NEC Laboratories America, Princeton, NJ;NEC Laboratories America, Princeton, NJ

  • Venue:
  • ACM Transactions on Design Automation of Electronic Systems (TODAES)
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Existing BDD-based symbolic algorithms designed for hardware designs do not perform well on software programs. We propose novel techniques based on unique characteristics of software programs. Our algorithm divides an image computation step into a disjunctive set of easier ones that can be performed in isolation. We use hypergraph partitioning to minimize the number of live variables in each disjunctive component, and variable scopes to simplify transition relations and reachable state subsets. Our experiments on nontrivial C programs show that BDD-based symbolic algorithms can directly handle software models with a much larger number of state variables than for hardware designs.