x + \frac{y}{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}x + \frac{1}{e^{z} \cdot \frac{1.128379167095512558560699289955664426088}{y} - x}double f(double x, double y, double z) {
double r19170616 = x;
double r19170617 = y;
double r19170618 = 1.1283791670955126;
double r19170619 = z;
double r19170620 = exp(r19170619);
double r19170621 = r19170618 * r19170620;
double r19170622 = r19170616 * r19170617;
double r19170623 = r19170621 - r19170622;
double r19170624 = r19170617 / r19170623;
double r19170625 = r19170616 + r19170624;
return r19170625;
}
double f(double x, double y, double z) {
double r19170626 = x;
double r19170627 = 1.0;
double r19170628 = z;
double r19170629 = exp(r19170628);
double r19170630 = 1.1283791670955126;
double r19170631 = y;
double r19170632 = r19170630 / r19170631;
double r19170633 = r19170629 * r19170632;
double r19170634 = r19170633 - r19170626;
double r19170635 = r19170627 / r19170634;
double r19170636 = r19170626 + r19170635;
return r19170636;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 2.6 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 2.6
rmApplied clear-num2.6
rmApplied clear-num2.6
Simplified0.0
Final simplification0.0
herbie shell --seed 2019169
(FPCore (x y z)
:name "Numeric.SpecFunctions:invErfc from math-functions-0.1.5.2, A"
:herbie-target
(+ x (/ 1.0 (- (* (/ 1.1283791670955126 y) (exp z)) x)))
(+ x (/ y (- (* 1.1283791670955126 (exp z)) (* x y)))))