Extending Delta Debugging Minimization for Spectrum-Based Fault Localization

📅 2026-01-08
🏛️ arXiv.org
📈 Citations: 0
✨ Influential: 0
📄 PDF
🤖 AI Summary
This work proposes a novel integration of Delta Debugging (DDMIN) with spectrum-based fault localization (SBFL) to precisely identify faulty statements using only a single failing input. While traditional DDMIN effectively minimizes failing inputs, it does not pinpoint the exact fault location. The proposed approach leverages the diverse passing and failing test cases automatically generated during the DDMIN reduction process to compute and rank statement suspiciousness via SBFL techniques such as Jaccard. Evaluated on 136 programs from QuixBugs and Codeflaws, the method consistently ranks the actual faulty statement within the top three in most cases and requires inspecting fewer than 20% of executable lines, significantly improving both the efficiency and accuracy of fault localization.

Technology Category

Knowledge Representation and Reasoning: Diagnosis and Abductive ReasoningData Mining & Knowledge Management: Anomaly/Outlier DetectionConstraint Satisfaction and Optimization: Satisfiability Modulo Theories

Application Category

Web Mining and Content Analysis: Robustness and generalizability of Web mining methodsGraph Algorithms and Modeling for the Web: Representation, reconstruction, and subgraph or motif discovery in Web-related graphsSearch and Retrieval-Augmented AI: Web evaluation methodologies and metrics
📝 Abstract
This paper introduces DDMIN-LOC, a technique that combines Delta Debugging Minimization (DDMIN) with Spectrum-Based Fault Localization (SBFL). It can be applied to programs taking string inputs, even when only a single failure-inducing input is available. DDMIN is an algorithm that systematically explores the minimal failure-inducing input that exposes a bug, given an initial failing input. However, it does not provide information about the faulty statements responsible for the failure. DDMIN-LOC addresses this limitation by collecting the passing and failing inputs generated during the DDMIN process and computing suspiciousness scores for program statements and predicates using SBFL algorithms. These scores are then combined to rank statements according to their likelihood of being faulty. DDMIN-LOC requires only one failing input of the buggy program, although it can be applied only to programs that take string inputs. DDMIN-LOC was evaluated on 136 programs selected from the QuixBugs and Codeflaws benchmarks using the SBFL algorithms Tarantula, Ochiai, GenProg, Jaccard and DStar. Experimental results show that DDMIN-LOC performs best with Jaccard: in most subjects, fewer than 20% executable lines need to be examined to locate the faulty statements. Moreover, in most subjects, faulty statements are ranked within the top 3 positions in all the generated test suites derived from different failing inputs.
Problem

Research questions and friction points this paper is trying to address.

Delta Debugging
Fault Localization
Spectrum-Based
Minimization
Software Debugging
Innovation

Methods, ideas, or system contributions that make the work stand out.

Delta Debugging Minimization
Spectrum-Based Fault Localization
Fault Localization
Test Case Minimization
Program Debugging
C
Charaka Geethal Kapugama
Department of Computer Science, Faculty of Science, University of Ruhuna, Sri Lanka