English
Related papers

Related papers: A mathematical framework for automated bug localiz…

200 papers

Statistical fault localization is an easily deployed technique for quickly determining candidates for faulty code locations. If a human programmer has to search the fault beyond the top candidate locations, though, more traditional…

Software Engineering · Computer Science 2021-01-11 Ezekiel Soremekun , Lukas Kirschner , Marcel Böhme , Andreas Zeller

We consider gray-box fuzzing of a program instrumented such that information about evaluation of program expressions converting values of numerical types to Boolean, like x <= y, is recorded during each program's execution. Given that…

Programming Languages · Computer Science 2025-01-31 Martin Jonáš , Jan Strejček , Marek Trtík

We present a new flow framework for separation logic reasoning about programs that manipulate general graphs. The framework overcomes problems in earlier developments: it is based on standard fixed point theory, guarantees least flows,…

Programming Languages · Computer Science 2023-04-12 Roland Meyer , Thomas Wies , Sebastian Wolff

We describe a system that simplifies the process of debugging programs produced by computer-aided parallelization tools. The system uses relative debugging techniques to compare serial and parallel executions in order to show where the…

Software Engineering · Computer Science 2007-05-23 Robert Hood , Gabriele Jost

Locally-biased graph algorithms are algorithms that attempt to find local or small-scale structure in a large data graph. In some cases, this can be accomplished by adding some sort of locality constraint and calling a traditional graph…

Social and Information Networks · Computer Science 2016-12-06 Kimon Fountoulakis , David Gleich , Michael Mahoney

Bug localization is a tedious activity in the bug fixing process in which a software developer tries to locate bugs in the source code described in a bug report. Since this process is time-consuming and requires additional knowledge about…

Software Engineering · Computer Science 2021-10-12 Benjamin Ledel , Steffen Herbold

Symbolic execution is a program analysis technique executing programs with symbolic instead of concrete inputs. This principle allows for exploring many program paths at once. Despite its wide adoption -- in particular for program testing…

Programming Languages · Computer Science 2023-10-13 Arthur Correnson , Dominic Steinhoefel

Self-stabilization is a versatile technique to withstand any transient fault in a distributed system. Mobile robots (or agents) are one of the emerging trends in distributed computing as they mimic autonomous biologic entities. The…

Data Structures and Algorithms · Computer Science 2009-09-29 Lélia Blin , Maria Gradinariu Potop-Butucaru , Sébastien Tixeuil

Even as deep neural networks have become very effective for tasks in vision and perception, it remains difficult to explain and debug their behavior. In this paper, we present a programmatic and semantic approach to explaining,…

Computer Vision and Pattern Recognition · Computer Science 2020-06-18 Edward Kim , Divya Gopinath , Corina Pasareanu , Sanjit Seshia

Hypergraphs are a useful abstraction for modeling multiway relationships in data, and hypergraph clustering is the task of detecting groups of closely related nodes in such data. Graph clustering has been studied extensively, and there are…

Data Structures and Algorithms · Computer Science 2020-07-02 Nate Veldt , Austin R. Benson , Jon Kleinberg

In software development, encountering bugs is inevitable. However, opportunities to learn more about bug removal are limited. When students perform debugging tasks, they often use print statements because students do not know how to use a…

Software Engineering · Computer Science 2024-07-26 Aoi Kanaya , Takuma Migo , Hiroaki Hashiura

A number of automated techniques and tools were proposed in the research literature over the years which aim to support the spreadsheet developer in the process of testing and debugging a faulty spreadsheet. One underlying assumption of…

Software Engineering · Computer Science 2015-03-12 Dietmar Jannach , Thomas Schmitz

Automation engineering is the task of integrating, via software, various sensors, actuators, and controls for automating a real-world process. Today, automation engineering is supported by a suite of software tools including integrated…

Software Engineering · Computer Science 2020-07-08 Arquimedes Canedo , Palash Goyal , Di Huang , Amit Pandey , Gustavo Quiros

A long-standing open challenge for automated program repair is the overfitting problem, which is caused by having insufficient or incomplete specifications to validate whether a generated patch is correct or not. Most available repair…

Software Engineering · Computer Science 2021-11-11 Omar I. Al-Bataineh , Anastasiia Grishina , Leon Moonen

Bug localization refers to the identification of source code files which is in a programming language and also responsible for the unexpected behavior of software using the bug report, which is a natural language. As bug localization is…

Software Engineering · Computer Science 2024-06-26 Partha Chakraborty , Venkatraman Arumugam , Meiyappan Nagappan

Fault identification and testing has always been the most specific concern in the field of software development. To identify and testify the bug we should be aware of the source of the failure or any unwanted issue. In this paper, we are…

Software Engineering · Computer Science 2014-05-06 Vishal Anand , Ramani S

An embedding is a mapping from a set of nodes of a network into a real vector space. Embeddings can have various aims like capturing the underlying graph topology and structure, node-to-node relationship, or other relevant information about…

Machine Learning · Computer Science 2023-06-21 Ashkan Dehghan , Kinga Siuta , Agata Skorupka , Andrei Betlen , David Miller , Bogumil Kaminski , Pawel Pralat

In this paper, we propose a graph classification approach for automatically determining whether to use a monolithic or a decomposition-based solution method. In this approach, an optimization problem is represented as a graph that captures…

Optimization and Control · Mathematics 2023-10-12 Ilias Mitrai , Prodromos Daoutidis

Automated program repair is a crucial task for improving the efficiency of software developers. Recently, neural-based techniques have demonstrated significant promise in generating correct patches for buggy code snippets. However, most…

Software Engineering · Computer Science 2023-05-17 Yuwei Zhang , Ge Li , Zhi Jin , Ying Xing

The state-of-the-art tools for practical graph canonization are all based on the individualization-refinement paradigm, and their difference is primarily in the choice of heuristics they include and in the actual tool implementation. It is…

Data Structures and Algorithms · Computer Science 2017-11-23 Jakob L. Andersen , Daniel Merkle