Average Error: 34.8 → 34.8
Time: 13.5s
Precision: 64
\[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
\[{e}^{\left(\frac{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}{2}\right)} \cdot {e}^{\left(\frac{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}{2}\right)}\]
\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)
{e}^{\left(\frac{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}{2}\right)} \cdot {e}^{\left(\frac{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}{2}\right)}
double f(double a, double c) {
        double r9607 = c;
        double r9608 = cosh(r9607);
        double r9609 = a;
        double r9610 = log1p(r9609);
        double r9611 = fmod(r9608, r9610);
        return r9611;
}

double f(double a, double c) {
        double r9612 = exp(1.0);
        double r9613 = c;
        double r9614 = cosh(r9613);
        double r9615 = a;
        double r9616 = log1p(r9615);
        double r9617 = fmod(r9614, r9616);
        double r9618 = log(r9617);
        double r9619 = 2.0;
        double r9620 = r9618 / r9619;
        double r9621 = pow(r9612, r9620);
        double r9622 = r9621 * r9621;
        return r9622;
}

Error

Bits error versus a

Bits error versus c

Derivation

  1. Initial program 34.8

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

    \[\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.8

    \[\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.8

    \[\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.8

    \[\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.8

    \[\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-sqr-sqrt34.8

    \[\leadsto {e}^{\left(\log \color{blue}{\left(\sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right)}\right)}\]
  11. Applied log-prod34.8

    \[\leadsto {e}^{\color{blue}{\left(\log \left(\sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right) + \log \left(\sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\right)\right)}}\]
  12. Applied unpow-prod-up34.8

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

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

    \[\leadsto {e}^{\left(\frac{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}{2}\right)} \cdot \color{blue}{{e}^{\left(\frac{\log \left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}{2}\right)}}\]
  15. Final simplification34.8

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

Reproduce

herbie shell --seed 2019356 
(FPCore (a c)
  :name "Random Jason Timeout Test 004"
  :precision binary64
  (fmod (cosh c) (log1p a)))