Automated candidate repair patch generation
AssigneeFujitsu Limited
InventorsRipon K. Saha, Wenyu Wang, Mukul R. Prasad
Life of this patent
Estimating the term…
Abstract
A method of automated candidate repair patch generation may include synthesizing repair expressions based on project code. Concise repair expressions may be mined from a code database. A set of repair expressions may be generated based on the synthesized repair expressions and the mined repair expressions. The set of repair expressions may include further repair expressions further synthesized from the synthesized repair expressions and the mined repair expressions. Candidate patches may be generated based on a repair schema and the set of repair expressions.
Claims18
A method of automated candidate repair patch generation, the method comprising:
- synthesizing repair expressions based on project code;
- mining concise repair expressions from a code database;
- generating a set of repair expressions based on the synthesized repair expressions and the mined repair expressions, including further synthesizing further repair expressions based on the synthesized repair expressions and the mined repair expressions;
- and
- generating candidate patches based on a repair schema and the set of repair expressions,
- wherein the mining of the concise repair expressions from the code database includes mining repair expressions from both portions of code determined to be similar to a code portion for which the candidate patches are being generated as having a similarity score above a particular threshold as determined by an algorithm and portions of code determined to be dissimilar to the code portion for which the candidate patches are being generated as having a similarity score below the particular threshold as determined by the algorithm.
Non-transitory computer-readable storage media configured to store instructions that, in response to being executed, cause a system to perform operations of automated candidate repair patch generation, the operations comprising:
- synthesizing repair expressions based on project code;
- mining concise repair expressions from a code database;
- generating a set of repair expressions based on the synthesized repair expressions and the mined repair expressions, including further synthesizing further repair expressions based on the synthesized repair expressions and the mined repair expressions;
- and
- generating candidate patches based on a repair schema and the set of repair expressions,
- wherein the mining of the concise repair expressions from the code database includes mining repair expressions from both portions of code determined to be similar to a code portion for which the candidate patches are being generated as having a similarity score above a particular threshold as determined by an algorithm and portions of code determined to be dissimilar to the code portion for which the candidate patches are being generated as having a similarity score below the particular threshold as determined by the algorithm.
Dependencies are inferred from the claim text.