English
Related papers

Related papers: Execution-free Program Repair

200 papers

Many verification tools come out of academic projects, whose natural constraints do not typically lead to a strong focus on usability. For widespread use, however, usability is essential. Using a well-known benchmark, the Tokeneer problem,…

Software Engineering · Computer Science 2016-05-06 Mansur Khazeev , Victor Rivera , Manuel Mazzara , Alexander Tchitchigin

Development of formal proofs of correctness of programs can increase actual and perceived reliability and facilitate better understanding of program specifications and their underlying assumptions. Tools supporting such development have…

Logic in Computer Science · Computer Science 2020-03-17 Talia Ringer , Karl Palmskog , Ilya Sergey , Milos Gligoric , Zachary Tatlock

Software bugs significantly contribute to software cost and increase the risk of system malfunctioning. In recent years, many automated program-repair approaches have been proposed to automatically fix undesired program behavior. Despite of…

Software Engineering · Computer Science 2021-07-19 Dirk Beyer , Lars Grunske , Thomas Lemberger , Minxing Tang

There are two ways to check if a program is correct, namely execute it or review it. While executing a program is the ultimate test for its correctness reviewing the program can occur earlier in its development and find problems if done…

Software Engineering · Computer Science 2024-07-03 Scott Ballentine , Eitan Farchi

Context: Learning-based automatic program repair techniques are showing promise to provide quality fix suggestions for detected bugs in the source code of the software. These tools mostly exploit historical data of buggy and fixed code…

Software Engineering · Computer Science 2020-10-07 Faria Huq , Masum Hasan , Mahim Anzum Haque Pantho , Sazan Mahbub , Anindya Iqbal , Toufique Ahmed

Test-based automated program repair has been a prolific field of research in software engineering in the last decade. Many approaches have indeed been proposed, which leverage test suites as a weak, but affordable, approximation to program…

In this paper we report the experience of using AutoProof to statically verify a small object oriented program. We identified the problems that emerged by this activity and we classified them according to their nature. In particular, we…

Software Engineering · Computer Science 2017-06-20 Mansur Khazeev , Victor Rivera , Manuel Mazzara , Leonard Johard

Current automated program repair (APR) techniques are far from being practical and useful enough to be considered for realistic debugging. They rely on unrealistic assumptions including the requirement of a comprehensive suite of test cases…

Software Engineering · Computer Science 2024-07-15 Qi Xin , Haojun Wu , Steven P. Reiss , Jifeng Xuan

Automatic verification deals with the validation by means of computers of correctness certificates. The related tools, usually called proof assistants or interactive provers, provide an interactive environment for the creation of formal…

Logic in Computer Science · Computer Science 2017-01-16 Andrea Asperti

Software bugs are prevalent in modern software systems and notoriously hard to debug manually. Therefore, a large body of research efforts have been dedicated to automated software debugging, including both automated fault localization and…

Software Engineering · Computer Science 2019-10-04 Yiling Lou , Ali Ghanbari , Xia Li , Lingming Zhang , Dan Hao , Lu Zhang

Automated program repair (APR) techniques are effective in fixing inevitable defects in software, enhancing development efficiency and software robustness. However, due to the difficulty of generating precise specifications, existing APR…

Software Engineering · Computer Science 2025-10-17 Xu He , Shu Wang , Kun Sun

While significant progress has been made in automating various aspects of software development through coding agents, there is still significant room for improvement in their bug fixing capabilities. Debugging and investigation of runtime…

Software Engineering · Computer Science 2026-04-22 Spandan Garg , Yufan Huang

Context: Bug bisection is a common technique used to identify a revision that introduces a bug or indirectly fixes a bug, and often involves executing multiple revisions of a project to determine whether the bug is present within the…

Software Engineering · Computer Science 2024-05-06 Ching Hang Mak , Shing-Chi Cheung

Is it possible to patch software bugs in P4 programs without human involvement? We show that this is partially possible in many cases due to advances in software testing and the structure of P4 programs. Our insight is that runtime…

Software Engineering · Computer Science 2020-04-28 Apoorv Shukla , Kevin Hudemann , Zsolt Vági , Lily Hügerich , Georgios Smaragdakis , Stefan Schmid , Artur Hecker , Anja Feldmann

Software debugging, and program repair are among the most time-consuming and labor-intensive tasks in software engineering that would benefit a lot from automation. In this paper, we propose a novel automated program repair approach based…

Software Engineering · Computer Science 2021-04-01 Ehsan Mashhadi , Hadi Hemmati

The complexity of modern software has led to a drastic increase in the time and cost associated with detecting and rectifying software bugs. In response, researchers have explored various methods to automatically generate fixes for buggy…

Software Engineering · Computer Science 2023-03-31 Md Mahim Anjum Haque , Wasi Uddin Ahmad , Ismini Lourentzou , Chris Brown

Automated program repair is a problem of finding a transformation (called a patch) of a given incorrect program that eliminates the observable failures. It has important applications such as providing debugging aids, automatically grading…

Software Engineering · Computer Science 2017-07-18 Sergey Mechtaev , Xiang Gao , Shin Hwei Tan , Abhik Roychoudhury

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

Programmers often use an iterative process of hypothesis generation ("perhaps this function is called twice?") and hypothesis testing ("let's count how many times this breakpoint fires") to understand the behavior of unfamiliar or…

Programming Languages · Computer Science 2026-04-14 Shardul Chiplunkar , Clément Pit-Claudel

OpenAI's Codex, a GPT-3 like model trained on a large code corpus, has made headlines in and outside of academia. Given a short user-provided description, it is capable of synthesizing code snippets that are syntactically and semantically…

Software Engineering · Computer Science 2021-11-09 Julian Aron Prenner , Romain Robbes