1 + \frac{4 \cdot \left(\left(x + y \cdot 0.25\right) - z\right)}{y}1 + \mathsf{fma}\left(4, \frac{x}{y}, 1 - 4 \cdot \frac{z}{y}\right)double f(double x, double y, double z) {
double r239595 = 1.0;
double r239596 = 4.0;
double r239597 = x;
double r239598 = y;
double r239599 = 0.25;
double r239600 = r239598 * r239599;
double r239601 = r239597 + r239600;
double r239602 = z;
double r239603 = r239601 - r239602;
double r239604 = r239596 * r239603;
double r239605 = r239604 / r239598;
double r239606 = r239595 + r239605;
return r239606;
}
double f(double x, double y, double z) {
double r239607 = 1.0;
double r239608 = 4.0;
double r239609 = x;
double r239610 = y;
double r239611 = r239609 / r239610;
double r239612 = z;
double r239613 = r239612 / r239610;
double r239614 = r239608 * r239613;
double r239615 = r239607 - r239614;
double r239616 = fma(r239608, r239611, r239615);
double r239617 = r239607 + r239616;
return r239617;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.1
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019354 +o rules:numerics
(FPCore (x y z)
:name "Data.Array.Repa.Algorithms.ColorRamp:rampColorHotToCold from repa-algorithms-3.4.0.1, C"
:precision binary64
(+ 1 (/ (* 4 (- (+ x (* y 0.25)) z)) y)))