\frac{1}{x + 1} - \frac{1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -4067.847585363629605126334354281425476074 \lor \neg \left(x \le 6197.824943452278603217564523220062255859\right):\\
\;\;\;\;\frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, {x}^{\left(-2\right)}, 2 \cdot \frac{1}{{x}^{4}}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{x \cdot x - 1 \cdot 1} \cdot \left(x + \left(\left(-1\right) - \left(x + 1\right)\right)\right)\\
\end{array}double f(double x) {
double r144236 = 1.0;
double r144237 = x;
double r144238 = r144237 + r144236;
double r144239 = r144236 / r144238;
double r144240 = r144237 - r144236;
double r144241 = r144236 / r144240;
double r144242 = r144239 - r144241;
return r144242;
}
double f(double x) {
double r144243 = x;
double r144244 = -4067.8475853636296;
bool r144245 = r144243 <= r144244;
double r144246 = 6197.824943452279;
bool r144247 = r144243 <= r144246;
double r144248 = !r144247;
bool r144249 = r144245 || r144248;
double r144250 = 2.0;
double r144251 = -r144250;
double r144252 = 6.0;
double r144253 = pow(r144243, r144252);
double r144254 = r144251 / r144253;
double r144255 = 2.0;
double r144256 = -r144255;
double r144257 = pow(r144243, r144256);
double r144258 = 1.0;
double r144259 = 4.0;
double r144260 = pow(r144243, r144259);
double r144261 = r144258 / r144260;
double r144262 = r144250 * r144261;
double r144263 = fma(r144250, r144257, r144262);
double r144264 = r144254 - r144263;
double r144265 = 1.0;
double r144266 = r144243 * r144243;
double r144267 = r144265 * r144265;
double r144268 = r144266 - r144267;
double r144269 = r144265 / r144268;
double r144270 = -r144265;
double r144271 = r144243 + r144265;
double r144272 = r144270 - r144271;
double r144273 = r144243 + r144272;
double r144274 = r144269 * r144273;
double r144275 = r144249 ? r144264 : r144274;
return r144275;
}



Bits error versus x
if x < -4067.8475853636296 or 6197.824943452279 < x Initial program 29.0
Taylor expanded around inf 0.8
Simplified0.8
rmApplied pow-flip0.0
if -4067.8475853636296 < x < 6197.824943452279Initial program 0.0
rmApplied flip--0.0
Applied associate-/r/0.0
Applied flip-+0.1
Applied associate-/r/0.0
Applied distribute-lft-out--0.0
rmApplied sub-neg0.0
Applied associate--l+0.0
Final simplification0.0
herbie shell --seed 2020001 +o rules:numerics
(FPCore (x)
:name "Asymptote A"
:precision binary64
(- (/ 1 (+ x 1)) (/ 1 (- x 1))))