Logical bytecode reduction
Christian Gram Kalhauge, Jens Palsberg
摘要
Reducing a failure-inducing input to a smaller one is challenging for input with internal dependencies because most sub-inputs are invalid. Kalhauge and Palsberg made progress on this problem by mapping the task to a reduction problem for dependency graphs that avoids invalid inputs entirely. Their tool J-Reduce efficiently reduces Java bytecode to 24 percent of its original size, which made it the most effective tool until now. However, the output from their tool is often too large to be helpful in a bug report. In this paper, we show that more fine-grained modeling of dependencies leads to much more reduction. Specifically, we use propositional logic for specifying dependencies and we show how this works for Java bytecode. Once we have a propositional formula that specifies all valid sub-inputs, we run an algorithm that finds a small, valid, failure-inducing input. Our algorithm interleaves runs of the buggy program and calls to a procedure that finds a minimal satisfying assignment. Our experiments show that we can reduce Java bytecode to 4.6 percent of its original size, which is 5.3 times better than the 24.3 percent achieved by J-Reduce. The much smaller output is more suitable for bug reports.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper7
- Pushing the Limit of 1-Minimality of Language-Agnostic Program ReductionZhenyang Xu, Yongqiang Tian, Mengxiao Zhang, Gaosen Zhao 等OOPSLA 2023 · 被引用 21 次
- LPR: Large Language Models-Aided Program ReductionMengxiao Zhang, Yongqiang Tian, Zhenyang Xu, Yiwen Dong 等ISSTA 2024 · 被引用 13 次
- PPR: Pairwise Program ReductionMengxiao Zhang, Zhenyang Xu, Yongqiang Tian, Yu Jiang 等FSE 2023 · 被引用 13 次
- WDD: Weighted Delta DebuggingXintong Zhou, Zhenyang Xu, Mengxiao Zhang, Yongqiang Tian 等ICSE 2025 · 被引用 5 次
- Toward a Better Understanding of Probabilistic Delta DebuggingMengxiao Zhang, Zhenyang Xu, Yongqiang Tian, Xinru Cheng 等ICSE 2025 · 被引用 4 次
它引用的顶会 Paper3
- Effective Program Debloating via Reinforcement LearningKihong Heo, Woosuk Lee, Pardis Pashakhanloo, Mayur NaikCCS 2018 · 被引用 175 次
- JShrink: in-depth investigation into debloating modern Java applicationsBobby R. Bruce, Tianyi Zhang, Jaspreet Arora, Guoqing Harry Xu 等FSE 2020 · 被引用 46 次
- BlankIt library debloating: getting what you want instead of cutting what you don'tChris Porter, Girish Mururu, Prithayan Barua, Santosh PandePLDI 2020 · 被引用 31 次
相关 Paper
- Understanding and Finding Java Decompiler BugsYifei Lu, Weidong Hou, Minxue Pan, Xuandong Li 等OOPSLA 2024 · 被引用 5 次
- Pisco: An Isolation Bug Case Reduction and Deduplication FrameworkSiyang Weng, Hongyu Yang, Zirui Hu, Rong Zhang 等VLDB 2026
- Prosecutor: Bayesian Counterfactual Fault LocalizationSara Baradaran, Yifei Huang, Wei Le, Mukund RaghothamanOOPSLA 2026
- Responsibility in Context: On Applicability of Slicing in Semantic Regression AnalysisSahar Badihi, Khaled Ahmed, Yi Li, Julia RubinICSE 2023 · 被引用 2 次
- Static Program Reduction via Type-Directed SlicingLoi Ngo Duc Nguyen, Tahiatul Islam, Theron Wang, Sam Lenz 等ISSTA 2025
