\sin \left({\left(\sqrt{\tan^{-1}_* \frac{b}{b}}\right)}^{\left(b - a\right)}\right)\sin \left({\left(\sqrt{\sqrt{\tan^{-1}_* \frac{b}{b}}}\right)}^{\left(b - a\right)} \cdot \left({\left(\sqrt{\sqrt{\sqrt[3]{\tan^{-1}_* \frac{b}{b}} \cdot \sqrt[3]{\tan^{-1}_* \frac{b}{b}}}}\right)}^{\left(b - a\right)} \cdot {\left(\sqrt{\sqrt{\sqrt[3]{\tan^{-1}_* \frac{b}{b}}}}\right)}^{\left(b - a\right)}\right)\right)double f(double a, double b) {
double r8892 = b;
double r8893 = atan2(r8892, r8892);
double r8894 = sqrt(r8893);
double r8895 = a;
double r8896 = r8892 - r8895;
double r8897 = pow(r8894, r8896);
double r8898 = sin(r8897);
return r8898;
}
double f(double a, double b) {
double r8899 = b;
double r8900 = atan2(r8899, r8899);
double r8901 = sqrt(r8900);
double r8902 = sqrt(r8901);
double r8903 = a;
double r8904 = r8899 - r8903;
double r8905 = pow(r8902, r8904);
double r8906 = cbrt(r8900);
double r8907 = r8906 * r8906;
double r8908 = sqrt(r8907);
double r8909 = sqrt(r8908);
double r8910 = pow(r8909, r8904);
double r8911 = sqrt(r8906);
double r8912 = sqrt(r8911);
double r8913 = pow(r8912, r8904);
double r8914 = r8910 * r8913;
double r8915 = r8905 * r8914;
double r8916 = sin(r8915);
return r8916;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.1
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.1
Applied unpow-prod-down0.1
rmApplied add-cube-cbrt0.1
Applied sqrt-prod0.1
Applied sqrt-prod0.1
Applied unpow-prod-down0.1
Final simplification0.1
herbie shell --seed 2019354 +o rules:numerics
(FPCore (a b)
:name "Random Jason Timeout Test 015"
:precision binary64
(sin (pow (sqrt (atan2 b b)) (- b a))))