\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -13931.998939596693:\\
\;\;\;\;\left(\frac{\frac{-1}{x}}{x} - \frac{\frac{3}{x \cdot x}}{x}\right) - \frac{3}{x}\\
\mathbf{elif}\;x \le 12121.984188186829:\\
\;\;\;\;\frac{x}{1 + x} - \frac{1 + {x}^{3}}{\left(1 + \left(x \cdot x - x\right)\right) \cdot \left(-1 + x\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\frac{-1}{x}}{x} - \frac{\frac{3}{x \cdot x}}{x}\right) - \frac{3}{x}\\
\end{array}double f(double x) {
double r4380514 = x;
double r4380515 = 1.0;
double r4380516 = r4380514 + r4380515;
double r4380517 = r4380514 / r4380516;
double r4380518 = r4380514 - r4380515;
double r4380519 = r4380516 / r4380518;
double r4380520 = r4380517 - r4380519;
return r4380520;
}
double f(double x) {
double r4380521 = x;
double r4380522 = -13931.998939596693;
bool r4380523 = r4380521 <= r4380522;
double r4380524 = -1.0;
double r4380525 = r4380524 / r4380521;
double r4380526 = r4380525 / r4380521;
double r4380527 = 3.0;
double r4380528 = r4380521 * r4380521;
double r4380529 = r4380527 / r4380528;
double r4380530 = r4380529 / r4380521;
double r4380531 = r4380526 - r4380530;
double r4380532 = r4380527 / r4380521;
double r4380533 = r4380531 - r4380532;
double r4380534 = 12121.984188186829;
bool r4380535 = r4380521 <= r4380534;
double r4380536 = 1.0;
double r4380537 = r4380536 + r4380521;
double r4380538 = r4380521 / r4380537;
double r4380539 = pow(r4380521, r4380527);
double r4380540 = r4380536 + r4380539;
double r4380541 = r4380528 - r4380521;
double r4380542 = r4380536 + r4380541;
double r4380543 = r4380524 + r4380521;
double r4380544 = r4380542 * r4380543;
double r4380545 = r4380540 / r4380544;
double r4380546 = r4380538 - r4380545;
double r4380547 = r4380535 ? r4380546 : r4380533;
double r4380548 = r4380523 ? r4380533 : r4380547;
return r4380548;
}



Bits error versus x
Results
if x < -13931.998939596693 or 12121.984188186829 < x Initial program 59.4
Taylor expanded around -inf 0.3
Simplified0.0
Taylor expanded around inf 0.3
Simplified0.0
if -13931.998939596693 < x < 12121.984188186829Initial program 0.1
rmApplied flip3-+0.1
Applied associate-/l/0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019142
(FPCore (x)
:name "Asymptote C"
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))