×

System and method for modeling, abstraction, and analysis of software

  • US 7,346,486 B2
  • Filed: 01/21/2005
  • Issued: 03/18/2008
  • Est. Priority Date: 01/22/2004
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method of verifying a software program comprising:

  • determining one or more properties of the software program to be verified;

    generating a model of the software program wherein said model comprises a Boolean representation having a plurialty of basic blocks, each basic block representing a sequence of one or more instructions in the software program as a set of parallel assignments and a set of transitions to other basic blocks;

    applying a SAT-based model checker to the Boolean representation of the software program; and

    determining whether the properities are correct andgenerating an output indicative of that correctness determination for the software program;

    wherein said model of the software program is one of a type selected from the group consisting of;

    bounded-recursive and non-recursive;

    wherein transition relations in the Boolean representation of the software program are enumerated and represented by;

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×