English
Related papers

Related papers: Automatically finding atomic regions for fixing bu…

200 papers

Static analyzers help find bugs early by warning about recurring bug categories. While fixing these bugs still remains a mostly manual task in practice, we observe that fixes for a specific bug category often are repetitive. This paper…

Software Engineering · Computer Science 2019-11-22 Johannes Bader , Andrew Scott , Michael Pradel , Satish Chandra

Processor design validation and debug is a difficult and complex task, which consumes the lion's share of the design process. Design bugs that affect processor performance rather than its functionality are especially difficult to catch,…

Hardware Architecture · Computer Science 2020-11-20 Erick Carvajal Barboza , Sara Jacob , Mahesh Ketkar , Michael Kishinevsky , Paul Gratz , Jiang Hu

Providing feedback is an integral part of teaching. Most open online courses on programming make use of automated grading systems to support programming assignments and give real-time feedback. These systems usually rely on test results to…

Software Engineering · Computer Science 2019-05-30 Rahul Gupta , Aditya Kanade , Shirish Shevade

Print quality is an important criterion for a printer's performance. The detection, classification, and assessment of printing defects can reflect the printer's working status and help to locate mechanical problems inside. To handle all…

Computer Vision and Pattern Recognition · Computer Science 2020-02-27 Xiaoyu Xiang , Renee Jessome , Eric Maggard , Yousun Bang , Minki Cho , Jan Allebach

Automated program repair is an emerging technology which consists of a suite of techniques to automatically fix bugs or vulnerabilities in programs. In this paper, we present a comprehensive survey of the state of the art in program repair.…

Software Engineering · Computer Science 2022-11-24 Xiang Gao , Yannic Noller , Abhik Roychoudhury

Concurrent programs are difficult to test due to their inherent non-determinism. To address this problem, testing often requires the exploration of thread schedules of a program; this can be time-consuming when applied to real-world…

Software Engineering · Computer Science 2018-04-11 Tingting Yu , Wei Wen , Xue Han , Jane Hayes

This demonstration paper presents CMind, an artificial intelligence agent for localizing C memory bugs. The novel aspect to CMind is that it follows steps that we observed human programmers perform during empirical study of those…

Software Engineering · Computer Science 2026-02-23 Chia-Yi Su , Collin McMillan

Finding bugs is key to the correctness of compilers in wide use today. If the behaviour of a compiled program, as allowed by its architecture memory model, is not a behaviour of the source program under its source model, then there is a…

Programming Languages · Computer Science 2024-01-31 Luke Geeson , Lee Smith

More and more users and developers are using Issue Tracking Systems (ITSs) to report issues, including bugs, feature requests, enhancement suggestions, etc. Different information, however, is gathered from users when issues are reported on…

Software Engineering · Computer Science 2019-09-04 Yuxiang Zhu , Minxue Pan , Yu Pei , Tian Zhang

Automated program repair is an emerging technology that seeks to automatically rectify bugs and vulnerabilities using learning, search, and semantic analysis. Trust in automatically generated patches is necessary for achieving greater…

Software Engineering · Computer Science 2022-02-14 Yannic Noller , Ridwan Shariffdeen , Xiang Gao , Abhik Roychoudhury

The rapid pace of large-scale software development places increasing demands on traditional testing methodologies, often leading to bottlenecks in efficiency, accuracy, and coverage. We propose a novel perspective on software testing by…

Software Engineering · Computer Science 2025-04-08 Yuchen Wang , Shangxin Guo , Chee Wei Tan

The problem of software fault localization may be viewed as an approach for finding hidden faults or bugs in the existing program codes which are syntactically correct and give fault free output for some input instances but fail for all…

Software Engineering · Computer Science 2016-05-09 Vangipuram Radhakrishna

Patching severe security flaws in complex software remains a major challenge. While automated tools like fuzzers efficiently discover bugs, fixing deep-rooted low-level faults (e.g., use-after-free and memory corruption) still requires…

Software Engineering · Computer Science 2026-04-07 Maolin Sun , Yibiao Yang , Xuanlin Liu , Yuming Zhou , Baowen Xu

We introduce Bug-Injector, a system that automatically creates benchmarks for customized evaluation of static analysis tools. We share a benchmark generated using Bug-Injector and illustrate its efficacy by using it to evaluate the recall…

Software Engineering · Computer Science 2019-09-10 Vineeth Kashyap , Jason Ruchti , Lucja Kot , Emma Turetsky , Rebecca Swords , Shih An Pan , Julien Henry , David Melski , Eric Schulte

Nowadays, development teams often rely on tools such as Jira or Bugzilla to manage backlogs of issues to be solved to develop or maintain software. Although they relate to many different concerns (e.g., bug fixing, new feature development,…

Software Engineering · Computer Science 2021-03-24 Quentin Perez , Pierre-Antoine Jean , Christelle Urtado , Sylvain Vauttier

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

Many important hyperproperties, such as refinement and generalized non-interference, fall into the class of $\forall\exists$ hyperproperties and require, for each execution trace of a system, the existence of another trace relating to the…

Programming Languages · Computer Science 2025-01-15 Arthur Correnson , Tobias Niessen , Bernd Finkbeiner , Georg Weissenbacher

Fault injection attacks deliberately inject faults into a device via physical channels to disturb its regular execution. Adversaries can effectively deduce secrets by analyzing both the normal and faulty outputs, posing serious threats to…

Cryptography and Security · Computer Science 2026-04-07 Xi Yang , Taolue Chen , Yuqi Chen , Fu Song , Chundong Wang , Zhilin Wu

We introduce an algorithm for detection of bugs in sequential circuits. This algorithm is incomplete i.e. its failure to find a bug breaking a property P does not imply that P holds. The appeal of incomplete algorithms is that they scale…

Logic in Computer Science · Computer Science 2013-09-26 Eugene Goldberg , Mitesh Jain , Panagiotis Manolios

We propose a method combining machine learning with a static analysis tool (i.e. Infer) to automatically repair source code. Machine Learning methods perform well for producing idiomatic source code. However, their output is sometimes…

Software Engineering · Computer Science 2023-04-24 Ruba Mutasim , Gabriel Synnaeve , David Pichardie , Baptiste Rozière