\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -21007.667771887776:\\
\;\;\;\;\frac{\left(\frac{-5}{x \cdot x} + \frac{-6}{x}\right) + \frac{-16}{x \cdot \left(x \cdot x\right)}}{\frac{1 + x}{x - 1} + \frac{x}{1 + x}}\\
\mathbf{elif}\;x \le 21980.127985226965:\\
\;\;\;\;\frac{\frac{x}{1 + x} \cdot \frac{x}{1 + x} - \frac{1 + x}{x - 1} \cdot \frac{1 + x}{x - 1}}{\frac{1 + x}{x - 1} + \frac{x}{1 + x}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\left(\frac{-5}{x \cdot x} + \frac{-6}{x}\right) + \frac{-16}{x \cdot \left(x \cdot x\right)}}{\frac{1 + x}{x - 1} + \frac{x}{1 + x}}\\
\end{array}double f(double x) {
double r28607910 = x;
double r28607911 = 1.0;
double r28607912 = r28607910 + r28607911;
double r28607913 = r28607910 / r28607912;
double r28607914 = r28607910 - r28607911;
double r28607915 = r28607912 / r28607914;
double r28607916 = r28607913 - r28607915;
return r28607916;
}
double f(double x) {
double r28607917 = x;
double r28607918 = -21007.667771887776;
bool r28607919 = r28607917 <= r28607918;
double r28607920 = -5.0;
double r28607921 = r28607917 * r28607917;
double r28607922 = r28607920 / r28607921;
double r28607923 = -6.0;
double r28607924 = r28607923 / r28607917;
double r28607925 = r28607922 + r28607924;
double r28607926 = -16.0;
double r28607927 = r28607917 * r28607921;
double r28607928 = r28607926 / r28607927;
double r28607929 = r28607925 + r28607928;
double r28607930 = 1.0;
double r28607931 = r28607930 + r28607917;
double r28607932 = r28607917 - r28607930;
double r28607933 = r28607931 / r28607932;
double r28607934 = r28607917 / r28607931;
double r28607935 = r28607933 + r28607934;
double r28607936 = r28607929 / r28607935;
double r28607937 = 21980.127985226965;
bool r28607938 = r28607917 <= r28607937;
double r28607939 = r28607934 * r28607934;
double r28607940 = r28607933 * r28607933;
double r28607941 = r28607939 - r28607940;
double r28607942 = r28607941 / r28607935;
double r28607943 = r28607938 ? r28607942 : r28607936;
double r28607944 = r28607919 ? r28607936 : r28607943;
return r28607944;
}



Bits error versus x
Results
if x < -21007.667771887776 or 21980.127985226965 < x Initial program 59.4
rmApplied flip--59.4
Taylor expanded around -inf 0.3
Simplified0.0
if -21007.667771887776 < x < 21980.127985226965Initial program 0.1
rmApplied flip--0.1
Final simplification0.1
herbie shell --seed 2019121 +o rules:numerics
(FPCore (x)
:name "Asymptote C"
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))