Decision procedures customized for formal verification

  • Authors:
  • Randal E. Bryant;Sanjit A. Seshia

  • Affiliations:
  • School of Computer Science, Carnegie Mellon University, Pittsburgh, PA;School of Computer Science, Carnegie Mellon University, Pittsburgh, PA

  • Venue:
  • CADE' 20 Proceedings of the 20th international conference on Automated Deduction
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

The uclid verifier models a hardware or software system as an abstract state machine, where the state variables can be Boolean or integer values, or functions mapping integers to integers or Booleans. The core of the verifier consists of a decision procedure that checks the validity of formulas over the combined theories of uninterpreted functions with equality and linear integer arithmetic. It operates by transforming a formula into an equisatisfiable Boolean formula and then invoking a SAT solver. This approach has worked well for the class of logic and the types of formulas encountered in verification.