Average Error: 34.2 → 34.2
Time: 14.9s
Precision: 64
\[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
\[\sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt{\left(\left(\sqrt{\cosh c} \cdot \sqrt{\cosh c}\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\]
\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)
\sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt{\left(\left(\sqrt{\cosh c} \cdot \sqrt{\cosh c}\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}
double f(double a, double c) {
        double r13727 = c;
        double r13728 = cosh(r13727);
        double r13729 = a;
        double r13730 = log1p(r13729);
        double r13731 = fmod(r13728, r13730);
        return r13731;
}

double f(double a, double c) {
        double r13732 = c;
        double r13733 = cosh(r13732);
        double r13734 = a;
        double r13735 = log1p(r13734);
        double r13736 = fmod(r13733, r13735);
        double r13737 = sqrt(r13736);
        double r13738 = sqrt(r13733);
        double r13739 = r13738 * r13738;
        double r13740 = fmod(r13739, r13735);
        double r13741 = sqrt(r13740);
        double r13742 = r13737 * r13741;
        return r13742;
}

Error

Bits error versus a

Bits error versus c

Derivation

  1. Initial program 34.2

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

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

    \[\leadsto \sqrt{\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)} \cdot \sqrt{\left(\color{blue}{\left(\sqrt{\cosh c} \cdot \sqrt{\cosh c}\right)} \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)}\]
  6. Final simplification34.2

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

Reproduce

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