Sorting and Transforming Program Repair Ingredients via Deep Learning Code Similarities
Not on the map. Why?
Abstract (arXiv)
In the field of automated program repair, the redundancy assumption claims large programs contain the seeds of their own repair. However, most redundancy-based program repair techniques do not reason about the repair ingredients---the code that is reused to craft a patch. We aim to reason about the repair ingredients by using code similarities to prioritize and transform statements in a codebase for patch generation. Our approach, DeepRepair, relies on deep learning to reason about code similarities. Code fragments at well-defined levels of granularity in a codebase can be sorted according to their similarity to suspicious elements (i.e., code elements that contain suspicious statements) and statements can be transformed by mapping out-of-scope identifiers to similar identifiers in scope. We examined these new search strategies for patch generation with respect to effectiveness from the viewpoint of a software maintainer. Our comparative experiments were executed on six open-source Java projects including 374 buggy program revisions and consisted of 19,949 trials spanning 2,616 days of computation time. DeepRepair's search strategy using code similarities generally found compilable ingredients faster than the baseline, jGenProg, but this improvement neither yielded test-adequate patches in fewer attempts (on average) nor found significantly more patches than the baseline. Although the patch counts were not statistically different, there were notable differences between the nature of DeepRepair patches and baseline patches. The results demonstrate that our learning-based approach finds patches that cannot be found by existing redundancy-based repair techniques.
Key facts. Cited by 26 papers in the map (data through 7 Oct 2026). First posted on arXiv 15 Jul 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 5; 2022: 3; 2023: 9; 2024: 2; 2025: 5; 2026: 2.
26 papers.
Sort:
By area:
- 2023Retrieving Multimodal Information for Augmented Generation: A Surveycited by 84
- 2021Learning to Synthesize Programs as Interpretable and Generalizable Policiescited by 59
- 2023Lemur: Integrating Large Language Models in Automated Program Verificationcited by 49
- 2023RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic Program Repaircited by 43
- 2023A New Era in Software Security: Towards Self-Healing Software via Large Language Models and Formal Verificationcited by 42
- 2024Automatic Programming: Large Language Models and Beyondcited by 35
- 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 23
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkitcited by 22
- 2023A systematic literature review on source code similarity measurement and clone detection: techniques, applications, and challengescited by 14
- 2023Benchmarking Causal Study to Interpret Large Language Models for Source Codecited by 14
- 2022An Exploratory Study on Code Attention in BERTcited by 12
- 2023Toward a Theory of Causation for Interpreting Neural Code Modelscited by 12
14 more
- 2021VarCLR: Variable Semantic Representation Pre-training via Contrastive Learningcited by 11
- 2022Improving Automated Program Repair with Domain Adaptationcited by 10
- 2025Dissecting the SWE-Bench Leaderboards: Profiling Submitters and Architectures of LLM- and Agent-Based Repair Systemscited by 8
- 2021Predicting Patch Correctness Based on the Similarity of Failing Test Casescited by 4
- 2025The Impact of Fine-tuning Large Language Models on Automated Program Repaircited by 3
- 2025UniGenCoder: Merging Seq2Seq and Seq2Tree Paradigms for Unified Code Generationcited by 2
- 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognitioncited by 1
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Codecited by 1
- 2024Investigating Reproducibility in Deep Learning-Based Software Fault Predictioncited by 1
- 2025SnipGen: A Mining Repository Framework for Evaluating LLMs for Codecited by 1
- 2026RAVEN: Agentic RAG for Automated Vulnerability Repaircited by 1
- 2021Exploring Plausible Patches Using Source Code Embeddings in JavaScriptcited by 0
- 2025BitsAI-Fix: LLM-Driven Approach for Automated Lint Error Resolution in Practicecited by 0
- 2026Towards Comprehensive Benchmarking Infrastructure for LLMs In Software Engineeringcited by 0
- 2026RAVEN: Agentic RAG for Automated Vulnerability Repair21 Jun 2026
- 2026Towards Comprehensive Benchmarking Infrastructure for LLMs In Software Engineering28 Jan 2026
- 2025BitsAI-Fix: LLM-Driven Approach for Automated Lint Error Resolution in Practice5 Aug 2025
- 2025The Impact of Fine-tuning Large Language Models on Automated Program Repair26 Jul 2025
- 2025Dissecting the SWE-Bench Leaderboards: Profiling Submitters and Architectures of LLM- and Agent-Based Repair Systems20 Jun 2025
- 2025UniGenCoder: Merging Seq2Seq and Seq2Tree Paradigms for Unified Code Generation18 Feb 2025
- 2025SnipGen: A Mining Repository Framework for Evaluating LLMs for Code10 Feb 2025
- 2024Automatic Programming: Large Language Models and Beyond3 May 2024
- 2024Investigating Reproducibility in Deep Learning-Based Software Fault Prediction8 Feb 2024
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit30 Dec 2023
- 2023Lemur: Integrating Large Language Models in Automated Program Verification7 Oct 2023
- 2023RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic Program Repair12 Sep 2023
14 more
- 2023Benchmarking Causal Study to Interpret Large Language Models for Source Code23 Aug 2023
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Code5 Jul 2023
- 2023A systematic literature review on source code similarity measurement and clone detection: techniques, applications, and challenges28 Jun 2023
- 2023A New Era in Software Security: Towards Self-Healing Software via Large Language Models and Formal Verification24 May 2023
- 2023Retrieving Multimodal Information for Augmented Generation: A Survey20 Mar 2023
- 2023Toward a Theory of Causation for Interpreting Neural Code Models7 Feb 2023
- 2022Improving Automated Program Repair with Domain Adaptation21 Dec 2022
- 2022An Exploratory Study on Code Attention in BERT5 Apr 2022
- 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognition5 Apr 2022
- 2021VarCLR: Variable Semantic Representation Pre-training via Contrastive Learning5 Dec 2021
- 2021A Survey on Machine Learning Techniques for Source Code Analysis18 Oct 2021
- 2021Learning to Synthesize Programs as Interpretable and Generalizable Policies31 Aug 2021
- 2021Predicting Patch Correctness Based on the Similarity of Failing Test Cases28 Jul 2021
- 2021Exploring Plausible Patches Using Source Code Embeddings in JavaScript31 Mar 2021
- 2023Retrieving Multimodal Information for Augmented Generation: A Surveycited by 84
- 2021Learning to Synthesize Programs as Interpretable and Generalizable Policiescited by 59
- 2023Lemur: Integrating Large Language Models in Automated Program Verificationcited by 49
- 2023A New Era in Software Security: Towards Self-Healing Software via Large Language Models and Formal Verificationcited by 42
- 2024Automatic Programming: Large Language Models and Beyondcited by 35
- 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 23
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkitcited by 22
- 2023A systematic literature review on source code similarity measurement and clone detection: techniques, applications, and challengescited by 14
- 2023Benchmarking Causal Study to Interpret Large Language Models for Source Codecited by 14
- 2022An Exploratory Study on Code Attention in BERTcited by 12
- 2023Toward a Theory of Causation for Interpreting Neural Code Modelscited by 12
- 2021VarCLR: Variable Semantic Representation Pre-training via Contrastive Learningcited by 11
12 most cited of 23 All 23 (JSON)
- 2026Towards Comprehensive Benchmarking Infrastructure for LLMs In Software Engineering28 Jan 2026
- 2025BitsAI-Fix: LLM-Driven Approach for Automated Lint Error Resolution in Practice5 Aug 2025
- 2025The Impact of Fine-tuning Large Language Models on Automated Program Repair26 Jul 2025
- 2025UniGenCoder: Merging Seq2Seq and Seq2Tree Paradigms for Unified Code Generation18 Feb 2025
- 2025SnipGen: A Mining Repository Framework for Evaluating LLMs for Code10 Feb 2025
- 2024Automatic Programming: Large Language Models and Beyond3 May 2024
- 2024Investigating Reproducibility in Deep Learning-Based Software Fault Prediction8 Feb 2024
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit30 Dec 2023
- 2023Lemur: Integrating Large Language Models in Automated Program Verification7 Oct 2023
- 2023Benchmarking Causal Study to Interpret Large Language Models for Source Code23 Aug 2023
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Code5 Jul 2023
- 2023A systematic literature review on source code similarity measurement and clone detection: techniques, applications, and challenges28 Jun 2023
12 newest of 23 All 23 (JSON)