The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Jul. 23, 2019

Filed:

Feb. 27, 2017
Applicant:

International Business Machines Corporation, Armonk, NY (US);

Inventors:

Si Bin Fan, Beijing, CN;

Bo Li, Beijing, CN;

Nai Jie Li, Beijing, CN;

Jia Sen Wu, Jiangsu, CN;

Zi Ying Xin, Beijing, CN;

Xiao Zhen Zhu, Beijing, CN;

Attorneys:
Primary Examiner:
Int. Cl.
CPC ...
G06F 9/44 (2018.01); G06F 8/41 (2018.01); G06F 8/75 (2018.01);
U.S. Cl.
CPC ...
G06F 8/433 (2013.01); G06F 8/443 (2013.01); G06F 8/75 (2013.01);
Abstract

A system, method and computer program product to refine an original complex CFG into a simpler CFG showing interesting paths and reducing interfering paths with dynamic input for the state of program. The method receives/encodes dynamic user input in the form of annotations which encodes user's special interests or knowledge of the program at run time, e.g., some assumptions of any variables appeared, which can be equations of variable and value or relationships between variables. The method then simplifies all the branching points in a generated AST (Abstract Syntax Tree) whenever possible by querying a SMT (Satisfiability Modulo Theories) solver with branching condition and the user annotations and by evaluating immediate values of expressions or eliminate unreachable parts in the CFG. Finally, the method generates a simplified CFG by simplified AST. This can assist a programmer to understand the code and facilitates correlating different basic blocks under a same scenario.


Find Patent Forward Citations

Loading…