2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE) 2021
DOI: 10.1109/icse43902.2021.00107
|View full text |Cite
|
Sign up to set email alerts
|

CURE: Code-Aware Neural Machine Translation for Automatic Program Repair

Abstract: Automatic program repair (APR) is crucial to improve software reliability. Recently, neural machine translation (NMT) techniques have been used to fix software bugs automatically. While promising, these approaches have two major limitations. Their search space often does not contain the correct fix, and their search strategy ignores software knowledge such as strict code syntax. Due to these limitations, existing NMT-based techniques underperform the best template-based approaches. We propose CURE, a new NMT-b… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
193
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
3
2
2

Relationship

0
7

Authors

Journals

citations
Cited by 194 publications
(193 citation statements)
references
References 69 publications
0
193
0
Order By: Relevance
“…We provide in Table 6 the performance of our repair pipelines on the four defect benchmarks. We also compare their performance against the results of 26 APR techniques reported in recent literature [28]. Due to space limitation, we only include in this Overall, we find that our pipelines can both achieve 100% precision: all generated patches that passed the test suite were found to be correct.…”
Section: Heuristics-based Repair Pipelinementioning
confidence: 99%
See 3 more Smart Citations
“…We provide in Table 6 the performance of our repair pipelines on the four defect benchmarks. We also compare their performance against the results of 26 APR techniques reported in recent literature [28]. Due to space limitation, we only include in this Overall, we find that our pipelines can both achieve 100% precision: all generated patches that passed the test suite were found to be correct.…”
Section: Heuristics-based Repair Pipelinementioning
confidence: 99%
“…Because the performance of fault localization can severely impact repair performance [52], researchers act on this step to improve the pipeline: e.g., ACS [96] uses predicate switching [103] while SimFix [27] applies a test case purification approach [98] to refine the fault localization results, respectively. In recent works [28,60], the assessment of the actual patch generation step of APR has been done by assuming that the fault localization at the line is perfect. Nevertheless, even in such cases, the patch generation is challenged since it often partially touches the relevant code elements [51].…”
Section: Automated Program Repairmentioning
confidence: 99%
See 2 more Smart Citations
“…Finally, they validate the patches to identify those that yield repaired programs passing the test suite and are promising to be correct. Current techniques differ primarily in patch generation step using various approaches based on genetic programming [38], repair patterns (e.g., [44]), search (e.g., [3,27,76,82]), conditional synthesis (e.g., [47,84]), program state analysis [13], bytecode mutation [20], and machine learning (e.g., [14,28,40]). ROSE's repair generation is based on a combination of efficient prior approaches based on patterns [44], search [80], and machine learning [14].…”
Section: Related Workmentioning
confidence: 99%