\frac{x + y \cdot \left(z - x\right)}{z}y + \frac{x}{z} \cdot \left(1 - y\right)double f(double x, double y, double z) {
double r757975 = x;
double r757976 = y;
double r757977 = z;
double r757978 = r757977 - r757975;
double r757979 = r757976 * r757978;
double r757980 = r757975 + r757979;
double r757981 = r757980 / r757977;
return r757981;
}
double f(double x, double y, double z) {
double r757982 = y;
double r757983 = x;
double r757984 = z;
double r757985 = r757983 / r757984;
double r757986 = 1.0;
double r757987 = r757986 - r757982;
double r757988 = r757985 * r757987;
double r757989 = r757982 + r757988;
return r757989;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 10.6 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 10.6
Taylor expanded around 0 3.5
Taylor expanded around 0 3.5
Simplified0.0
Taylor expanded around 0 3.5
Simplified0.0
Final simplification0.0
herbie shell --seed 2020060
(FPCore (x y z)
:name "Diagrams.Backend.Rasterific:rasterificRadialGradient from diagrams-rasterific-1.3.1.3"
:precision binary64
:herbie-target
(- (+ y (/ x z)) (/ y (/ z x)))
(/ (+ x (* y (- z x))) z))