\frac{x + y \cdot \left(z - x\right)}{z}\left(-\frac{x}{z}\right) \cdot y + \left(\frac{x}{z} + y\right)double f(double x, double y, double z) {
double r727709 = x;
double r727710 = y;
double r727711 = z;
double r727712 = r727711 - r727709;
double r727713 = r727710 * r727712;
double r727714 = r727709 + r727713;
double r727715 = r727714 / r727711;
return r727715;
}
double f(double x, double y, double z) {
double r727716 = x;
double r727717 = z;
double r727718 = r727716 / r727717;
double r727719 = -r727718;
double r727720 = y;
double r727721 = r727719 * r727720;
double r727722 = r727718 + r727720;
double r727723 = r727721 + r727722;
return r727723;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 10.7 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 10.7
Taylor expanded around 0 3.4
Simplified3.4
rmApplied sub-neg3.4
Simplified0.0
Final simplification0.0
herbie shell --seed 2019196 +o rules:numerics
(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))