\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\begin{array}{l}
\mathbf{if}\;a \le 1.5597915497031036 \cdot 10^{-162}:\\
\;\;\;\;\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\log \left(e^{\mathsf{log1p}\left(a\right)}\right)\right)}\right)\\
\mathbf{else}:\\
\;\;\;\;\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)\\
\end{array}double f(double a) {
double r16170 = a;
double r16171 = cosh(r16170);
double r16172 = r16170 * r16170;
double r16173 = fmod(r16171, r16172);
double r16174 = log1p(r16170);
double r16175 = pow(r16173, r16174);
double r16176 = acos(r16175);
return r16176;
}
double f(double a) {
double r16177 = a;
double r16178 = 1.5597915497031036e-162;
bool r16179 = r16177 <= r16178;
double r16180 = cosh(r16177);
double r16181 = r16177 * r16177;
double r16182 = fmod(r16180, r16181);
double r16183 = log1p(r16177);
double r16184 = exp(r16183);
double r16185 = log(r16184);
double r16186 = pow(r16182, r16185);
double r16187 = acos(r16186);
double r16188 = exp(r16182);
double r16189 = sqrt(r16188);
double r16190 = log(r16189);
double r16191 = r16190 + r16190;
double r16192 = pow(r16191, r16183);
double r16193 = acos(r16192);
double r16194 = r16179 ? r16187 : r16193;
return r16194;
}



Bits error versus a
if a < 1.5597915497031036e-162Initial program 64.0
rmApplied add-log-exp61.3
if 1.5597915497031036e-162 < a Initial program 58.6
rmApplied add-log-exp56.8
rmApplied add-sqr-sqrt56.8
Applied log-prod56.8
Final simplification59.0
herbie shell --seed 2019195
(FPCore (a)
:name "Random Jason Timeout Test 012"
(acos (pow (fmod (cosh a) (* a a)) (log1p a))))