English
Related papers

Related papers: Learning to Generate Corrective Patches using Neur…

200 papers

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

Training a deep learning model on source code has gained significant traction recently. Since such models reason about vectors of numbers, source code needs to be converted to a code representation before vectorization. Numerous approaches…

Software Engineering · Computer Science 2022-07-18 Marjane Namavar , Noor Nashid , Ali Mesbah

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

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

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

Among the many different kinds of program repair techniques, one widely studied family of techniques is called test suite based repair. Test-suites are in essence input-output specifications and are therefore typically inadequate for…

Software Engineering · Computer Science 2017-03-02 Zhongxing Yu , Matias Martinez , Benjamin Danglot , Thomas Durieux , Martin Monperrus

Automated program repair techniques, which target to generating correct patches for real world defects automatically, have gained a lot of attention in the last decade. Many different techniques and tools have been proposed and developed.…

Software Engineering · Computer Science 2017-05-15 Jiajun Jiang , Yingfei Xiong

Repairing RTL bugs is crucial for hardware design and verification. Traditional automatic program repair (APR) methods define dedicated search spaces to locate and fix bugs with program synthesis. However, they heavily rely on fixed…

Hardware Architecture · Computer Science 2025-11-27 Zizhang Luo , Fan Cui , Kexing Zhou , Runlin Guo , Mile Xia , Hongyuan Hou , Yun Liang

Software vulnerabilities are now reported at an unprecedented speed due to the recent development of automated vulnerability hunting tools. However, fixing vulnerabilities still mainly depends on programmers' manual efforts. Developers need…

Cryptography and Security · Computer Science 2022-03-23 Jianlei Chi , Yu Qu , Ting Liu , Qinghua Zheng , Heng Yin

Most programmers make mistakes when writing code. Some of these mistakes are small and require few edits to the original program -- a class of errors recently termed last mile mistakes. These errors break the flow for experienced developers…

Software Engineering · Computer Science 2022-12-06 Harshit Joshi , José Cambronero , Sumit Gulwani , Vu Le , Ivan Radicek , Gust Verbruggen

In recent years, Neural Machine Translator (NMT) has shown promise in automatically editing source code. Typical NMT based code editor only considers the code that needs to be changed as input and suggests developers with a ranked list of…

Software Engineering · Computer Science 2021-08-17 Saikat Chakraborty , Baishakhi Ray

As of recent generative adversarial networks have allowed for big leaps in the realism of generated images in diverse domains, not the least of which being handwritten text generation. The generation of realistic-looking hand-written text…

Computer Vision and Pattern Recognition · Computer Science 2021-09-16 Alexander Mattick , Martin Mayr , Mathias Seuret , Andreas Maier , Vincent Christlein

In recent years, Automated Program Repair (APR) has been extensively studied in academia and even drawn wide attention from industry. However, APR techniques can be extremely time consuming since (1) a large number of patches can be…

Software Engineering · Computer Science 2024-07-03 Yiling Lou , Jun Yang , Samuel Benton , Dan Hao , Lin Tan , Zhenpeng Chen , Lu Zhang , Lingming Zhang

Bug fixing and code generation have been core research topics in software development for many years. The recent explosive growth in Large Language Models has completely transformed these spaces, putting in reach incredibly powerful tools…

Artificial Intelligence · Computer Science 2024-11-13 Avinash Anand , Akshit Gupta , Nishchay Yadav , Shaurya Bajaj

Neural machine translation is a recently proposed approach to machine translation. Unlike the traditional statistical machine translation, the neural machine translation aims at building a single neural network that can be jointly tuned to…

Computation and Language · Computer Science 2016-05-23 Dzmitry Bahdanau , Kyunghyun Cho , Yoshua Bengio

In recent years, JavaScript has become the most widely used programming language, especially in web development. However, writing secure JavaScript code is not trivial, and programmers often make mistakes that lead to security…

Cryptography and Security · Computer Science 2024-03-21 Tan Khang Le , Saba Alimadadi , Steven Y. Ko

This work is motivated by the pervasive use of method invocations in object-oriented (OO) programs, and indeed their prevalence in patches of OO-program bugs. We propose a generate-and-validate repair technique, called ELIXIR designed to be…

Software Engineering · Computer Science 2021-12-22 Ripon K. Saha , Yingjun Lyu , Hiroaki Yoshida , Mukul R. Prasad

Automated Program Repair (APR) techniques typically rely on a given test-suite to guide the repair process. Apart from the need to provide test oracles, this makes the produced patches prone to test data over-fitting. In this work, instead…

Software Engineering · Computer Science 2023-08-02 Yuntong Zhang , Andreea Costea , Ridwan Shariffdeen , Davin McCall , Abhik Roychoudhury

Machine Learning models from other fields, like Computational Linguistics, have been transplanted to Software Engineering tasks, often quite successfully. Yet a transplanted model's initial success at a given task does not necessarily mean…

Software Engineering · Computer Science 2020-09-02 Yangruibo Ding , Baishakhi Ray , Premkumar Devanbu , Vincent J. Hellendoorn

Timely formative feedback is considered as one of the most important drivers for effective learning. Delivering timely and individualized feedback is particularly challenging in large classes in higher education. Recently Large Language…

Computers and Society · Computer Science 2023-12-15 Imen Azaiz , Oliver Deckarm , Sven Strickroth

Static analysis is one of the most widely adopted techniques to find software bugs before code is put in production. Designing and implementing effective and efficient static analyses is difficult and requires high expertise, which results…

Software Engineering · Computer Science 2019-06-04 Andrew Habib , Michael Pradel