/Patent Tracker
MicrosoftPatent applicationAI & softwareInterest 3/10

Microsoft patents method to check code-checking tools against real execution

Patent drawing
Patent drawing from the official filing.

Microsoft describes a system that verifies static analysis tools by comparing their predicted code behavior against actual execution results. The method runs a test program in both a mathematical model and a real environment, flagging any differences between the expected and actual outcomes. This helps developers find bugs in the analysis tool itself rather than just the code it is checking.

Why it mattersIt improves the reliability of automated code checking tools, which are widely used in software development to catch errors before programs are run.

In the filing’s own words

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.

What exactly they claim (claim 1)

1. A method for validating a static analysis tool comprising: receiving a test program comprising a sequence of instructions and data for initializing the test program; computing, by the static analysis tool, an abstract state of the test program for an instruction of the sequence of instructions, wherein the abstract state defines an expected value for the instruction that is identified as valid by the static analysis tool; generating, by a concrete implementation executing the test program, a concrete state of the test program for the instruction of the sequence of instructions, wherein the concrete state includes a specific value that is calculated from an execution of the instruction using the data; identifying a mismatch between the concrete state and the abstract state at the instruction of the test program, wherein the mismatch is identified by the by specific value included in the concrete state being different from the expected value defined by the abstract state; and in response to identifying the mismatch, generating an alert, wherein the alert identifies the instruction that caused the mismatch between the concrete state and the abstract state.

Facts

Company
Microsoft (MICROSOFT TECHNOLOGY LICENSING, LLC)
Official title
VALIDATION OF STATIC ANALYSIS TOOLS VIA COMPARISON OF CONCRETE AND ABSTRACT STATES
Publication number
US20260300142A1
Application number
19089395
Filed
Mar 25, 2025
Published
Oct 1, 2026
Inventors
2
Claims
20

Classified under

G06F 11/3684 Physics & computingG06F 11/3692 Physics & computing

More from Microsoft in AI & software

Summaries are simplified from the filing’s own abstract and first claim. A patent filing is not a product announcement.
Patent data and drawings: U.S. Patent and Trademark Office (USPTO). Nebula is not affiliated with or endorsed by the USPTO.