\frac{x + y \cdot \left(z - x\right)}{z}y + \left(\left(-y\right) + 1\right) \cdot \frac{x}{z}double f(double x, double y, double z) {
double r1271784 = x;
double r1271785 = y;
double r1271786 = z;
double r1271787 = r1271786 - r1271784;
double r1271788 = r1271785 * r1271787;
double r1271789 = r1271784 + r1271788;
double r1271790 = r1271789 / r1271786;
return r1271790;
}
double f(double x, double y, double z) {
double r1271791 = y;
double r1271792 = -r1271791;
double r1271793 = 1.0;
double r1271794 = r1271792 + r1271793;
double r1271795 = x;
double r1271796 = z;
double r1271797 = r1271795 / r1271796;
double r1271798 = r1271794 * r1271797;
double r1271799 = r1271791 + r1271798;
return r1271799;
}




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.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 2019199
(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))