\frac{1}{2} \cdot \log \left(\frac{1 + x}{1 - x}\right)\left(\frac{2}{5} \cdot {x}^{5} + x \cdot \left(\left(\frac{2}{3} \cdot x\right) \cdot x + 2\right)\right) \cdot \frac{1}{2}double f(double x) {
double r3165973 = 1.0;
double r3165974 = 2.0;
double r3165975 = r3165973 / r3165974;
double r3165976 = x;
double r3165977 = r3165973 + r3165976;
double r3165978 = r3165973 - r3165976;
double r3165979 = r3165977 / r3165978;
double r3165980 = log(r3165979);
double r3165981 = r3165975 * r3165980;
return r3165981;
}
double f(double x) {
double r3165982 = 0.4;
double r3165983 = x;
double r3165984 = 5.0;
double r3165985 = pow(r3165983, r3165984);
double r3165986 = r3165982 * r3165985;
double r3165987 = 0.6666666666666666;
double r3165988 = r3165987 * r3165983;
double r3165989 = r3165988 * r3165983;
double r3165990 = 2.0;
double r3165991 = r3165989 + r3165990;
double r3165992 = r3165983 * r3165991;
double r3165993 = r3165986 + r3165992;
double r3165994 = 0.5;
double r3165995 = r3165993 * r3165994;
return r3165995;
}



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