\frac{1}{x + 1} - \frac{1}{x}\begin{array}{l}
\mathbf{if}\;x \le -8014.095142187471537909004837274551391602:\\
\;\;\;\;\frac{\frac{1}{x \cdot x}}{x} - \mathsf{fma}\left(\frac{1}{x \cdot x}, \frac{1}{x \cdot x}, \frac{\frac{1}{x}}{x}\right)\\
\mathbf{elif}\;x \le 8524.530700947043442283757030963897705078:\\
\;\;\;\;\left(\sqrt[3]{\frac{1}{1 + x}} \cdot \sqrt[3]{\frac{1}{1 + x}}\right) \cdot \sqrt[3]{\frac{1}{1 + x}} - \frac{1}{x}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{x \cdot x}}{x} - \mathsf{fma}\left(\frac{1}{x \cdot x}, \frac{1}{x \cdot x}, \frac{\frac{1}{x}}{x}\right)\\
\end{array}double f(double x) {
double r2159508 = 1.0;
double r2159509 = x;
double r2159510 = r2159509 + r2159508;
double r2159511 = r2159508 / r2159510;
double r2159512 = r2159508 / r2159509;
double r2159513 = r2159511 - r2159512;
return r2159513;
}
double f(double x) {
double r2159514 = x;
double r2159515 = -8014.0951421874715;
bool r2159516 = r2159514 <= r2159515;
double r2159517 = 1.0;
double r2159518 = r2159514 * r2159514;
double r2159519 = r2159517 / r2159518;
double r2159520 = r2159519 / r2159514;
double r2159521 = 1.0;
double r2159522 = r2159521 / r2159518;
double r2159523 = r2159517 / r2159514;
double r2159524 = r2159523 / r2159514;
double r2159525 = fma(r2159519, r2159522, r2159524);
double r2159526 = r2159520 - r2159525;
double r2159527 = 8524.530700947043;
bool r2159528 = r2159514 <= r2159527;
double r2159529 = r2159517 + r2159514;
double r2159530 = r2159517 / r2159529;
double r2159531 = cbrt(r2159530);
double r2159532 = r2159531 * r2159531;
double r2159533 = r2159532 * r2159531;
double r2159534 = r2159533 - r2159523;
double r2159535 = r2159528 ? r2159534 : r2159526;
double r2159536 = r2159516 ? r2159526 : r2159535;
return r2159536;
}



Bits error versus x
if x < -8014.0951421874715 or 8524.530700947043 < x Initial program 29.7
Taylor expanded around inf 0.7
Simplified0.7
rmApplied associate-/r*0.2
if -8014.0951421874715 < x < 8524.530700947043Initial program 0.1
rmApplied add-cube-cbrt0.1
Final simplification0.1
herbie shell --seed 2019179 +o rules:numerics
(FPCore (x)
:name "2frac (problem 3.3.1)"
(- (/ 1.0 (+ x 1.0)) (/ 1.0 x)))