Average Error: 33.4 → 33.4
Time: 43.2s
Precision: 64
\[\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(\left(\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) \bmod a\right)\right|\]
\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(\left(\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) \bmod a\right)\right|
double f(double a) {
        double r21449 = a;
        double r21450 = expm1(r21449);
        double r21451 = sin(r21450);
        double r21452 = expm1(r21451);
        double r21453 = atan(r21449);
        double r21454 = atan2(r21452, r21453);
        double r21455 = fmod(r21454, r21449);
        double r21456 = fabs(r21455);
        return r21456;
}

double f(double a) {
        double r21457 = a;
        double r21458 = expm1(r21457);
        double r21459 = sin(r21458);
        double r21460 = cbrt(r21459);
        double r21461 = r21460 * r21460;
        double r21462 = r21461 * r21460;
        double r21463 = expm1(r21462);
        double r21464 = atan(r21457);
        double r21465 = atan2(r21463, r21464);
        double r21466 = fmod(r21465, r21457);
        double r21467 = fabs(r21466);
        return r21467;
}

Error

Bits error versus a

Derivation

  1. Initial program 33.4

    \[\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|\]
  2. Using strategy rm
  3. Applied add-cube-cbrt33.4

    \[\leadsto \left|\left(\left(\tan^{-1}_* \frac{\mathsf{expm1}\left(\color{blue}{\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) \bmod a\right)\right|\]
  4. Final simplification33.4

    \[\leadsto \left|\left(\left(\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) \bmod a\right)\right|\]

Reproduce

herbie shell --seed 2019347 +o rules:numerics
(FPCore (a)
  :name "Random Jason Timeout Test 006"
  :precision binary64
  (fabs (fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)))