double f(double x) {
double r9824649 = 1.0;
double r9824650 = 2.0;
double r9824651 = r9824649 / r9824650;
double r9824652 = x;
double r9824653 = r9824649 + r9824652;
double r9824654 = r9824649 - r9824652;
double r9824655 = r9824653 / r9824654;
double r9824656 = log(r9824655);
double r9824657 = r9824651 * r9824656;
return r9824657;
}
double f(double x) {
double r9824658 = 0.5;
double r9824659 = x;
double r9824660 = 5.0;
double r9824661 = pow(r9824659, r9824660);
double r9824662 = 0.4;
double r9824663 = r9824661 * r9824662;
double r9824664 = 2.0;
double r9824665 = r9824664 * r9824659;
double r9824666 = 0.6666666666666666;
double r9824667 = r9824659 * r9824666;
double r9824668 = r9824659 * r9824667;
double r9824669 = r9824668 * r9824659;
double r9824670 = r9824665 + r9824669;
double r9824671 = r9824663 + r9824670;
double r9824672 = r9824658 * r9824671;
return r9824672;
}
\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)


Bits error versus x
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 2019101
(FPCore (x)
:name "Hyperbolic arc-(co)tangent"
(* (/ 1 2) (log (/ (+ 1 x) (- 1 x)))))