Program Repair
34 papers with code • 3 benchmarks • 8 datasets
Task of teaching ML models to modify an existing program to fix a bug in a given code.
Datasets
Subtasks
Latest papers
Invalidator: Automated Patch Correctness Assessment via Semantic and Syntactic Reasoning
In case our approach fails to determine an overfitting patch based on invariants, INVALIDATOR utilizes a trained model from labeled patches to assess patch correctness based on program syntax.
InvAASTCluster: On Applying Invariant-Based Program Clustering to Introductory Programming Assignments
Due to the vast number of students enrolled in Massive Open Online Courses (MOOCs), there has been an increasing number of automated program repair techniques focused on introductory programming assignments (IPAs).
C-Pack of IPAs: A C90 Program Benchmark of Introductory Programming Assignments
Due to the vast number of students enrolled in Massive Open Online Courses (MOOCs), there has been an increasing number of automated program repair techniques focused on introductory programming assignments (IPAs).
TFix: Learning to Fix Coding Errors with a Text-to-Text Transformer
The problem of fixing errors in programs has attracted substantial interest over the years.
A Syntax-Guided Edit Decoder for Neural Program Repair
Our results show that Recoder repairs 53 bugs on Defects4J v1. 2, which achieves 21. 4% improvement over the previous state-of-the-art approach for single-hunk bugs (TBar).
Break-It-Fix-It: Unsupervised Learning for Program Repair
To bridge this gap, we propose a new training approach, Break-It-Fix-It (BIFI), which has two key ideas: (i) we use the critic to check a fixer's output on real bad inputs and add good (fixed) outputs to the training data, and (ii) we train a breaker to generate realistic bad code from good code.
Assessing the Effectiveness of Syntactic Structure to Learn Code Edit Representations
In this paper, we elaborate upon this state of the art approach and modify it to represent source code edits.
Exploring Plausible Patches Using Source Code Embeddings in JavaScript
Despite the immense popularity of the Automated Program Repair (APR) field, the question of patch validation is still open.
Unified Pre-training for Program Understanding and Generation
Experiments on code summarization in the English language, code generation, and code translation in seven programming languages show that PLBART outperforms or rivals state-of-the-art models.
CURE: Code-Aware Neural Machine Translation for Automatic Program Repair
Finally, CURE uses a subword tokenization technique to generate a smaller search space that contains more correct fixes.