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 r49198 = 1.7e+308;
double r49199 = t;
double r49200 = r49198 * r49199;
double r49201 = r49200 - r49198;
return r49201;
}
double f(double t) {
double r49202 = 1.7e+308;
double r49203 = t;
double r49204 = -r49202;
double r49205 = fma(r49202, r49203, r49204);
return r49205;
}




Bits error versus t
| Original | 64.0 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 64.0
rmApplied fma-neg0
Final simplification0
herbie shell --seed 2019326 +o rules:numerics
(FPCore (t)
:name "fma_test2"
:precision binary64
:pre (<= 1.9 t 2.1)
:herbie-target
(fma 1.7e+308 t (- 1.7e+308))
(- (* 1.7e+308 t) 1.7e+308))