Validation of static analysis tools via comparison of concrete and abstract states
AssigneeMicrosoft Technology Licensing, LLC
InventorsAlan Thomas Gavin JOWETT, Daniel Michael AGUN, JR.
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Technology Licensing, LLC
InventorsAlan Thomas Gavin JOWETT, Daniel Michael AGUN, JR.
Estimating the term…
The techniques presented herein provide a system for validating a static analysis tool by utilizing a comparison between an abstract state computed by the static analysis tool and a concrete state output by a concrete implementation. A static analysis tool is an automated software tool that evaluates the behavior of a given computer program using rigorous mathematical methods and without executing the program. In contrast, a concrete implementation is an actual machine (e.g., a virtual machine) that executes the given computer program to observe the behavior of the computer program under real world circumstances. Detecting a mismatch between the abstract state and the concrete state is a definite indication of at least one issue (e.g., a bug). As such, utilizing both the abstract state and the concrete state to validate the static analysis tool streamlines the process of discovery, diagnosing, and addressing issues.
A method for validating a static analysis tool comprising:
A system for validating a static analysis tool comprising:
A computer-readable storage medium having encoded thereon, computer-readable instructions that when executed by a system, cause the system to perform operations comprising:
Dependencies are inferred from the claim text.