ICE: Reducing Search Space for Error-Inducing Input Detection

IF 6 1区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING
IEEE Transactions on Software Engineering Pub Date : 2026-09-01 Epub Date: 2026-06-15 DOI:10.1109/TSE.2026.3703362
Youshuai Tan;Zhanwei Zhang;Zishuo Ding;Jinfu Chen;Weiyi Shang
{"title":"ICE: Reducing Search Space for Error-Inducing Input Detection","authors":"Youshuai Tan;Zhanwei Zhang;Zishuo Ding;Jinfu Chen;Weiyi Shang","doi":"10.1109/TSE.2026.3703362","DOIUrl":null,"url":null,"abstract":"Floating-point programs play a crucial role in scientific and engineering applications as well as daily life. Due to the inherent inaccuracies of floating-point arithmetic, these programs are susceptible to errors. While only a small subset of possible inputs may lead to significant inaccuracies in the program’s final results, such errors can have serious consequences. Prior approaches have been developed to identify error-inducing inputs using search algorithms. However, the task is challenging due to the sparsity of the search space. Furthermore, these tools frequently depend on high-precision programs as oracles for computing floating-point errors. This reliance introduces additional challenges, including prolonged execution times and instability. To detect these inputs more effectively and efficiently, we propose a simple yet effective method called ICE, designed to generate reduced and erroneous domains for these approaches. ICE first calculates the errors of the target program by taking all half-precision floating-point numbers as inputs. Instead of calculating errors based on high-precision programs, ICE injects small perturbations into each atomic operation of the program and measures the difference between the perturbed and original results to estimate floating-point errors. Subsequently, ICE selects the numbers with errors in the top <inline-formula><tex-math>$\\boldsymbol{n\\%}$</tex-math></inline-formula> as the endpoints of the important ranges. These individual ranges, which form domains, can then be used to improve existing tools by reducing the search space. To evaluate ICE, we apply ICE with three state-of-the-art error-inducing input detection approaches, i.e., ATOMU, HSED, and FPCC. Experimental results demonstrate that ICE could improve the performance of existing approaches by effectively reducing the search space, detecting more error-inducing inputs, and significantly shortening the search time.","PeriodicalId":13324,"journal":{"name":"IEEE Transactions on Software Engineering","volume":"52 9","pages":"2760-2773"},"PeriodicalIF":6.0000,"publicationDate":"2026-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Transactions on Software Engineering","FirstCategoryId":"94","ListUrlMain":"https://ieeexplore.ieee.org/document/11563589/","RegionNum":1,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"2026/6/15 0:00:00","PubModel":"Epub","JCR":"Q1","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

Abstract

Floating-point programs play a crucial role in scientific and engineering applications as well as daily life. Due to the inherent inaccuracies of floating-point arithmetic, these programs are susceptible to errors. While only a small subset of possible inputs may lead to significant inaccuracies in the program’s final results, such errors can have serious consequences. Prior approaches have been developed to identify error-inducing inputs using search algorithms. However, the task is challenging due to the sparsity of the search space. Furthermore, these tools frequently depend on high-precision programs as oracles for computing floating-point errors. This reliance introduces additional challenges, including prolonged execution times and instability. To detect these inputs more effectively and efficiently, we propose a simple yet effective method called ICE, designed to generate reduced and erroneous domains for these approaches. ICE first calculates the errors of the target program by taking all half-precision floating-point numbers as inputs. Instead of calculating errors based on high-precision programs, ICE injects small perturbations into each atomic operation of the program and measures the difference between the perturbed and original results to estimate floating-point errors. Subsequently, ICE selects the numbers with errors in the top $\boldsymbol{n\%}$ as the endpoints of the important ranges. These individual ranges, which form domains, can then be used to improve existing tools by reducing the search space. To evaluate ICE, we apply ICE with three state-of-the-art error-inducing input detection approaches, i.e., ATOMU, HSED, and FPCC. Experimental results demonstrate that ICE could improve the performance of existing approaches by effectively reducing the search space, detecting more error-inducing inputs, and significantly shortening the search time.
减少错误诱导输入检测的搜索空间
浮点程序在科学和工程应用以及日常生活中发挥着至关重要的作用。由于浮点运算固有的不准确性,这些程序容易出错。虽然只有一小部分可能的输入可能会导致程序的最终结果出现明显的不准确,但这种错误可能会产生严重的后果。先前的方法已经开发,以识别错误诱导输入使用搜索算法。然而,由于搜索空间的稀疏性,这项任务具有挑战性。此外,这些工具经常依赖高精度程序作为计算浮点错误的预言机。这种依赖带来了额外的挑战,包括延长的执行时间和不稳定性。为了更有效地检测这些输入,我们提出了一种简单而有效的方法,称为ICE,旨在为这些方法生成减少和错误的域。ICE首先通过将所有半精度浮点数作为输入来计算目标程序的误差。ICE不是基于高精度程序计算误差,而是在程序的每个原子操作中注入微小的扰动,并测量扰动与原始结果之间的差异,以估计浮点误差。随后,ICE选择顶部$\boldsymbol{n\%}$中有错误的数字作为重要范围的端点。这些单独的范围形成域,然后可以通过减少搜索空间来改进现有的工具。为了评估ICE,我们将ICE应用于三种最先进的误差诱导输入检测方法,即ATOMU, HSED和FPCC。实验结果表明,ICE可以有效地减少搜索空间,检测更多的错误输入,显著缩短搜索时间,从而提高现有方法的性能。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering 工程技术-工程:电子与电气
CiteScore
9.70
自引率
10.80%
发文量
724
审稿时长
6 months
期刊介绍: IEEE Transactions on Software Engineering seeks contributions comprising well-defined theoretical results and empirical studies with potential impacts on software construction, analysis, or management. The scope of this Transactions extends from fundamental mechanisms to the development of principles and their application in specific environments. Specific topic areas include: a) Development and maintenance methods and models: Techniques and principles for specifying, designing, and implementing software systems, encompassing notations and process models. b) Assessment methods: Software tests, validation, reliability models, test and diagnosis procedures, software redundancy, design for error control, and measurements and evaluation of process and product aspects. c) Software project management: Productivity factors, cost models, schedule and organizational issues, and standards. d) Tools and environments: Specific tools, integrated tool environments, associated architectures, databases, and parallel and distributed processing issues. e) System issues: Hardware-software trade-offs. f) State-of-the-art surveys: Syntheses and comprehensive reviews of the historical development within specific areas of interest.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书