\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 r862151 = 4.0;
double r862152 = x;
double r862153 = y;
double r862154 = r862152 - r862153;
double r862155 = z;
double r862156 = 0.5;
double r862157 = r862155 * r862156;
double r862158 = r862154 - r862157;
double r862159 = r862151 * r862158;
double r862160 = r862159 / r862155;
return r862160;
}
double f(double x, double y, double z) {
double r862161 = 4.0;
double r862162 = x;
double r862163 = y;
double r862164 = r862162 - r862163;
double r862165 = z;
double r862166 = r862164 / r862165;
double r862167 = 0.5;
double r862168 = r862166 - r862167;
double r862169 = r862161 * r862168;
return r862169;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 0.2 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.2
Simplified0.0
Final simplification0.0
herbie shell --seed 2020042
(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))