\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -14718.56289520824611827265471220016479492 \lor \neg \left(x \le 7392.742446615246080909855663776397705078\right):\\
\;\;\;\;\left(-\frac{1}{x \cdot x}\right) - \left(\frac{3}{x} + \frac{3}{{x}^{3}}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{x}{x + 1} - \frac{1}{\sqrt[3]{x - 1} \cdot \sqrt[3]{x - 1}} \cdot \frac{1 + x}{\sqrt[3]{x - 1}}\\
\end{array}double f(double x) {
double r88145 = x;
double r88146 = 1.0;
double r88147 = r88145 + r88146;
double r88148 = r88145 / r88147;
double r88149 = r88145 - r88146;
double r88150 = r88147 / r88149;
double r88151 = r88148 - r88150;
return r88151;
}
double f(double x) {
double r88152 = x;
double r88153 = -14718.562895208246;
bool r88154 = r88152 <= r88153;
double r88155 = 7392.742446615246;
bool r88156 = r88152 <= r88155;
double r88157 = !r88156;
bool r88158 = r88154 || r88157;
double r88159 = 1.0;
double r88160 = r88152 * r88152;
double r88161 = r88159 / r88160;
double r88162 = -r88161;
double r88163 = 3.0;
double r88164 = r88163 / r88152;
double r88165 = 3.0;
double r88166 = pow(r88152, r88165);
double r88167 = r88163 / r88166;
double r88168 = r88164 + r88167;
double r88169 = r88162 - r88168;
double r88170 = r88152 + r88159;
double r88171 = r88152 / r88170;
double r88172 = 1.0;
double r88173 = r88152 - r88159;
double r88174 = cbrt(r88173);
double r88175 = r88174 * r88174;
double r88176 = r88172 / r88175;
double r88177 = r88159 + r88152;
double r88178 = r88177 / r88174;
double r88179 = r88176 * r88178;
double r88180 = r88171 - r88179;
double r88181 = r88158 ? r88169 : r88180;
return r88181;
}



Bits error versus x
Results
if x < -14718.562895208246 or 7392.742446615246 < x Initial program 59.3
Simplified59.3
rmApplied add-cube-cbrt60.1
Applied *-un-lft-identity60.1
Applied times-frac60.1
Taylor expanded around inf 0.3
Simplified0.0
if -14718.562895208246 < x < 7392.742446615246Initial program 0.1
Simplified0.1
rmApplied add-cube-cbrt0.1
Applied *-un-lft-identity0.1
Applied times-frac0.1
Final simplification0.1
herbie shell --seed 2019212
(FPCore (x)
:name "Asymptote C"
:precision binary64
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))