\frac{x + y \cdot \left(z - x\right)}{z}\left(\frac{x}{z} + y\right) - \frac{x}{z} \cdot ydouble f(double x, double y, double z) {
double r35670287 = x;
double r35670288 = y;
double r35670289 = z;
double r35670290 = r35670289 - r35670287;
double r35670291 = r35670288 * r35670290;
double r35670292 = r35670287 + r35670291;
double r35670293 = r35670292 / r35670289;
return r35670293;
}
double f(double x, double y, double z) {
double r35670294 = x;
double r35670295 = z;
double r35670296 = r35670294 / r35670295;
double r35670297 = y;
double r35670298 = r35670296 + r35670297;
double r35670299 = r35670296 * r35670297;
double r35670300 = r35670298 - r35670299;
return r35670300;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 10.5 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 10.5
Taylor expanded around 0 3.6
rmApplied add-cube-cbrt3.7
Applied times-frac1.0
Taylor expanded around 0 3.6
Simplified0.0
Final simplification0.0
herbie shell --seed 2019165
(FPCore (x y z)
:name "Diagrams.Backend.Rasterific:rasterificRadialGradient from diagrams-rasterific-1.3.1.3"
:herbie-target
(- (+ y (/ x z)) (/ y (/ z x)))
(/ (+ x (* y (- z x))) z))