\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -12303.308137983877:\\
\;\;\;\;\left(\frac{-3}{x} + \frac{-1}{x \cdot x}\right) + \frac{\frac{-3}{x}}{x \cdot x}\\
\mathbf{elif}\;x \le 13311.743891071605:\\
\;\;\;\;\frac{x}{x \cdot x - 1} \cdot \left(x - 1\right) - \frac{x + 1}{x - 1}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{-3}{x} + \frac{-1}{x \cdot x}\right) + \frac{\frac{-3}{x}}{x \cdot x}\\
\end{array}double f(double x) {
double r2080261 = x;
double r2080262 = 1.0;
double r2080263 = r2080261 + r2080262;
double r2080264 = r2080261 / r2080263;
double r2080265 = r2080261 - r2080262;
double r2080266 = r2080263 / r2080265;
double r2080267 = r2080264 - r2080266;
return r2080267;
}
double f(double x) {
double r2080268 = x;
double r2080269 = -12303.308137983877;
bool r2080270 = r2080268 <= r2080269;
double r2080271 = -3.0;
double r2080272 = r2080271 / r2080268;
double r2080273 = -1.0;
double r2080274 = r2080268 * r2080268;
double r2080275 = r2080273 / r2080274;
double r2080276 = r2080272 + r2080275;
double r2080277 = r2080272 / r2080274;
double r2080278 = r2080276 + r2080277;
double r2080279 = 13311.743891071605;
bool r2080280 = r2080268 <= r2080279;
double r2080281 = 1.0;
double r2080282 = r2080274 - r2080281;
double r2080283 = r2080268 / r2080282;
double r2080284 = r2080268 - r2080281;
double r2080285 = r2080283 * r2080284;
double r2080286 = r2080268 + r2080281;
double r2080287 = r2080286 / r2080284;
double r2080288 = r2080285 - r2080287;
double r2080289 = r2080280 ? r2080288 : r2080278;
double r2080290 = r2080270 ? r2080278 : r2080289;
return r2080290;
}



Bits error versus x
Results
if x < -12303.308137983877 or 13311.743891071605 < x Initial program 59.3
Taylor expanded around inf 0.3
Simplified0.0
if -12303.308137983877 < x < 13311.743891071605Initial program 0.1
rmApplied flip-+0.1
Applied associate-/r/0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019155
(FPCore (x)
:name "Asymptote C"
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))