\frac{4.0 \cdot \left(\left(x - y\right) - z \cdot 0.5\right)}{z}\frac{x - y}{z} \cdot 4.0 - 2.0double f(double x, double y, double z) {
double r44759495 = 4.0;
double r44759496 = x;
double r44759497 = y;
double r44759498 = r44759496 - r44759497;
double r44759499 = z;
double r44759500 = 0.5;
double r44759501 = r44759499 * r44759500;
double r44759502 = r44759498 - r44759501;
double r44759503 = r44759495 * r44759502;
double r44759504 = r44759503 / r44759499;
return r44759504;
}
double f(double x, double y, double z) {
double r44759505 = x;
double r44759506 = y;
double r44759507 = r44759505 - r44759506;
double r44759508 = z;
double r44759509 = r44759507 / r44759508;
double r44759510 = 4.0;
double r44759511 = r44759509 * r44759510;
double r44759512 = 2.0;
double r44759513 = r44759511 - r44759512;
return r44759513;
}




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
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019165
(FPCore (x y z)
:name "Data.Array.Repa.Algorithms.ColorRamp:rampColorHotToCold from repa-algorithms-3.4.0.1, B"
:herbie-target
(- (* 4.0 (/ x z)) (+ 2.0 (* 4.0 (/ y z))))
(/ (* 4.0 (- (- x y) (* z 0.5))) z))