\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)e^{2 \cdot \log \left(\sqrt[3]{\cos^{-1} \left({\left(\log \left(e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)}\right) + \log \left(\sqrt[3]{\cos^{-1} \left({\left(\log \left(\sqrt{e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}}\right) + \log \left(\sqrt{e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}}\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)}\right)}double f(double a) {
double r3490 = a;
double r3491 = cosh(r3490);
double r3492 = r3490 * r3490;
double r3493 = fmod(r3491, r3492);
double r3494 = log1p(r3490);
double r3495 = pow(r3493, r3494);
double r3496 = acos(r3495);
return r3496;
}
double f(double a) {
double r3497 = 2.0;
double r3498 = a;
double r3499 = cosh(r3498);
double r3500 = r3498 * r3498;
double r3501 = fmod(r3499, r3500);
double r3502 = exp(r3501);
double r3503 = log(r3502);
double r3504 = log1p(r3498);
double r3505 = pow(r3503, r3504);
double r3506 = acos(r3505);
double r3507 = cbrt(r3506);
double r3508 = log(r3507);
double r3509 = r3497 * r3508;
double r3510 = sqrt(r3502);
double r3511 = log(r3510);
double r3512 = r3511 + r3511;
double r3513 = pow(r3512, r3504);
double r3514 = acos(r3513);
double r3515 = cbrt(r3514);
double r3516 = log(r3515);
double r3517 = r3509 + r3516;
double r3518 = exp(r3517);
return r3518;
}



Bits error versus a
Initial program 61.2
rmApplied add-log-exp60.2
rmApplied add-exp-log60.2
rmApplied add-cube-cbrt60.2
Applied log-prod60.2
Simplified60.2
rmApplied add-sqr-sqrt60.2
Applied log-prod60.2
Final simplification60.2
herbie shell --seed 2020036
(FPCore (a)
:name "Random Jason Timeout Test 012"
:precision binary64
(acos (pow (fmod (cosh a) (* a a)) (log1p a))))