\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - \left(\frac{1}{\varepsilon} - 1\right) \cdot e^{-\left(1 + \varepsilon\right) \cdot x}}{2}\frac{\frac{1}{2}}{e^{x - \varepsilon \cdot x}} + \left(\left(\frac{\frac{\frac{1}{2}}{e^{x - \varepsilon \cdot x}}}{\varepsilon} - \frac{\frac{\frac{1}{2}}{e^{x + \varepsilon \cdot x}}}{\varepsilon}\right) + \frac{\frac{1}{2}}{e^{x + \varepsilon \cdot x}}\right)double f(double x, double eps) {
double r1563485 = 1.0;
double r1563486 = eps;
double r1563487 = r1563485 / r1563486;
double r1563488 = r1563485 + r1563487;
double r1563489 = r1563485 - r1563486;
double r1563490 = x;
double r1563491 = r1563489 * r1563490;
double r1563492 = -r1563491;
double r1563493 = exp(r1563492);
double r1563494 = r1563488 * r1563493;
double r1563495 = r1563487 - r1563485;
double r1563496 = r1563485 + r1563486;
double r1563497 = r1563496 * r1563490;
double r1563498 = -r1563497;
double r1563499 = exp(r1563498);
double r1563500 = r1563495 * r1563499;
double r1563501 = r1563494 - r1563500;
double r1563502 = 2.0;
double r1563503 = r1563501 / r1563502;
return r1563503;
}
double f(double x, double eps) {
double r1563504 = 0.5;
double r1563505 = x;
double r1563506 = eps;
double r1563507 = r1563506 * r1563505;
double r1563508 = r1563505 - r1563507;
double r1563509 = exp(r1563508);
double r1563510 = r1563504 / r1563509;
double r1563511 = r1563510 / r1563506;
double r1563512 = r1563505 + r1563507;
double r1563513 = exp(r1563512);
double r1563514 = r1563504 / r1563513;
double r1563515 = r1563514 / r1563506;
double r1563516 = r1563511 - r1563515;
double r1563517 = r1563516 + r1563514;
double r1563518 = r1563510 + r1563517;
return r1563518;
}



Bits error versus x



Bits error versus eps
Results
Initial program 28.9
Simplified28.9
rmApplied associate--l+24.3
rmApplied associate--r-1.1
Final simplification1.1
herbie shell --seed 2019129
(FPCore (x eps)
:name "NMSE Section 6.1 mentioned, A"
(/ (- (* (+ 1 (/ 1 eps)) (exp (- (* (- 1 eps) x)))) (* (- (/ 1 eps) 1) (exp (- (* (+ 1 eps) x))))) 2))