Elixir: Effective object-oriented program repair
Not on the map. Why?
Abstract (arXiv)
This work is motivated by the pervasive use of method invocations in object-oriented (OO) programs, and indeed their prevalence in patches of OO-program bugs. We propose a generate-and-validate repair technique, called ELIXIR designed to be able to generate such patches. ELIXIR aggressively uses method calls, on par with local variables, fields, or constants, to construct more expressive repair-expressions, that go into synthesizing patches. The ensuing enlargement of the repair space, on account of the wider use of method calls, is effectively tackled by using a machine-learnt model to rank concrete repairs. The machine-learnt model relies on four features derived from the program context, i.e., the code surrounding the potential repair location, and the bug report. We implement ELIXIR and evaluate it on two datasets, the popular Defects4J dataset and a new dataset Bugs.jar created by us, and against 2 baseline versions of our technique, and 5 other techniques representing the state of the art in program repair. Our evaluation shows that ELIXIR is able to increase the number of correctly repaired bugs in Defects4J by 85% (from 14 to 26) and by 57% in Bugs.jar (from 14 to 22), while also significantly out-performing other state-of-the-art repair techniques including ACS, HD-Repair, NOPOL, PAR, and jGenProg.
Key facts. Cited by 16 papers in the map (data through 14 Oct 2026). First posted on arXiv 21 Dec 2021.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2022: 1; 2023: 10; 2024: 3; 2025: 2.
16 papers.
Sort:
By area:
- 2023Baldur: Whole-Proof Generation and Repair with Large Language Modelscited by 119
- 2023Natural Language Generation and Understanding of Big Code for AI-Assisted Programming: A Reviewcited by 32
- 2025Agentic Bug Reproduction for Effective Automated Program Repair at Googlecited by 22
- 2023Can Transformers Learn to Solve Problems Recursively?cited by 17
- 2023ITER: Iterative Neural Repair for Multi-Location Patchescited by 16
- 2023Towards Generating Functionally Correct Code Edits from Natural Language Issue Descriptionscited by 14
- 2024Transformer-Based Models Are Not Yet Perfect At Learning to Emulate Structural Recursioncited by 14
- 2023KNOD: Domain Knowledge Distilled Tree Decoder for Automated Program Repaircited by 13
- 2023RunBugRun -- An Executable Dataset for Automated Program Repaircited by 11
- 2023Copilot for Xcode: Exploring AI-Assisted Programming by Prompting Cloud-based Large Language Modelscited by 11
- 2022NeuRecover: Regression-Controlled Repair of Deep Neural Networks with Training Historycited by 8
- 2023Revisiting the Plastic Surgery Hypothesis via Large Language Modelscited by 7
4 more
- 2025The Art of Repair: Optimizing Iterative Program Repair with Instruction-Tuned Modelscited by 7
- 2023Out of Context: How important is Local Context in Neural Program Repair?cited by 5
- 2024NARRepair: Non-Autoregressive Code Generation Model for Automatic Program Repaircited by 0
- 2024Contextual Augmented Multi-Model Programming (CAMP): A Hybrid Local-Cloud Copilot Frameworkcited by 0
- 2025The Art of Repair: Optimizing Iterative Program Repair with Instruction-Tuned Models5 May 2025
- 2025Agentic Bug Reproduction for Effective Automated Program Repair at Google3 Feb 2025
- 2024Contextual Augmented Multi-Model Programming (CAMP): A Hybrid Local-Cloud Copilot Framework20 Oct 2024
- 2024NARRepair: Non-Autoregressive Code Generation Model for Automatic Program Repair24 Jun 2024
- 2024Transformer-Based Models Are Not Yet Perfect At Learning to Emulate Structural Recursion23 Jan 2024
- 2023Out of Context: How important is Local Context in Neural Program Repair?8 Dec 2023
- 2023Copilot for Xcode: Exploring AI-Assisted Programming by Prompting Cloud-based Large Language Models8 Jul 2023
- 2023Natural Language Generation and Understanding of Big Code for AI-Assisted Programming: A Review4 Jul 2023
- 2023Can Transformers Learn to Solve Problems Recursively?24 May 2023
- 2023ITER: Iterative Neural Repair for Multi-Location Patches24 Apr 2023
- 2023Towards Generating Functionally Correct Code Edits from Natural Language Issue Descriptions7 Apr 2023
- 2023RunBugRun -- An Executable Dataset for Automated Program Repair3 Apr 2023
4 more
- 2023Revisiting the Plastic Surgery Hypothesis via Large Language Models18 Mar 2023
- 2023Baldur: Whole-Proof Generation and Repair with Large Language Models8 Mar 2023
- 2023KNOD: Domain Knowledge Distilled Tree Decoder for Automated Program Repair3 Feb 2023
- 2022NeuRecover: Regression-Controlled Repair of Deep Neural Networks with Training History1 Mar 2022
- 2023Baldur: Whole-Proof Generation and Repair with Large Language Modelscited by 119
- 2023Natural Language Generation and Understanding of Big Code for AI-Assisted Programming: A Reviewcited by 32
- 2023Can Transformers Learn to Solve Problems Recursively?cited by 17
- 2023ITER: Iterative Neural Repair for Multi-Location Patchescited by 16
- 2023Towards Generating Functionally Correct Code Edits from Natural Language Issue Descriptionscited by 14
- 2024Transformer-Based Models Are Not Yet Perfect At Learning to Emulate Structural Recursioncited by 14
- 2023KNOD: Domain Knowledge Distilled Tree Decoder for Automated Program Repaircited by 13
- 2023RunBugRun -- An Executable Dataset for Automated Program Repaircited by 11
- 2023Copilot for Xcode: Exploring AI-Assisted Programming by Prompting Cloud-based Large Language Modelscited by 11
- 2022NeuRecover: Regression-Controlled Repair of Deep Neural Networks with Training Historycited by 8
- 2023Revisiting the Plastic Surgery Hypothesis via Large Language Modelscited by 7
- 2025The Art of Repair: Optimizing Iterative Program Repair with Instruction-Tuned Modelscited by 7
12 most cited of 15 All 15 (JSON)
- 2025The Art of Repair: Optimizing Iterative Program Repair with Instruction-Tuned Models5 May 2025
- 2024Contextual Augmented Multi-Model Programming (CAMP): A Hybrid Local-Cloud Copilot Framework20 Oct 2024
- 2024NARRepair: Non-Autoregressive Code Generation Model for Automatic Program Repair24 Jun 2024
- 2024Transformer-Based Models Are Not Yet Perfect At Learning to Emulate Structural Recursion23 Jan 2024
- 2023Out of Context: How important is Local Context in Neural Program Repair?8 Dec 2023
- 2023Copilot for Xcode: Exploring AI-Assisted Programming by Prompting Cloud-based Large Language Models8 Jul 2023
- 2023Natural Language Generation and Understanding of Big Code for AI-Assisted Programming: A Review4 Jul 2023
- 2023Can Transformers Learn to Solve Problems Recursively?24 May 2023
- 2023ITER: Iterative Neural Repair for Multi-Location Patches24 Apr 2023
- 2023Towards Generating Functionally Correct Code Edits from Natural Language Issue Descriptions7 Apr 2023
- 2023RunBugRun -- An Executable Dataset for Automated Program Repair3 Apr 2023
- 2023Revisiting the Plastic Surgery Hypothesis via Large Language Models18 Mar 2023
12 newest of 15 All 15 (JSON)