US2014115564A1PendingUtilityA1

Differential static program analysis

Assignee: IBMPriority: Oct 19, 2012Filed: Oct 19, 2012Published: Apr 24, 2014
Est. expiryOct 19, 2032(~6.2 yrs left)· nominal 20-yr term from priority
G06F 8/75G06F 11/3604
51
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods for program analysis include performing a high-level analysis on a program using a processor to generate one or more high-level findings; performing one or more low-level analyses on the program using a processor to generate one or more low-level findings; mapping the one or more low-level findings to the high-level findings to generate a concise combination report that categorizes each finding according to the highest-level analysis that produces the finding.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for program analysis comprising:
 performing a high-level analysis on a program using a processor to generate one or more high-level findings;   performing one or more low-level analyses on the program using a processor to generate one or more low-level findings; and   mapping the one or more low-level findings to the high-level findings to generate a concise combination report that categorizes each finding according to the highest-level analysis that produces the finding.   
     
     
         2 . The method of  claim 1 , wherein mapping comprises:
 generating a set that combines all of the high-level and low-level findings;   removing from the set any findings that were generated by an analysis having a higher associated level of precision than an analysis in question;   associating the set of remaining findings with the analysis in question; and   repeating said generating, removing, and associating for each analysis.   
     
     
         3 . The method of  claim 2 , further comprising sorting the findings according to an associated level of precision. 
     
     
         4 . The method of  claim 1 , further comprising linking analyses in the combination report to associate a suppressed finding in a first analysis to a full report on the finding in a second analysis. 
     
     
         5 . The method of  claim 1 , wherein the high-level analysis is a rule-based analysis. 
     
     
         6 . The method of  claim 1 , wherein the one or more low-level analyses are data-flow-based analyses. 
     
     
         7 . The method of  claim 1 , wherein the one or more low-level analyses each have a different level of precision. 
     
     
         8 . The method of  claim 1 , wherein the high-level analysis and the low-level analyses have a total order with respect to precision. 
     
     
         9 . The method of  claim 1 , where the high-level analysis and the low-level analyses have a partial order with respect to precision. 
     
     
         10 . The method of  claim 1 , wherein the combination report displays results associated with the analyses, such that high-level findings are grouped together and suppressed in information relating to low-level reports. 
     
     
         11 . The method of  claim 10 , wherein the combination report includes links from suppressed information in low-level reports to the high-level findings. 
     
     
         12 . A method for program analysis comprising:
 performing a high-level analysis on a program using a processor to generate one or more high-level findings;   performing one or more low-level analyses on the program using a processor to generate one or more low-level findings;   mapping the one or more low-level findings to the high-level findings to generate a concise combination report that displays results associated with the analyses such that high-level findings are grouped together and suppressed in information relating to low-level reports; and   linking analyses in the combination report to associate a suppressed finding in a first analysis with a full report on the finding in a second analysis.   
     
     
         13 . The method of  claim 12 , wherein mapping comprises:
 generating a set that combines all of the high-level and low-level findings;   removing from the set any findings that were generated by an analysis having a higher associated level of precision than an analysis in question;   associating the set of remaining findings with the analysis in question; and   repeating said generating, removing, and associating for each analysis.   
     
     
         14 . The method of  claim 13 , further comprising sorting the findings according to an associated level of precision. 
     
     
         15 . The method of  claim 12 , wherein the high-level analysis is a rule-based analysis. 
     
     
         16 . The method of  claim 12 , wherein the one or more low-level analyses are data-flow-based analyses. 
     
     
         17 . The method of  claim 12 , wherein the one or more low-level analyses each have a different level of precision. 
     
     
         18 . The method of  claim 12 , wherein the high-level analysis and the low-level analyses have a total order with respect to precision. 
     
     
         19 . The method of  claim 12 , where the high-level analysis and the low-level analyses have a partial order with respect to precision. 
     
     
         20 . A method for program analysis comprising:
 performing a high-level analysis on a program using a processor to generate one or more high-level findings;   performing one or more low-level analyses on the program using a processor to generate one or more low-level findings;   mapping the one or more low-level findings to the high-level findings to generate a concise combination report that displays results associated with the analyses such that high-level findings are grouped together and suppressed in information relating to low-level reports, wherein said mapping comprises:   generating a set that combines all of the high-level and low-level findings;   removing from the set any findings that were generated by an analysis having a higher associated level of precision than an analysis in question;   associating the set of remaining findings with the analysis in question; and   repeating said generating, removing, and associating for each analysis; and   linking analyses in the combination report to associate a suppressed finding in a first analysis with a full report on the finding in a second analysis.

Join the waitlist — get patent alerts

Track US2014115564A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.