\left|\left(\left(\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}\right) \bmod a\right)\right|\left|\left(\sqrt[3]{\left(\left(\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}\right) \bmod a\right)} \cdot \sqrt[3]{\left(\left(\log \left(e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}\right)\right) \bmod a\right)}\right) \cdot \sqrt[3]{\left(\left(\log \left(\log \left(e^{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right)\right)\right) \bmod a\right)}\right|double f(double a) {
double r7955 = a;
double r7956 = expm1(r7955);
double r7957 = sin(r7956);
double r7958 = expm1(r7957);
double r7959 = atan(r7955);
double r7960 = atan2(r7958, r7959);
double r7961 = fmod(r7960, r7955);
double r7962 = fabs(r7961);
return r7962;
}
double f(double a) {
double r7963 = a;
double r7964 = expm1(r7963);
double r7965 = sin(r7964);
double r7966 = expm1(r7965);
double r7967 = atan(r7963);
double r7968 = atan2(r7966, r7967);
double r7969 = fmod(r7968, r7963);
double r7970 = cbrt(r7969);
double r7971 = exp(r7968);
double r7972 = log(r7971);
double r7973 = fmod(r7972, r7963);
double r7974 = cbrt(r7973);
double r7975 = r7970 * r7974;
double r7976 = exp(r7971);
double r7977 = log(r7976);
double r7978 = log(r7977);
double r7979 = fmod(r7978, r7963);
double r7980 = cbrt(r7979);
double r7981 = r7975 * r7980;
double r7982 = fabs(r7981);
return r7982;
}



Bits error versus a
Initial program 33.5
rmApplied add-log-exp33.5
rmApplied add-cube-cbrt33.5
rmApplied add-log-exp33.5
Taylor expanded around 0 33.5
Final simplification33.5
herbie shell --seed 2020018 +o rules:numerics
(FPCore (a)
:name "Random Jason Timeout Test 006"
:precision binary64
(fabs (fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)))