\frac{1}{2} \cdot \log \left(\frac{1 + x}{1 - x}\right)\frac{1}{2} \cdot \left(\frac{2}{3} \cdot \frac{{x}^{3}}{{1}^{3}} + \left(2 \cdot x + \frac{2}{5} \cdot \frac{{x}^{5}}{{1}^{5}}\right)\right)double f(double x) {
double r53724 = 1.0;
double r53725 = 2.0;
double r53726 = r53724 / r53725;
double r53727 = x;
double r53728 = r53724 + r53727;
double r53729 = r53724 - r53727;
double r53730 = r53728 / r53729;
double r53731 = log(r53730);
double r53732 = r53726 * r53731;
return r53732;
}
double f(double x) {
double r53733 = 1.0;
double r53734 = 2.0;
double r53735 = r53733 / r53734;
double r53736 = 0.6666666666666666;
double r53737 = x;
double r53738 = 3.0;
double r53739 = pow(r53737, r53738);
double r53740 = pow(r53733, r53738);
double r53741 = r53739 / r53740;
double r53742 = r53736 * r53741;
double r53743 = r53734 * r53737;
double r53744 = 0.4;
double r53745 = 5.0;
double r53746 = pow(r53737, r53745);
double r53747 = pow(r53733, r53745);
double r53748 = r53746 / r53747;
double r53749 = r53744 * r53748;
double r53750 = r53743 + r53749;
double r53751 = r53742 + r53750;
double r53752 = r53735 * r53751;
return r53752;
}



Bits error versus x
Results
Initial program 58.5
rmApplied log-div58.5
Taylor expanded around 0 0.2
Final simplification0.2
herbie shell --seed 2019362
(FPCore (x)
:name "Hyperbolic arc-(co)tangent"
:precision binary64
(* (/ 1 2) (log (/ (+ 1 x) (- 1 x)))))