Average Error: 33.4 → 33.4
Time: 18.4s
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(\log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right) + \log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right)\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(\log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right) + \log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right)\right) \bmod a\right)\right|
double f(double a) {
        double r10568 = a;
        double r10569 = expm1(r10568);
        double r10570 = sin(r10569);
        double r10571 = expm1(r10570);
        double r10572 = atan(r10568);
        double r10573 = atan2(r10571, r10572);
        double r10574 = fmod(r10573, r10568);
        double r10575 = fabs(r10574);
        return r10575;
}

double f(double a) {
        double r10576 = a;
        double r10577 = expm1(r10576);
        double r10578 = sin(r10577);
        double r10579 = expm1(r10578);
        double r10580 = atan(r10576);
        double r10581 = atan2(r10579, r10580);
        double r10582 = exp(r10581);
        double r10583 = sqrt(r10582);
        double r10584 = log(r10583);
        double r10585 = r10584 + r10584;
        double r10586 = fmod(r10585, r10576);
        double r10587 = fabs(r10586);
        return r10587;
}

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-log-exp33.4

    \[\leadsto \left|\left(\color{blue}{\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)\right|\]
  4. Using strategy rm
  5. Applied add-sqr-sqrt33.4

    \[\leadsto \left|\left(\left(\log \color{blue}{\left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}} \cdot \sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right)}\right) \bmod a\right)\right|\]
  6. Applied log-prod33.4

    \[\leadsto \left|\left(\color{blue}{\left(\log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right) + \log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right)\right)} \bmod a\right)\right|\]
  7. Final simplification33.4

    \[\leadsto \left|\left(\left(\log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right) + \log \left(\sqrt{e^{\tan^{-1}_* \frac{\mathsf{expm1}\left(\sin \left(\mathsf{expm1}\left(a\right)\right)\right)}{\tan^{-1} a}}}\right)\right) \bmod a\right)\right|\]

Reproduce

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