Probabilistic Delta debugging
Guancheng Wang, Ruobing Shen, Junjie Chen, Yingfei Xiong, Lu Zhang
Abstract
The delta debugging problem concerns how to reduce an object while preserving a certain property, and widely exists in many applications, such as compiler development, regression fault localization, and software debloating. Given the importance of delta debugging, multiple algorithms have been proposed to solve the delta debugging problem efficiently and effectively. However, the efficiency and effectiveness of the state-of-the-art algorithms are still not satisfactory. For example, the state-of-the-art delta debugging tool, CHISEL, may take up to 3 hours to reduce a single program with 14,092 lines of code, while the reduced program may be up to 2 times unnecessarily large.
In this paper, we propose a probabilistic delta debugging algorithm (named ProbDD) to improve the efficiency and the effectiveness of delta debugging. Our key insight is, the ddmin algorithm, the basic algorithm upon which many existing approaches are built, follows a predefined sequence of attempts to remove elements from a sequence, and fails to utilize the information from existing test results. To address this problem, ProbDD builds a probabilistic model to estimate the probabilities of the elements to be kept in the produced result, selects a set of elements to maximize the gain of the next test based on the model, and improves the model based on the test results.
We prove the correctness of ProbDD, and analyze the minimality of its result and the asymptotic number of tests under the worst case. The asymptotic number of tests in the worst case of ProbDD is 𝑂 (𝑛),
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext da92765d-bccc-4965-bba6-a4dd7bacd387Cited by top-tier papers18
- Enriching Compiler Testing with Real Program from Bug ReportHao ZhongASE 2022 · 24 citations
- Pushing the Limit of 1-Minimality of Language-Agnostic Program ReductionZhenyang Xu, Yongqiang Tian, Mengxiao Zhang, Gaosen Zhao et al.OOPSLA 2023 · 21 citations
- LPR: Large Language Models-Aided Program ReductionMengxiao Zhang, Yongqiang Tian, Zhenyang Xu, Yiwen Dong et al.ISSTA 2024 · 13 citations
- PPR: Pairwise Program ReductionMengxiao Zhang, Zhenyang Xu, Yongqiang Tian, Yu Jiang et al.FSE 2023 · 13 citations
- RegMiner: towards constructing a large regression dataset from code evolution historyXuezhi Song, Yun Lin, Siang Hwee Ng, Yijian Wu et al.ISSTA 2022 · 11 citations
Builds on3
- Effective Program Debloating via Reinforcement LearningKihong Heo, Woosuk Lee, Pardis Pashakhanloo, Mayur NaikCCS 2018 · 175 citations
- Automated conformance testing for JavaScript engines via deep compiler fuzzingGuixin Ye, Zhanyong Tang, Shin Hwei Tan, Songfang Huang et al.PLDI 2021 · 75 citations
- Test-case reduction and deduplication almost for free with transformation-based compiler testingAlastair F. Donaldson, Paul Thomson, Vasyl Teliman, Stefano Milizia et al.PLDI 2021 · 39 citations
Related papers
- WDD: Weighted Delta DebuggingXintong Zhou, Zhenyang Xu, Mengxiao Zhang, Yongqiang Tian et al.ICSE 2025 · 5 citations
- Toward a Better Understanding of Probabilistic Delta DebuggingMengxiao Zhang, Zhenyang Xu, Yongqiang Tian, Xinru Cheng et al.ICSE 2025 · 4 citations
- Structure-Aware Delta Debugging with Geometric-Information WeightsYonggang Tao, Jingling XueFSE 2026
- C2D2: Extracting Critical Changes for Real-World Bugs with Dependency-Sensitive Delta DebuggingXuezhi Song, Yijian Wu, Shuning Liu, Bihuan Chen et al.ISSTA 2024 · 1 citation
- Applying and Extending the Delta Debugging Algorithm for Elevator Dispatching Algorithms (Experience Paper)Pablo Valle, Aitor Arrieta, Maite ArratibelISSTA 2023 · 3 citations
