\frac{1}{x + 1} - \frac{1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -219.2555067559826227352459682151675224304 \lor \neg \left(x \le 225.8483742386996198092674603685736656189\right):\\
\;\;\;\;-\left(\frac{2}{{x}^{6}} + \left(\frac{\frac{2}{x}}{x} + \frac{2}{{x}^{4}}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\frac{1}{{1}^{3} + {x}^{3}}, \mathsf{fma}\left(x, x, 1 \cdot \left(1 - x\right)\right), \left(-\mathsf{fma}\left(x, x, 1 \cdot \left(1 + x\right)\right)\right) \cdot \frac{1}{{x}^{3} - {1}^{3}}\right) + \frac{1}{{x}^{3} - {1}^{3}} \cdot \left(\mathsf{fma}\left(x, x, 1 \cdot \left(1 + x\right)\right) + \left(-\mathsf{fma}\left(x, x, 1 \cdot \left(1 + x\right)\right)\right)\right)\\
\end{array}double f(double x) {
double r167864 = 1.0;
double r167865 = x;
double r167866 = r167865 + r167864;
double r167867 = r167864 / r167866;
double r167868 = r167865 - r167864;
double r167869 = r167864 / r167868;
double r167870 = r167867 - r167869;
return r167870;
}
double f(double x) {
double r167871 = x;
double r167872 = -219.25550675598262;
bool r167873 = r167871 <= r167872;
double r167874 = 225.84837423869962;
bool r167875 = r167871 <= r167874;
double r167876 = !r167875;
bool r167877 = r167873 || r167876;
double r167878 = 2.0;
double r167879 = 6.0;
double r167880 = pow(r167871, r167879);
double r167881 = r167878 / r167880;
double r167882 = r167878 / r167871;
double r167883 = r167882 / r167871;
double r167884 = 4.0;
double r167885 = pow(r167871, r167884);
double r167886 = r167878 / r167885;
double r167887 = r167883 + r167886;
double r167888 = r167881 + r167887;
double r167889 = -r167888;
double r167890 = 1.0;
double r167891 = 3.0;
double r167892 = pow(r167890, r167891);
double r167893 = pow(r167871, r167891);
double r167894 = r167892 + r167893;
double r167895 = r167890 / r167894;
double r167896 = r167890 - r167871;
double r167897 = r167890 * r167896;
double r167898 = fma(r167871, r167871, r167897);
double r167899 = r167890 + r167871;
double r167900 = r167890 * r167899;
double r167901 = fma(r167871, r167871, r167900);
double r167902 = -r167901;
double r167903 = r167893 - r167892;
double r167904 = r167890 / r167903;
double r167905 = r167902 * r167904;
double r167906 = fma(r167895, r167898, r167905);
double r167907 = r167901 + r167902;
double r167908 = r167904 * r167907;
double r167909 = r167906 + r167908;
double r167910 = r167877 ? r167889 : r167909;
return r167910;
}



Bits error versus x
if x < -219.25550675598262 or 225.84837423869962 < x Initial program 29.8
Taylor expanded around inf 0.7
Simplified0.7
rmApplied associate-/r*0.1
if -219.25550675598262 < x < 225.84837423869962Initial program 0.0
rmApplied flip3--0.0
Applied associate-/r/0.0
Applied flip3-+0.0
Applied associate-/r/0.0
Applied prod-diff0.0
Simplified0.0
Simplified0.0
Final simplification0.1
herbie shell --seed 2019194 +o rules:numerics
(FPCore (x)
:name "Asymptote A"
(- (/ 1.0 (+ x 1.0)) (/ 1.0 (- x 1.0))))