English
Related papers

Related papers: Exploring Plausible Patches Using Source Code Embe…

200 papers

Automated Program Repair (APR) has benefited from the code understanding and generation capabilities of Large Language Models (LLMs). Existing feedback-based APR methods iteratively refine candidate patches using test execution feedback and…

Software Engineering · Computer Science 2026-04-22 Linhao Wu , Yifei Pei , Zhen Yang , Kainan Li , Zhonghang Lu , Hao Tan , Xiran Lyu , Jia Li , Yizhou Chen , Pengyu Xue , Kunwu Zheng , Dan Hao

While there has been plenty of work on generating tests from existing code, there has been limited work on generating tests from issues. A correct test must validate the code patch that resolves the issue. This paper focuses on the scenario…

Software Engineering · Computer Science 2025-06-02 Toufique Ahmed , Jatin Ganhotra , Rangeet Pan , Avraham Shinnar , Saurabh Sinha , Martin Hirzel

Vulnerabilities severely threaten software systems, making the timely application of security patches crucial for mitigating attacks. However, software vendors often silently patch vulnerabilities with limited disclosure, where Security…

Software Engineering · Computer Science 2026-01-12 Qingyuan Li , Chenchen Yu , Chuanyi Li , Xin-Cheng Wen , Cheryl Lee , Cuiyun Gao , Bin Luo

Techniques of Automatic Program Repair (APR) have the potential of thoroughly facilitating the task of producing quality software. After a promising start, however, progress in making APR practical has been hindered by the lack of a common…

Software Engineering · Computer Science 2024-02-23 Bertrand Meyer , Viktoryia Kananchuk , Li Huang

An important goal for programmers is to minimize cost of identifying and correcting defects in source code. Code review is commonly used for identifying programming defects. However, manual code review has some shortcomings: a) it is time…

Software Engineering · Computer Science 2018-09-13 Balwinder Sodhi , Shipra Sharma

It is widely recognized that program repair tools need to have a high precision to be useful, i.e., the generated patches need to have a high probability to be correct. However, it is fundamentally difficult to ensure the correctness of the…

Software Engineering · Computer Science 2020-04-28 Jingjing Liang , Ruyi Ji , Jiajun Jiang , Yiling Lou , Yingfei Xiong , Gang Huang

Large Language Model (LLM) - based Automated Program Repair (APR) systems are increasingly integrated into modern software development workflows, offering automated patches in response to natural language bug reports. However, this reliance…

Software Engineering · Computer Science 2026-05-26 Piotr Przymus , Andreas Happe , Jürgen Cito

Bug Reproduction Tests (BRTs) have been used in many Automated Program Repair (APR) systems, primarily for validating promising fixes and aiding fix generation. In practice, when developers submit a patch, they often implement the BRT…

Software Engineering · Computer Science 2026-04-01 Runxiang Cheng , Michele Tufano , José Cambronero , Renyao Wei , Sherry Shi , Grant Uy , Pat Rondon , Franjo Ivančić

Defects4J is a large, peer-reviewed, structured dataset of real-world Java bugs. Each bug in Defects4J comes with a test suite and at least one failing test case that triggers the bug. In this paper, we report on an experiment to explore…

Software Engineering · Computer Science 2021-11-12 Matias Martinez , Thomas Durieux , Romain Sommerard , Jifeng Xuan , Martin Monperrus

Automated program repair (APR) has attracted great research attention, and various techniques have been proposed. Search-based APR is one of the most important categories among these techniques. Existing researches focus on the design of…

Software Engineering · Computer Science 2017-07-18 Ming Wen , Junjie Chen , Rongxin Wu , Dan Hao , Shing-Chi Cheung

Fragmentation is a serious problem in the Android ecosystem. This problem is mainly caused by the fast evolution of the system itself and the various customizations independently maintained by different smartphone manufacturers. Many…

Software Engineering · Computer Science 2022-06-01 Pei Liu , Yanjie Zhao , Haipeng Cai , Mattia Fazzini , John Grundy , Li Li

Recent empirical studies show that the performance of GenProg is not satisfactory, particularly for Java. In this paper, we propose ARJA, a new GP based repair approach for automated repair of Java programs. To be specific, we present a…

Software Engineering · Computer Science 2017-12-22 Yuan Yuan , Wolfgang Banzhaf

Program synthesis and repair have emerged as an exciting area of research, driven by the potential for revolutionary advances in programmer productivity. Among most promising ideas emerging for synthesis are syntax-driven search,…

Programming Languages · Computer Science 2017-07-14 Manos Koukoutos , Mukund Raghothaman , Etienne Kneuss , Viktor Kuncak

LLM-based assistants, such as GitHub Copilot and ChatGPT, have the potential to generate code that fulfills a programming task described in a natural language description, referred to as a prompt. The widespread accessibility of these…

Software Engineering · Computer Science 2024-05-24 Sylvain Kouemo Ngassom , Arghavan Moradi Dakhel , Florian Tambon , Foutse Khomh

Programming is increasingly taught using block-based languages like Scratch. While the use of blocks prevents syntax errors, learners can still make semantic mistakes, requiring feedback and help. As teachers may be overwhelmed by help…

Software Engineering · Computer Science 2025-04-18 Sebastian Schweikl , Gordon Fraser

The exploit or the Proof of Concept of the vulnerability plays an important role in developing superior vulnerability repair techniques, as it can be used as an oracle to verify the correctness of the patches generated by the tools.…

The number of vulnerabilities reported in open source software has increased substantially in recent years. Security patches provide the necessary measures to protect software from attacks and vulnerabilities. In practice, it is difficult…

Software Engineering · Computer Science 2024-01-17 Zhiyuan Pan , Xing Hu , Xin Xia , Xian Zhan , David Lo , Xiaohu Yang

Vulnerabilities are challenging to locate and repair, especially when source code is unavailable and binary patching is required. Manual methods are time-consuming, require significant expertise, and do not scale to the rate at which new…

Cryptography and Security · Computer Science 2023-06-13 Pemma Reiter , Hui Jun Tay , Westley Weimer , Adam Doupé , Ruoyu Wang , Stephanie Forrest

Software development teams generally welcome any effort to expose bugs in their code base. In this work, we build on the hypothesis that mobile apps from the same category (e.g., two web browser apps) may be affected by similar bugs in…

Software Engineering · Computer Science 2023-01-24 Xunzhu Tang , Haoye Tian , Pingfan Kong , Kui Liu , Jacques Klein , Tegawendé F. Bissyande

Automated debugging techniques have the potential to reduce developer effort in debugging, and have matured enough to be adopted by industry. However, one critical issue with existing techniques is that, while developers want rationales for…

Software Engineering · Computer Science 2023-04-06 Sungmin Kang , Bei Chen , Shin Yoo , Jian-Guang Lou