\frac{4 \cdot \left(\left(x - y\right) - z \cdot 0.5\right)}{z}\frac{4}{z} \cdot \left(x - y\right) - 2double f(double x, double y, double z) {
double r471369 = 4.0;
double r471370 = x;
double r471371 = y;
double r471372 = r471370 - r471371;
double r471373 = z;
double r471374 = 0.5;
double r471375 = r471373 * r471374;
double r471376 = r471372 - r471375;
double r471377 = r471369 * r471376;
double r471378 = r471377 / r471373;
return r471378;
}
double f(double x, double y, double z) {
double r471379 = 4.0;
double r471380 = z;
double r471381 = r471379 / r471380;
double r471382 = x;
double r471383 = y;
double r471384 = r471382 - r471383;
double r471385 = r471381 * r471384;
double r471386 = 2.0;
double r471387 = r471385 - r471386;
return r471387;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 0.1 |
|---|---|
| Target | 0.0 |
| Herbie | 0.2 |
Initial program 0.1
Taylor expanded around 0 0.0
Simplified0.0
rmApplied div-sub0.0
Final simplification0.2
herbie shell --seed 2019298
(FPCore (x y z)
:name "Data.Array.Repa.Algorithms.ColorRamp:rampColorHotToCold from repa-algorithms-3.4.0.1, B"
:precision binary64
:herbie-target
(- (* 4 (/ x z)) (+ 2 (* 4 (/ y z))))
(/ (* 4 (- (- x y) (* z 0.5))) z))