\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -13754.17570154071472643408924341201782227 \lor \neg \left(x \le 11917.97074271185010729823261499404907227\right):\\
\;\;\;\;-\left(\left(\frac{1}{x \cdot x} + \frac{3}{x}\right) + \frac{3}{{x}^{3}}\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(x, \frac{1}{1 + x}, \frac{-\left(1 + x\right)}{x - 1}\right) + \left(\frac{1 + x}{{\left(\sqrt[3]{x - 1}\right)}^{3}} + \left(-\frac{1 + x}{{\left(\sqrt[3]{x - 1}\right)}^{3}}\right)\right)\\
\end{array}double f(double x) {
double r96698 = x;
double r96699 = 1.0;
double r96700 = r96698 + r96699;
double r96701 = r96698 / r96700;
double r96702 = r96698 - r96699;
double r96703 = r96700 / r96702;
double r96704 = r96701 - r96703;
return r96704;
}
double f(double x) {
double r96705 = x;
double r96706 = -13754.175701540715;
bool r96707 = r96705 <= r96706;
double r96708 = 11917.97074271185;
bool r96709 = r96705 <= r96708;
double r96710 = !r96709;
bool r96711 = r96707 || r96710;
double r96712 = 1.0;
double r96713 = r96705 * r96705;
double r96714 = r96712 / r96713;
double r96715 = 3.0;
double r96716 = r96715 / r96705;
double r96717 = r96714 + r96716;
double r96718 = 3.0;
double r96719 = pow(r96705, r96718);
double r96720 = r96715 / r96719;
double r96721 = r96717 + r96720;
double r96722 = -r96721;
double r96723 = 1.0;
double r96724 = r96712 + r96705;
double r96725 = r96723 / r96724;
double r96726 = -r96724;
double r96727 = r96705 - r96712;
double r96728 = r96726 / r96727;
double r96729 = fma(r96705, r96725, r96728);
double r96730 = cbrt(r96727);
double r96731 = pow(r96730, r96718);
double r96732 = r96724 / r96731;
double r96733 = -r96732;
double r96734 = r96732 + r96733;
double r96735 = r96729 + r96734;
double r96736 = r96711 ? r96722 : r96735;
return r96736;
}



Bits error versus x
if x < -13754.175701540715 or 11917.97074271185 < x Initial program 59.3
Taylor expanded around inf 0.3
Simplified0.0
if -13754.175701540715 < x < 11917.97074271185Initial program 0.1
rmApplied add-cube-cbrt0.2
Applied add-cube-cbrt0.2
Applied times-frac0.2
Applied add-sqr-sqrt31.9
Applied prod-diff31.9
Simplified0.2
Simplified0.2
rmApplied div-inv0.2
Applied fma-neg0.2
Simplified0.1
Final simplification0.1
herbie shell --seed 2019325 +o rules:numerics
(FPCore (x)
:name "Asymptote C"
:precision binary64
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))