English
Related papers

Related papers: Partitioning Patches into Test-equivalence Classes…

200 papers

Automated program repair (APR) techniques have achieved conspicuous progress, and are now capable of producing genuinely correct fixes in scenarios that were well beyond their capabilities only a few years ago. Nevertheless, even when an…

Software Engineering · Computer Science 2026-04-28 Shifat Sahariar Bhuiyan , Abhishek Tiwari , Yu Pei , Carlo A. Furia

Many techniques for automated program repair involve syntactic program transformations. Applying combinations of such transformations on faulty code yields fix candidates whose correctness must be determined. Exploring these combinations…

Automated program repair (APR) aims to help developers improve software reliability by generating patches for buggy programs. Although many code language models (CLM) are developed and effective in many software tasks such as code…

Software Engineering · Computer Science 2023-04-18 Nan Jiang , Kevin Liu , Thibaud Lutellier , Lin Tan

Relative correctness is the property of a program to be more-correct than another with respect to a given specification. Whereas the traditional definition of (absolute) correctness divides candidate program into two classes (correct, and…

Software Engineering · Computer Science 2016-06-03 Nafi Diallo , Wided Ghardallou , Ali Mili

This paper is about understanding the nature of bug fixing by analyzing thousands of bug fix transactions of software repositories. It then places this learned knowledge in the context of automated program repair. We give extensive…

Software Engineering · Computer Science 2018-07-06 Matias Martinez , Martin Monperrus

Automatic program repair holds the potential of dramatically improving the productivity of programmers during the software development process and correctness of software in general. Recent advances in machine learning, deep learning, and…

Software Engineering · Computer Science 2021-09-24 Hossein Hajipour , Apratim Bhattacharyya , Cristian-Alexandru Staicu , Mario Fritz

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

This study explores the potential of Large Language Models (LLMs) in automating the repair of C programs. We present a framework that integrates spectrum-based fault localization (SBFL), runtime feedback, and Chain-of-Thought-structured…

Software Engineering · Computer Science 2025-09-04 Mahdi Farzandway , Fatemeh Ghassemi

The problem of checking whether two programs are semantically equivalent or not has a diverse range of applications, and is consequently of substantial importance. There are several techniques that address this problem, chiefly by…

Software Engineering · Computer Science 2021-09-07 Manish Goyal , Muqsit Azeem , Kumar Madhukar , R. Venkatesh

In courses that involve programming assignments, giving meaningful feedback to students is an important challenge. Human beings can give useful feedback by manually grading the programs but this is a time-consuming, labor intensive, and…

Programming Languages · Computer Science 2020-10-19 Joshua Clune , Vijay Ramamurthy , Ruben Martins , Umut A. Acar

Maintenance is a dominant component of software cost, and localizing reported defects is a significant component of maintenance. We propose a scalable approach that leverages the natural language present in both defect reports and source…

Software Engineering · Computer Science 2012-11-14 Zachary P. Fry , Westley Weimer

The current article is an interdisciplinary attempt to decipher automatic program repair processes. The review is done by the manner typical to human science known as diffraction. We attempt to spot a gap in the literature of self-healing…

Software Engineering · Computer Science 2020-11-06 S. Amirhossein Mousavi , Donya Azizi Babani , Francesco Flammini

Automated Program Repair (APR) techniques have drawn wide attention from both academia and industry. Meanwhile, one main limitation with the current state-of-the-art APR tools is that patches passing all the original tests are not…

Software Engineering · Computer Science 2023-02-10 Jun Yang , Yuehan Wang , Yiling Lou , Ming Wen , Lingming Zhang

Language models have improved by orders of magnitude with the recent emergence of Transformer-based Large Language Models (LLMs). LLMs have demonstrated their ability to generate natural code that is highly similar to code written by…

Software Engineering · Computer Science 2024-04-24 Aidan Z. H. Yang , Sophia Kolak , Vincent J. Hellendoorn , Ruben Martins , Claire Le Goues

Automated Program Repair (APR) seeks to automatically correct software bugs without requiring human intervention. However, existing tools tend to generate patches that satisfy test cases without fixing the underlying bug, those are known as…

Software Engineering · Computer Science 2025-07-31 Marcos Fuster-Pena , David de-Fitero-Dominguez , Antonio Garcia-Cabot , Eva Garcia-Lopez

Machine learning (ML) now pervades the field of Automated Program Repair (APR). Algorithms deploy neural machine translation and large language models (LLMs) to generate software patches, among other tasks. But, there are important…

Software Engineering · Computer Science 2024-05-10 Joseph Renzullo , Pemma Reiter , Westley Weimer , Stephanie Forrest

Open-source software vulnerability patch detection is a critical component for maintaining software security and ensuring software supply chain integrity. Traditional manual detection methods face significant scalability challenges when…

Software Engineering · Computer Science 2025-09-30 Haoran Xu , Chen Zhi , Junxiao Han , Xinkui Zhao , Jianwei Yin , Shuiguang Deng

Automated Program Repair (APR) holds the promise of alleviating the burden of debugging and fixing software bugs. Despite this, developers still need to manually inspect each patch to confirm its correctness, which is tedious and…

Software Engineering · Computer Science 2025-03-04 Ruixin Wang , Zhongkai Zhao , Le Fang , Nan Jiang , Yiling Lou , Lin Tan , Tianyi Zhang

Large language models (LLMs) are reshaping automated program repair. We present a unified taxonomy that groups 62 recent LLM-based repair systems into four paradigms defined by parameter adaptation and control authority over the repair…

Software Engineering · Computer Science 2025-12-05 Boyang Yang , Zijian Cai , Fengling Liu , Bach Le , Lingming Zhang , Tegawendé F. Bissyandé , Yang Liu , Haoye Tian

Equivalence testing, a fundamental problem in the field of distribution testing, seeks to infer if two unknown distributions on $[n]$ are the same or far apart in the total variation distance. Conditional sampling has emerged as a powerful…

Data Structures and Algorithms · Computer Science 2024-03-08 Diptarka Chakraborty , Sourav Chakraborty , Gunjan Kumar , Kuldeep S. Meel