PATENT CLAIM ANALYSIS

Application Number: 16030549
Application Type: Utility
Filing Date: 2018-07
Publication Date: 2020-01
Patent Classification: ["717", "124000"]

Abstract:
A method for validating software transforms. A target program binary is mutated, producing a plurality of variants. It is determined whether each variant passes a test suite. Upon determining the variant does not pass the test suite, the variant is discarded. Upon determining the variant passes the test suite, the variant is compared to the target program binary. A candidate transform is extracted which meets scope criteria. The candidate transform is applied to each of a plurality of test programs. It is determined whether the candidate transform is safe. Upon determining that the candidate transform is not safe, the candidate transform is discarded. Upon determining that the candidate transform is safe, the candidate transform is collected.

Claim (Index 20):
A method for generating validated software transforms comprising:\n mutating a target program binary using genetic mutation, producing a plurality of variants of the target program binary using a crossover combination technique and tournament selection, wherein the crossover combination technique is a two-point technique; determining whether each variant of the variants passes a test suite for the target program binary; upon determining the variant does not pass the test suite, discarding the variant; upon determining the variant passes the test suite:\n extracting a candidate transform by comparing a disassembled output of the target program binary with a disassembled output of the variant, the candidate transform describing a difference between the disassembled outputs of the target program binary and the variant within a window scope criteria; \n applying the candidate transform to each test program binary of a plurality of additional program binaries, producing a variant of the test program binary, wherein the candidate transform is applied to a .text section of the test program binary; \n determining whether the candidate transform is safe, wherein the candidate transform is considered safe if, for each test program binary of the additional program binaries, the variant of the test program binary passes a respective test suite for the test program binary; \n upon determining the candidate transform is not safe, discarding the candidate transform; and \n upon determining the candidate transform is safe, collecting the candidate transform as one of the validated software transforms.

Metadata:
- Claim Count in Document: 50.0
- Percentile: 95.0
- Lexical Diversity: 2.72917
- Patent Class: 717.0
- Transitional Phrase Type: open
- Component Type: 1
- Foreign Priority: False
- Related Applications: ['12867433', '14281421', '12867429', '15047745', '14212462']

Analysis Scores:
- 35 USC 101 Eligibility (BERT): 0.3449809894834903
- 35 USC 102 Novelty (BERT): 0.499638478626236
- Combined Prediction Score: 0.3604467383977648
- Mean Citation Score: 132.530408
- Max Citation Score: 142.04294
- Similarity Product: 87.0912073464489

Labels:
- Claim Label 101: 1
- Claim Label 102: 1
- Claim Label 103: 0
- Claim Label 112: 1
- Combined Label: 1
- Label 101 Adjusted: 1

Dataset: test