\frac{x + y \cdot \left(z - x\right)}{z}\left(\left(-y\right) + 1\right) \cdot \frac{x}{z} + ydouble f(double x, double y, double z) {
double r1060431 = x;
double r1060432 = y;
double r1060433 = z;
double r1060434 = r1060433 - r1060431;
double r1060435 = r1060432 * r1060434;
double r1060436 = r1060431 + r1060435;
double r1060437 = r1060436 / r1060433;
return r1060437;
}
double f(double x, double y, double z) {
double r1060438 = y;
double r1060439 = -r1060438;
double r1060440 = 1.0;
double r1060441 = r1060439 + r1060440;
double r1060442 = x;
double r1060443 = z;
double r1060444 = r1060442 / r1060443;
double r1060445 = r1060441 * r1060444;
double r1060446 = r1060445 + r1060438;
return r1060446;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 10.2 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 10.2
Taylor expanded around 0 3.5
rmApplied *-un-lft-identity3.5
Applied *-un-lft-identity3.5
Applied distribute-lft-out--3.5
Simplified0.0
Final simplification0.0
herbie shell --seed 2020047
(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))