Eliminating Unstable Tests in Floating-Point Programs

08/13/2018
by   Laura Titolo, et al.
0

Round-off errors arising from the difference between real numbers and their floating-point representation cause the control flow of conditional floating-point statements to deviate from the ideal flow of the real-number computation. This problem, which is called test instability, may result in a significant difference between the computation of a floating-point program and the expected output in real arithmetic. In this paper, a formally proven program transformation is proposed to detect and correct the effects of unstable tests. The output of this transformation is a floating-point program that is guaranteed to return either the result of the original floating-point program when it can be assured that both its real and its floating-point flows agree or a warning when these flows may diverge. The proposed approach is illustrated with the transformation of the core computation of a polygon containment algorithm developed at NASA that is used in a geofencing system for unmanned aircraft systems.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/07/2020

Automatic generation and verification of test-stable floating-point code

Test instability in a floating-point program occurs when the control flo...
research
12/04/2020

Revisiting "What Every Computer Scientist Should Know About Floating-point Arithmetic"

The differences between the sets in which ideal arithmetics takes place ...
research
02/25/2021

NSan: A Floating-Point Numerical Sanitizer

Sanitizers are a relatively recent trend in software engineering. They a...
research
05/29/2017

Finding Root Causes of Floating Point Error with Herbgrind

Floating point arithmetic plays a central role in science, engineering, ...
research
05/28/2019

Certified lattice reduction

Quadratic form reduction and lattice reduction are fundamental tools in ...
research
02/18/2019

ENBB Processor: Towards the ExaScale Numerical Brain Box [Position Paper]

ExaScale systems will be a key driver for simulations that are essential...
research
06/09/2018

A Preliminary Exploration of Floating Point Grammatical Evolution

Current GP frameworks are highly effective on a range of real and simula...

Please sign up or login with your details

Forgot password? Click here to reset