Average Error: 34.0 → 34.0
Time: 14.2s
Precision: 64
\[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
\[{e}^{\left(\sqrt[3]{{\left(\sqrt[3]{{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right)}^{3}}\right)}^{3}}\right)}\]
\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)
{e}^{\left(\sqrt[3]{{\left(\sqrt[3]{{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right)}^{3}}\right)}^{3}}\right)}
double f(double a, double c) {
        double r14389 = c;
        double r14390 = cosh(r14389);
        double r14391 = a;
        double r14392 = log1p(r14391);
        double r14393 = fmod(r14390, r14392);
        return r14393;
}

double f(double a, double c) {
        double r14394 = exp(1.0);
        double r14395 = c;
        double r14396 = cosh(r14395);
        double r14397 = a;
        double r14398 = log1p(r14397);
        double r14399 = fmod(r14396, r14398);
        double r14400 = log(r14399);
        double r14401 = 3.0;
        double r14402 = pow(r14400, r14401);
        double r14403 = cbrt(r14402);
        double r14404 = pow(r14403, r14401);
        double r14405 = cbrt(r14404);
        double r14406 = pow(r14394, r14405);
        return r14406;
}

Error

Bits error versus a

Bits error versus c

Derivation

  1. Initial program 34.0

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

    \[\leadsto \color{blue}{e^{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}}\]
  4. Using strategy rm
  5. Applied pow134.0

    \[\leadsto e^{\log \color{blue}{\left({\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}^{1}\right)}}\]
  6. Applied log-pow34.0

    \[\leadsto e^{\color{blue}{1 \cdot \log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}}\]
  7. Applied exp-prod34.0

    \[\leadsto \color{blue}{{\left(e^{1}\right)}^{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right)}}\]
  8. Simplified34.0

    \[\leadsto {\color{blue}{e}}^{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right)}\]
  9. Using strategy rm
  10. Applied add-cbrt-cube34.0

    \[\leadsto {e}^{\color{blue}{\left(\sqrt[3]{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right) \cdot \log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right) \cdot \log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right)}}\]
  11. Simplified34.0

    \[\leadsto {e}^{\left(\sqrt[3]{\color{blue}{{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right)}^{3}}}\right)}\]
  12. Using strategy rm
  13. Applied add-cbrt-cube34.0

    \[\leadsto {e}^{\left(\sqrt[3]{{\color{blue}{\left(\sqrt[3]{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right) \cdot \log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right) \cdot \log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right)}}^{3}}\right)}\]
  14. Simplified34.0

    \[\leadsto {e}^{\left(\sqrt[3]{{\left(\sqrt[3]{\color{blue}{{\left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\right)}^{3}}}\right)}^{3}}\right)}\]
  15. Final simplification34.0

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

Reproduce

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