Program analysis through predicate abstraction and refinement
US8402444B2 · kind B2 · utility
Assignee
Inventors
Key dates
| Filing date | Oct 9, 2009 |
| Grant date | Mar 19, 2013 |
| Priority date | — |
| Expiry date | Apr 28, 2031 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F8/43
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
An analysis engine is described for performing static analysis using CEGAR loop functionality, using a combination of forward and backward validation-phase trace analyses. The analysis engine includes a number of features. For example: (1) the analysis engine can operate on blocks of program statements of different adjustable sizes; (2) the analysis engine can identify a subtrace of the trace and perform analysis on that subtrace (rather than the full trace); (3) the analysis engine can form a pyramid of state conditions and extract predicates based on the pyramid and/or from auxiliary source(s); (4) the analysis engine can generate predicates using an increasingly-aggressive series of available discovery techniques; (5) the analysis engine can selectively concretize procedure calls associated with the trace on an as-needed basis and perform other refinements; and (6) the analysis engine can add additional verification targets in the course of its analysis, etc.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.