\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\cos^{-1} \left({\left(\log \left(\sqrt{e^{\left(\left(\cosh a\right) \bmod \left({a}^{2}\right)\right)}}\right) + \left(\log \left(\sqrt{e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}}\right) \cdot \frac{1}{2} + \log \left(\sqrt{\sqrt{e^{\left(\left(\cosh a\right) \bmod \left({a}^{2}\right)\right)}}}\right)\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)double f(double a) {
double r18610 = a;
double r18611 = cosh(r18610);
double r18612 = r18610 * r18610;
double r18613 = fmod(r18611, r18612);
double r18614 = log1p(r18610);
double r18615 = pow(r18613, r18614);
double r18616 = acos(r18615);
return r18616;
}
double f(double a) {
double r18617 = a;
double r18618 = cosh(r18617);
double r18619 = 2.0;
double r18620 = pow(r18617, r18619);
double r18621 = fmod(r18618, r18620);
double r18622 = exp(r18621);
double r18623 = sqrt(r18622);
double r18624 = log(r18623);
double r18625 = r18617 * r18617;
double r18626 = fmod(r18618, r18625);
double r18627 = exp(r18626);
double r18628 = sqrt(r18627);
double r18629 = log(r18628);
double r18630 = 0.5;
double r18631 = r18629 * r18630;
double r18632 = sqrt(r18623);
double r18633 = log(r18632);
double r18634 = r18631 + r18633;
double r18635 = r18624 + r18634;
double r18636 = log1p(r18617);
double r18637 = pow(r18635, r18636);
double r18638 = acos(r18637);
return r18638;
}



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