\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 r531108 = 4.0;
double r531109 = x;
double r531110 = y;
double r531111 = r531109 - r531110;
double r531112 = z;
double r531113 = 0.5;
double r531114 = r531112 * r531113;
double r531115 = r531111 - r531114;
double r531116 = r531108 * r531115;
double r531117 = r531116 / r531112;
return r531117;
}
double f(double x, double y, double z) {
double r531118 = 4.0;
double r531119 = x;
double r531120 = y;
double r531121 = r531119 - r531120;
double r531122 = z;
double r531123 = r531121 / r531122;
double r531124 = 0.5;
double r531125 = r531123 - r531124;
double r531126 = r531118 * r531125;
return r531126;
}




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 2019326
(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))