\frac{4 \cdot \left(\left(x - y\right) - z \cdot 0.5\right)}{z}\left(\frac{x - y}{z} - 0.5\right) \cdot 4double f(double x, double y, double z) {
double r899555 = 4.0;
double r899556 = x;
double r899557 = y;
double r899558 = r899556 - r899557;
double r899559 = z;
double r899560 = 0.5;
double r899561 = r899559 * r899560;
double r899562 = r899558 - r899561;
double r899563 = r899555 * r899562;
double r899564 = r899563 / r899559;
return r899564;
}
double f(double x, double y, double z) {
double r899565 = x;
double r899566 = y;
double r899567 = r899565 - r899566;
double r899568 = z;
double r899569 = r899567 / r899568;
double r899570 = 0.5;
double r899571 = r899569 - r899570;
double r899572 = 4.0;
double r899573 = r899571 * r899572;
return r899573;
}




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 2020046 +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))