\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -8688.238468616020327317528426647186279297 \lor \neg \left(x \le 10925.36989018712301913183182477951049805\right):\\
\;\;\;\;\left(\frac{-1}{{x}^{2}} - \frac{3}{x}\right) - \frac{3}{{x}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\frac{{\left(\frac{x}{x + 1}\right)}^{3} - \log \left(e^{{\left(\frac{x + 1}{x - 1}\right)}^{3}}\right)}{\frac{x + 1}{x - 1} \cdot \left(\frac{x + 1}{x - 1} + \frac{x}{x + 1}\right) + \frac{x}{x + 1} \cdot \frac{x}{x + 1}}\\
\end{array}double f(double x) {
double r160180 = x;
double r160181 = 1.0;
double r160182 = r160180 + r160181;
double r160183 = r160180 / r160182;
double r160184 = r160180 - r160181;
double r160185 = r160182 / r160184;
double r160186 = r160183 - r160185;
return r160186;
}
double f(double x) {
double r160187 = x;
double r160188 = -8688.23846861602;
bool r160189 = r160187 <= r160188;
double r160190 = 10925.369890187123;
bool r160191 = r160187 <= r160190;
double r160192 = !r160191;
bool r160193 = r160189 || r160192;
double r160194 = 1.0;
double r160195 = -r160194;
double r160196 = 2.0;
double r160197 = pow(r160187, r160196);
double r160198 = r160195 / r160197;
double r160199 = 3.0;
double r160200 = r160199 / r160187;
double r160201 = r160198 - r160200;
double r160202 = 3.0;
double r160203 = pow(r160187, r160202);
double r160204 = r160199 / r160203;
double r160205 = r160201 - r160204;
double r160206 = r160187 + r160194;
double r160207 = r160187 / r160206;
double r160208 = pow(r160207, r160202);
double r160209 = r160187 - r160194;
double r160210 = r160206 / r160209;
double r160211 = pow(r160210, r160202);
double r160212 = exp(r160211);
double r160213 = log(r160212);
double r160214 = r160208 - r160213;
double r160215 = r160210 + r160207;
double r160216 = r160210 * r160215;
double r160217 = r160207 * r160207;
double r160218 = r160216 + r160217;
double r160219 = r160214 / r160218;
double r160220 = r160193 ? r160205 : r160219;
return r160220;
}



Bits error versus x
Results
if x < -8688.23846861602 or 10925.369890187123 < x Initial program 59.2
Taylor expanded around inf 0.3
Simplified0.0
if -8688.23846861602 < x < 10925.369890187123Initial program 0.1
rmApplied flip3--0.1
Simplified0.1
rmApplied add-log-exp0.1
Final simplification0.1
herbie shell --seed 2019353
(FPCore (x)
:name "Asymptote C"
:precision binary64
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))