Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020
Tue 7 Jul 2020 16:05 - 16:17 at Goguryeo - A5-Testing and Debugging 2 Chair(s): Marcelo d'Amorim

Floating point is widely used in software to emulate arithmetic over reals. Unfortunately, floating point leads to rounding errors that propagate and accumulate during execution. Generating inputs to maximize the numerical error is critical when evaluating the accuracy of floating-point code. In this paper, we formulate the problem of generating high error-inducing floating-point inputs as a code coverage maximization problem solved using symbolic execution. Specifically, we define inaccuracy checks to detect large precision loss and cancellation. We inject these checks at strategic program locations to construct specialized branches that, when covered by a given input, are likely to lead to large errors in the result. We apply symbolic execution to generate inputs that exercise these specialized branches, and describe optimizations that make our approach practical. We implement a tool named FPGen and present an evaluation on 21 numerical programs including matrix computation and statistics libraries. We show that FPGen exposes errors for 20 of these programs and triggers errors that are, on average, over 2 orders of magnitude larger than the state of the art.

Tue 7 Jul
Times are displayed in time zone: (UTC) Coordinated Universal Time change

icse-2020-paper-presentations
16:05 - 17:05: Paper Presentations - A5-Testing and Debugging 2 at Goguryeo
Chair(s): Marcelo d'AmorimFederal University of Pernambuco
icse-2020-papers16:05 - 16:17
Talk
Hui GuoUniversity of California, Davis, Cindy Rubio-GonzálezUniversity of California, Davis
icse-2020-papers16:17 - 16:29
Talk
Wing LamUniversity of Illinois at Urbana-Champaign, Kıvanç MuşluMicrosoft, Hitesh SajnaniMicrosoft , Suresh ThummalapentaMicrosoft
icse-2020-New-Ideas-and-Emerging-Results16:29 - 16:35
Talk
Andriy MiranskyyRyerson University, Lei ZhangRyerson University, Javad DoliskaniRyerson University, Toronto, Canada
Pre-print
Demonstrations16:35 - 16:38
Talk
Bruno LimaFaculty of Engineering, University of Porto and INESC TEC, João Pascoal FariaFaculty of Engineering, University of Porto and INESC TEC
icse-2020-papers16:38 - 16:50
Talk
Valentin ManèsCSRC, KAIST, Soomin KimKAIST, Sang Kil ChaKAIST
Demonstrations16:50 - 16:53
Talk
Richard RutledgeGeorgia Institute of Technology, Alessandro OrsoGeorgia Tech
icse-2020-New-Ideas-and-Emerging-Results16:53 - 16:59
Talk
Carl HildebrandtUniversity of Virginia, Sebastian ElbaumUniversity of Virginia, USA, Nicola BezzoUniversity of Virginia