Average Error: 33.7 → 33.4
Time: 36.2s
Precision: 64
\[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
\[\left(\left(\cosh c\right) \bmod \left(\left(\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]
\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)
\left(\left(\cosh c\right) \bmod \left(\left(\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)
double f(double a, double c) {
        double r21381 = c;
        double r21382 = cosh(r21381);
        double r21383 = a;
        double r21384 = log1p(r21383);
        double r21385 = fmod(r21382, r21384);
        return r21385;
}

double f(double a, double c) {
        double r21386 = c;
        double r21387 = cosh(r21386);
        double r21388 = a;
        double r21389 = log1p(r21388);
        double r21390 = cbrt(r21389);
        double r21391 = cbrt(r21390);
        double r21392 = r21391 * r21391;
        double r21393 = r21391 * r21392;
        double r21394 = cbrt(r21393);
        double r21395 = r21390 * r21390;
        double r21396 = cbrt(r21395);
        double r21397 = r21394 * r21396;
        double r21398 = cbrt(r21397);
        double r21399 = r21398 * r21396;
        double r21400 = r21390 * r21399;
        double r21401 = r21400 * r21390;
        double r21402 = fmod(r21387, r21401);
        return r21402;
}

Error

Bits error versus a

Bits error versus c

Derivation

  1. Initial program 33.7

    \[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
  2. Using strategy rm
  3. Applied add-cube-cbrt33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \color{blue}{\left(\left(\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)}\right)\]
  4. Using strategy rm
  5. Applied add-cube-cbrt33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \left(\left(\sqrt[3]{\color{blue}{\left(\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]
  6. Applied cbrt-prod33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \left(\left(\color{blue}{\left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]
  7. Using strategy rm
  8. Applied add-cube-cbrt33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \left(\left(\left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\color{blue}{\left(\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}}}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]
  9. Applied cbrt-prod33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \left(\left(\left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\color{blue}{\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}}}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]
  10. Using strategy rm
  11. Applied add-cube-cbrt33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \left(\left(\left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}}}}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]
  12. Final simplification33.4

    \[\leadsto \left(\left(\cosh c\right) \bmod \left(\left(\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \left(\sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{log1p}\left(a\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}}\right)\right) \cdot \sqrt[3]{\mathsf{log1p}\left(a\right)}\right)\right)\]

Reproduce

herbie shell --seed 2019194 +o rules:numerics
(FPCore (a c)
  :name "Random Jason Timeout Test 004"
  (fmod (cosh c) (log1p a)))