Average Error: 34.9 → 34.9
Time: 13.5s
Precision: 64
\[\left(\left(\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)\]
\left(\left(\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)
double f(double a, double c) {
        double r7646 = c;
        double r7647 = cosh(r7646);
        double r7648 = a;
        double r7649 = log1p(r7648);
        double r7650 = fmod(r7647, r7649);
        return r7650;
}

double f(double a, double c) {
        double r7651 = c;
        double r7652 = cosh(r7651);
        double r7653 = a;
        double r7654 = log1p(r7653);
        double r7655 = fmod(r7652, r7654);
        return r7655;
}

Error

Bits error versus a

Bits error versus c

Derivation

  1. Initial program 34.9

    \[\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\]
  2. Final simplification34.9

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

Reproduce

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