1.699999999999999938830795788659981743333 \cdot 10^{308} \cdot t - 1.699999999999999938830795788659981743333 \cdot 10^{308}\mathsf{fma}\left(1.699999999999999938830795788659981743333 \cdot 10^{308}, t, -1.699999999999999938830795788659981743333 \cdot 10^{308}\right)double f(double t) {
double r44436 = 1.7e+308;
double r44437 = t;
double r44438 = r44436 * r44437;
double r44439 = r44438 - r44436;
return r44439;
}
double f(double t) {
double r44440 = 1.7e+308;
double r44441 = t;
double r44442 = -r44440;
double r44443 = fma(r44440, r44441, r44442);
return r44443;
}




Bits error versus t
| Original | 64.0 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 64.0
rmApplied fma-neg0
Final simplification0
herbie shell --seed 2019304 +o rules:numerics
(FPCore (t)
:name "fma_test2"
:precision binary64
:pre (<= 1.8999999999999999 t 2.10000000000000009)
:herbie-target
(fma 1.6999999999999999e308 t (- 1.6999999999999999e308))
(- (* 1.6999999999999999e308 t) 1.6999999999999999e308))