\frac{4 \cdot \left(\left(x - y\right) - z \cdot 0.5\right)}{z}4 \cdot \left(\frac{x - y}{z} - 0.5\right)double f(double x, double y, double z) {
double r496516 = 4.0;
double r496517 = x;
double r496518 = y;
double r496519 = r496517 - r496518;
double r496520 = z;
double r496521 = 0.5;
double r496522 = r496520 * r496521;
double r496523 = r496519 - r496522;
double r496524 = r496516 * r496523;
double r496525 = r496524 / r496520;
return r496525;
}
double f(double x, double y, double z) {
double r496526 = 4.0;
double r496527 = x;
double r496528 = y;
double r496529 = r496527 - r496528;
double r496530 = z;
double r496531 = r496529 / r496530;
double r496532 = 0.5;
double r496533 = r496531 - r496532;
double r496534 = r496526 * r496533;
return r496534;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 0.1 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.1
Simplified0.0
Final simplification0.0
herbie shell --seed 2019306 +o rules:numerics
(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))