Patent ID: 9141354
Filing Date: 2015-09-22
Classification: G06F

Abstract:
1. A computer-implemented method of determining whether to merge two symbolic analysis states, wherein a first state corresponds to a first set of paths through a target program to a target program location, and a second state corresponds to a second set of paths through the target program to the target program location, the first set of paths differing from the second set of paths, the method comprising: determining a set of one or more variables of the target program at the target program location; analyzing values of each variable in the set to determine an impact of merging the first state and the second state, the analyzing comprising, for each variable in the set: determining, based on the analyzing of the values of each variable in the set, that, on balance, merging the first state and the second state will yield a net benefit, the net benefit comprising an overall reduction in time required to analyze the target program or an increase in a total number of program behaviors explored in a given time; and responsive to determining that merging the first and second states will yield a net benefit, determining to merge the first state and the second state to produce a merged state, the merged state including all information corresponding to the first and second sets of paths that was included in the first and second states.