\frac{1}{x + 1} - \frac{1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -224.81714758788752 \lor \neg \left(x \le 309.006034684648228\right):\\
\;\;\;\;\left(\frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, {x}^{\left(-2\right)}, 2 \cdot \frac{1}{{x}^{4}}\right)\right) + \frac{1}{x \cdot x - 1 \cdot 1} \cdot \left(\left(-\left(x + 1\right)\right) + \left(x + 1\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{x + 1} - \frac{1}{x - 1}\\
\end{array}double f(double x) {
double r138546 = 1.0;
double r138547 = x;
double r138548 = r138547 + r138546;
double r138549 = r138546 / r138548;
double r138550 = r138547 - r138546;
double r138551 = r138546 / r138550;
double r138552 = r138549 - r138551;
return r138552;
}
double f(double x) {
double r138553 = x;
double r138554 = -224.81714758788752;
bool r138555 = r138553 <= r138554;
double r138556 = 309.0060346846482;
bool r138557 = r138553 <= r138556;
double r138558 = !r138557;
bool r138559 = r138555 || r138558;
double r138560 = 2.0;
double r138561 = -r138560;
double r138562 = 6.0;
double r138563 = pow(r138553, r138562);
double r138564 = r138561 / r138563;
double r138565 = 2.0;
double r138566 = -r138565;
double r138567 = pow(r138553, r138566);
double r138568 = 1.0;
double r138569 = 4.0;
double r138570 = pow(r138553, r138569);
double r138571 = r138568 / r138570;
double r138572 = r138560 * r138571;
double r138573 = fma(r138560, r138567, r138572);
double r138574 = r138564 - r138573;
double r138575 = 1.0;
double r138576 = r138553 * r138553;
double r138577 = r138575 * r138575;
double r138578 = r138576 - r138577;
double r138579 = r138575 / r138578;
double r138580 = r138553 + r138575;
double r138581 = -r138580;
double r138582 = r138581 + r138580;
double r138583 = r138579 * r138582;
double r138584 = r138574 + r138583;
double r138585 = r138575 / r138580;
double r138586 = r138553 - r138575;
double r138587 = r138575 / r138586;
double r138588 = r138585 - r138587;
double r138589 = r138559 ? r138584 : r138588;
return r138589;
}



Bits error versus x
if x < -224.81714758788752 or 309.0060346846482 < x Initial program 29.0
rmApplied flip--58.7
Applied associate-/r/58.7
Applied flip-+29.1
Applied associate-/r/29.0
Applied prod-diff27.9
Simplified29.1
Taylor expanded around inf 0.8
Simplified0.8
rmApplied pow-flip0.0
if -224.81714758788752 < x < 309.0060346846482Initial program 0.0
Final simplification0.0
herbie shell --seed 2020089 +o rules:numerics
(FPCore (x)
:name "Asymptote A"
:precision binary64
(- (/ 1 (+ x 1)) (/ 1 (- x 1))))