Average Error: 34.0 → 34.0
Time: 38.0s
Precision: 64
\[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
\[e^{\sqrt[3]{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right) \cdot \left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right) \cdot \log \left(\sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \left(\sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right)\right)\right)}}\]
\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)
e^{\sqrt[3]{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right) \cdot \left(\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right) \cdot \log \left(\sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \left(\sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right)\right)\right)}}
double f(double a, double c) {
        double r355320 = c;
        double r355321 = cosh(r355320);
        double r355322 = a;
        double r355323 = log1p(r355322);
        double r355324 = fmod(r355321, r355323);
        return r355324;
}

double f(double a, double c) {
        double r355325 = c;
        double r355326 = cosh(r355325);
        double r355327 = a;
        double r355328 = log1p(r355327);
        double r355329 = fmod(r355326, r355328);
        double r355330 = log(r355329);
        double r355331 = cbrt(r355329);
        double r355332 = r355331 * r355331;
        double r355333 = r355331 * r355332;
        double r355334 = log(r355333);
        double r355335 = r355330 * r355334;
        double r355336 = r355330 * r355335;
        double r355337 = cbrt(r355336);
        double r355338 = exp(r355337);
        return r355338;
}

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 add-cbrt-cube34.0

    \[\leadsto e^{\color{blue}{\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)}}}\]
  6. Using strategy rm
  7. Applied add-cube-cbrt34.0

    \[\leadsto e^{\sqrt[3]{\left(\log \color{blue}{\left(\left(\sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt[3]{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right) \cdot \sqrt[3]{\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) \cdot \log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}}\]
  8. Final simplification34.0

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

Reproduce

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