\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\log \left(\sqrt{e^{\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{e^{\cos^{-1} \left({\left(\left(\sqrt[3]{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)} \cdot \sqrt[3]{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right) \cdot \sqrt[3]{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)}}\right)double f(double a) {
double r3099 = a;
double r3100 = cosh(r3099);
double r3101 = r3099 * r3099;
double r3102 = fmod(r3100, r3101);
double r3103 = log1p(r3099);
double r3104 = pow(r3102, r3103);
double r3105 = acos(r3104);
return r3105;
}
double f(double a) {
double r3106 = a;
double r3107 = cosh(r3106);
double r3108 = r3106 * r3106;
double r3109 = fmod(r3107, r3108);
double r3110 = exp(r3109);
double r3111 = log(r3110);
double r3112 = log1p(r3106);
double r3113 = pow(r3111, r3112);
double r3114 = acos(r3113);
double r3115 = exp(r3114);
double r3116 = sqrt(r3115);
double r3117 = log(r3116);
double r3118 = cbrt(r3109);
double r3119 = r3118 * r3118;
double r3120 = r3119 * r3118;
double r3121 = pow(r3120, r3112);
double r3122 = acos(r3121);
double r3123 = exp(r3122);
double r3124 = sqrt(r3123);
double r3125 = log(r3124);
double r3126 = r3117 + r3125;
return r3126;
}



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