We gratefully acknowledge support from
the Simons Foundation and member institutions.
Full-text links:

Download:

Current browse context:

cs.SE

Change to browse by:

cs

References & Citations

DBLP - CS Bibliography

Bookmark

(what is this?)
CiteULike logo BibSonomy logo Mendeley logo del.icio.us logo Digg logo Reddit logo

Computer Science > Software Engineering

Title: Adversarial Patch Generation for Automated Program Repair

Authors: Abdulaziz Alhefdhi (1 and 2), Hoa Khanh Dam (1), Thanh Le-Cong (3), Bach Le (3), Aditya Ghose (1) ((1) University of Wollongong, (2) Prince Sattam bin Abdulaziz University, (3) The University of Melbourne)
Abstract: Automated Program Repair has attracted significant research in recent years, leading to diverse techniques that focus on two main directions: search-based and semantic-based program repair. The former techniques often face challenges due to the vast search space, resulting in difficulties in identifying correct solutions, while the latter approaches are constrained by the capabilities of the underlying semantic analyser, limiting their scalability. In this paper, we propose NEVERMORE, a novel learning-based mechanism inspired by the adversarial nature of bugs and fixes. NEVERMORE is built upon the Generative Adversarial Networks architecture and trained on historical bug fixes to generate repairs that closely mimic human-produced fixes. Our empirical evaluation on 500 real-world bugs demonstrates the effectiveness of NEVERMORE in bug-fixing, generating repairs that match human fixes for 21.2% of the examined bugs. Moreover, we evaluate NEVERMORE on the Defects4J dataset, where our approach generates repairs for 4 bugs that remained unresolved by state-of-the-art baselines. NEVERMORE also fixes another 8 bugs which were only resolved by a subset of these baselines. Finally, we conduct an in-depth analysis of the impact of input and training styles on NEVERMORE's performance, revealing where the chosen style influences the model's bug-fixing capabilities.
Subjects: Software Engineering (cs.SE)
Cite as: arXiv:2012.11060 [cs.SE]
  (or arXiv:2012.11060v4 [cs.SE] for this version)

Submission history

From: Abdulaziz Alhefdhi [view email]
[v1] Mon, 21 Dec 2020 00:34:29 GMT (344kb,D)
[v2] Wed, 30 Dec 2020 10:29:05 GMT (353kb,D)
[v3] Sat, 22 Jul 2023 10:41:43 GMT (736kb,D)
[v4] Sun, 3 Sep 2023 23:33:52 GMT (1167kb,D)

Link back to: arXiv, form interface, contact.