\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(\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)} \cdot \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)}\right) \cdot \sqrt[3]{\left(\left(\log \left(e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\left(\sqrt[3]{\sin \left(\mathsf{expm1}\left(a\right)\right)} \cdot \sqrt[3]{\sin \left(\mathsf{expm1}\left(a\right)\right)}\right) \cdot \sqrt[3]{\sin \left(\mathsf{expm1}\left(a\right)\right)}\right)}{\tan^{-1} a}}\right)\right) \bmod a\right)}\right|double f(double a) {
double r580905 = a;
double r580906 = expm1(r580905);
double r580907 = sin(r580906);
double r580908 = expm1(r580907);
double r580909 = atan(r580905);
double r580910 = atan2(r580908, r580909);
double r580911 = fmod(r580910, r580905);
double r580912 = fabs(r580911);
return r580912;
}
double f(double a) {
double r580913 = a;
double r580914 = expm1(r580913);
double r580915 = sin(r580914);
double r580916 = expm1(r580915);
double r580917 = atan(r580913);
double r580918 = atan2(r580916, r580917);
double r580919 = exp(r580918);
double r580920 = log(r580919);
double r580921 = fmod(r580920, r580913);
double r580922 = cbrt(r580921);
double r580923 = fmod(r580918, r580913);
double r580924 = cbrt(r580923);
double r580925 = r580922 * r580924;
double r580926 = cbrt(r580915);
double r580927 = r580926 * r580926;
double r580928 = r580927 * r580926;
double r580929 = expm1(r580928);
double r580930 = atan2(r580929, r580917);
double r580931 = exp(r580930);
double r580932 = log(r580931);
double r580933 = fmod(r580932, r580913);
double r580934 = cbrt(r580933);
double r580935 = r580925 * r580934;
double r580936 = fabs(r580935);
return r580936;
}



Bits error versus a
Initial program 32.9
rmApplied add-log-exp32.9
rmApplied add-cube-cbrt33.0
Taylor expanded around 0 32.9
rmApplied add-cube-cbrt32.9
Final simplification32.9
herbie shell --seed 2019165 +o rules:numerics
(FPCore (a)
:name "Random Jason Timeout Test 006"
(fabs (fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)))