\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(\log \left(\sqrt[3]{{\left(e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}\right)}^{3}}\right)\right) \bmod a\right)}\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|double f(double a) {
double r8913 = a;
double r8914 = expm1(r8913);
double r8915 = sin(r8914);
double r8916 = expm1(r8915);
double r8917 = atan(r8913);
double r8918 = atan2(r8916, r8917);
double r8919 = fmod(r8918, r8913);
double r8920 = fabs(r8919);
return r8920;
}
double f(double a) {
double r8921 = a;
double r8922 = expm1(r8921);
double r8923 = sin(r8922);
double r8924 = expm1(r8923);
double r8925 = atan(r8921);
double r8926 = atan2(r8924, r8925);
double r8927 = exp(r8926);
double r8928 = log(r8927);
double r8929 = fmod(r8928, r8921);
double r8930 = cbrt(r8929);
double r8931 = 3.0;
double r8932 = pow(r8927, r8931);
double r8933 = cbrt(r8932);
double r8934 = log(r8933);
double r8935 = fmod(r8934, r8921);
double r8936 = cbrt(r8935);
double r8937 = r8930 * r8936;
double r8938 = fmod(r8926, r8921);
double r8939 = cbrt(r8938);
double r8940 = r8937 * r8939;
double r8941 = fabs(r8940);
return r8941;
}



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