\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(\mathsf{fma}\left(\sqrt[3]{b} \cdot \sqrt[3]{b}, \sqrt[3]{b}, -\sqrt[3]{a} \cdot \left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right)\right)\right)} \cdot \left({\left(\sqrt{\sqrt{\tan^{-1}_* \frac{b}{b}}}\right)}^{\left(\mathsf{fma}\left(-a, 1, a \cdot 1\right)\right)} \cdot {\left(\sqrt{\sqrt{\tan^{-1}_* \frac{b}{b}}}\right)}^{\left(b - a\right)}\right)\right)double f(double a, double b) {
double r18583 = b;
double r18584 = atan2(r18583, r18583);
double r18585 = sqrt(r18584);
double r18586 = a;
double r18587 = r18583 - r18586;
double r18588 = pow(r18585, r18587);
double r18589 = sin(r18588);
return r18589;
}
double f(double a, double b) {
double r18590 = b;
double r18591 = atan2(r18590, r18590);
double r18592 = sqrt(r18591);
double r18593 = sqrt(r18592);
double r18594 = cbrt(r18590);
double r18595 = r18594 * r18594;
double r18596 = a;
double r18597 = cbrt(r18596);
double r18598 = r18597 * r18597;
double r18599 = r18597 * r18598;
double r18600 = -r18599;
double r18601 = fma(r18595, r18594, r18600);
double r18602 = pow(r18593, r18601);
double r18603 = -r18596;
double r18604 = 1.0;
double r18605 = r18596 * r18604;
double r18606 = fma(r18603, r18604, r18605);
double r18607 = pow(r18593, r18606);
double r18608 = r18590 - r18596;
double r18609 = pow(r18593, r18608);
double r18610 = r18607 * r18609;
double r18611 = r18602 * r18610;
double r18612 = sin(r18611);
return r18612;
}



Bits error versus a



Bits error versus b
Initial program 0.1
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.1
Applied unpow-prod-down0.1
rmApplied add-cube-cbrt0.1
Applied add-cube-cbrt0.1
Applied prod-diff0.1
Applied unpow-prod-up11.1
Applied associate-*l*11.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020089 +o rules:numerics
(FPCore (a b)
:name "Random Jason Timeout Test 003"
:precision binary64
(sin (pow (sqrt (atan2 b b)) (- b a))))