\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(\sqrt[3]{{\left(\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}\right)}^{3}}\right) \bmod a\right)} \cdot \sqrt[3]{\left(\left(\sqrt[3]{{\left(\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}\right)}^{3}}\right) \bmod a\right)}\right) \cdot \sqrt[3]{\left(\left(\sqrt[3]{\sqrt[3]{{\left({\left(\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}\right)}^{3}\right)}^{3}}}\right) \bmod a\right)}\right|double f(double a) {
double r7007 = a;
double r7008 = expm1(r7007);
double r7009 = sin(r7008);
double r7010 = expm1(r7009);
double r7011 = atan(r7007);
double r7012 = atan2(r7010, r7011);
double r7013 = fmod(r7012, r7007);
double r7014 = fabs(r7013);
return r7014;
}
double f(double a) {
double r7015 = a;
double r7016 = expm1(r7015);
double r7017 = sin(r7016);
double r7018 = expm1(r7017);
double r7019 = atan(r7015);
double r7020 = atan2(r7018, r7019);
double r7021 = 3.0;
double r7022 = pow(r7020, r7021);
double r7023 = cbrt(r7022);
double r7024 = fmod(r7023, r7015);
double r7025 = cbrt(r7024);
double r7026 = r7025 * r7025;
double r7027 = pow(r7022, r7021);
double r7028 = cbrt(r7027);
double r7029 = cbrt(r7028);
double r7030 = fmod(r7029, r7015);
double r7031 = cbrt(r7030);
double r7032 = r7026 * r7031;
double r7033 = fabs(r7032);
return r7033;
}



Bits error versus a
Initial program 33.7
rmApplied add-cbrt-cube33.8
Simplified33.8
rmApplied add-cube-cbrt33.8
rmApplied add-cbrt-cube33.7
Simplified33.7
Final simplification33.7
herbie shell --seed 2019352
(FPCore (a)
:name "Random Jason Timeout Test 006"
:precision binary64
(fabs (fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)))