\frac{x}{x + 1} - \frac{x + 1}{x - 1}\begin{array}{l}
\mathbf{if}\;x \le -13946.2737556041702 \lor \neg \left(x \le 12811.273113389769\right):\\
\;\;\;\;\left(-\frac{3}{{x}^{3}}\right) - \left(\frac{3}{x} + \frac{1}{x \cdot x}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\frac{\left(\frac{x}{x + 1} \cdot x\right) \cdot \left(x - 1\right) - \frac{{\left(x + 1\right)}^{3}}{x - 1}}{x \cdot x - 1 \cdot 1}\right)}^{3}}}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\\
\end{array}double f(double x) {
double r103994 = x;
double r103995 = 1.0;
double r103996 = r103994 + r103995;
double r103997 = r103994 / r103996;
double r103998 = r103994 - r103995;
double r103999 = r103996 / r103998;
double r104000 = r103997 - r103999;
return r104000;
}
double f(double x) {
double r104001 = x;
double r104002 = -13946.27375560417;
bool r104003 = r104001 <= r104002;
double r104004 = 12811.273113389769;
bool r104005 = r104001 <= r104004;
double r104006 = !r104005;
bool r104007 = r104003 || r104006;
double r104008 = 3.0;
double r104009 = 3.0;
double r104010 = pow(r104001, r104009);
double r104011 = r104008 / r104010;
double r104012 = -r104011;
double r104013 = r104008 / r104001;
double r104014 = 1.0;
double r104015 = r104001 * r104001;
double r104016 = r104014 / r104015;
double r104017 = r104013 + r104016;
double r104018 = r104012 - r104017;
double r104019 = r104001 + r104014;
double r104020 = r104001 / r104019;
double r104021 = r104020 * r104001;
double r104022 = r104001 - r104014;
double r104023 = r104021 * r104022;
double r104024 = pow(r104019, r104009);
double r104025 = r104024 / r104022;
double r104026 = r104023 - r104025;
double r104027 = r104014 * r104014;
double r104028 = r104015 - r104027;
double r104029 = r104026 / r104028;
double r104030 = pow(r104029, r104009);
double r104031 = cbrt(r104030);
double r104032 = r104019 / r104022;
double r104033 = r104020 + r104032;
double r104034 = r104031 / r104033;
double r104035 = r104007 ? r104018 : r104034;
return r104035;
}



Bits error versus x
Results
if x < -13946.27375560417 or 12811.273113389769 < x Initial program 59.4
Taylor expanded around inf 0.3
Simplified0.0
if -13946.27375560417 < x < 12811.273113389769Initial program 0.1
rmApplied flip--0.1
rmApplied add-cbrt-cube0.1
Simplified0.1
rmApplied associate-*r/0.1
Applied associate-*r/0.1
Applied frac-sub0.1
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019195
(FPCore (x)
:name "Asymptote C"
(- (/ x (+ x 1.0)) (/ (+ x 1.0) (- x 1.0))))