\frac{1}{2} \cdot \log \left(\frac{1 + x}{1 - x}\right)\frac{1}{2} \cdot \left({x}^{5} \cdot \frac{2}{5} + \left(2 \cdot x + \left(x \cdot \left(x \cdot \frac{2}{3}\right)\right) \cdot x\right)\right)double f(double x) {
double r7674862 = 1.0;
double r7674863 = 2.0;
double r7674864 = r7674862 / r7674863;
double r7674865 = x;
double r7674866 = r7674862 + r7674865;
double r7674867 = r7674862 - r7674865;
double r7674868 = r7674866 / r7674867;
double r7674869 = log(r7674868);
double r7674870 = r7674864 * r7674869;
return r7674870;
}
double f(double x) {
double r7674871 = 0.5;
double r7674872 = x;
double r7674873 = 5.0;
double r7674874 = pow(r7674872, r7674873);
double r7674875 = 0.4;
double r7674876 = r7674874 * r7674875;
double r7674877 = 2.0;
double r7674878 = r7674877 * r7674872;
double r7674879 = 0.6666666666666666;
double r7674880 = r7674872 * r7674879;
double r7674881 = r7674872 * r7674880;
double r7674882 = r7674881 * r7674872;
double r7674883 = r7674878 + r7674882;
double r7674884 = r7674876 + r7674883;
double r7674885 = r7674871 * r7674884;
return r7674885;
}



Bits error versus x
Results
Initial program 58.6
Simplified58.6
Taylor expanded around 0 0.2
Simplified0.2
rmApplied distribute-lft-in0.2
Final simplification0.2
herbie shell --seed 2019104
(FPCore (x)
:name "Hyperbolic arc-(co)tangent"
(* (/ 1 2) (log (/ (+ 1 x) (- 1 x)))))