\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -12879.754469549705 \lor \neg \left(x \le 12427.129501950301\right):\\
\;\;\;\;\mathsf{fma}\left(-1, \frac{\frac{1}{x}}{x}, \frac{-3}{x}\right) - 3 \cdot \frac{1}{{x}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\frac{x \cdot \left(x - 1\right) - \left(x + 1\right) \cdot \left(x + 1\right)}{x \cdot x - 1 \cdot 1}\\
\end{array}double code(double x) {
return ((x / (x + 1.0)) - ((x + 1.0) / (x - 1.0)));
}
double code(double x) {
double temp;
if (((x <= -12879.754469549705) || !(x <= 12427.129501950301))) {
temp = (fma(-1.0, ((1.0 / x) / x), (-3.0 / x)) - (3.0 * (1.0 / pow(x, 3.0))));
} else {
temp = (((x * (x - 1.0)) - ((x + 1.0) * (x + 1.0))) / ((x * x) - (1.0 * 1.0)));
}
return temp;
}



Bits error versus x
Results
if x < -12879.754469549705 or 12427.129501950301 < x Initial program 59.2
Taylor expanded around inf 0.3
Simplified0.3
rmApplied fma-udef0.3
Applied associate--r+0.3
Simplified0.0
if -12879.754469549705 < x < 12427.129501950301Initial program 0.1
rmApplied frac-sub0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020056 +o rules:numerics
(FPCore (x)
:name "Asymptote C"
:precision binary64
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))