Average Error: 61.1 → 60.2
Time: 35.2s
Precision: 64
\[\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\]
\[\cos^{-1} \left({\left(\log \left(e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\]
\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)
\cos^{-1} \left({\left(\log \left(e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)
double f(double a) {
        double r10777 = a;
        double r10778 = cosh(r10777);
        double r10779 = r10777 * r10777;
        double r10780 = fmod(r10778, r10779);
        double r10781 = log1p(r10777);
        double r10782 = pow(r10780, r10781);
        double r10783 = acos(r10782);
        return r10783;
}

double f(double a) {
        double r10784 = a;
        double r10785 = cosh(r10784);
        double r10786 = r10784 * r10784;
        double r10787 = fmod(r10785, r10786);
        double r10788 = exp(r10787);
        double r10789 = log(r10788);
        double r10790 = log1p(r10784);
        double r10791 = pow(r10789, r10790);
        double r10792 = acos(r10791);
        return r10792;
}

Error

Bits error versus a

Derivation

  1. Initial program 61.1

    \[\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\]
  2. Using strategy rm
  3. Applied add-log-exp60.2

    \[\leadsto \cos^{-1} \left({\color{blue}{\left(\log \left(e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right)\right)}}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\]
  4. Final simplification60.2

    \[\leadsto \cos^{-1} \left({\left(\log \left(e^{\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)\]

Reproduce

herbie shell --seed 2020046 
(FPCore (a)
  :name "Random Jason Timeout Test 012"
  :precision binary64
  (acos (pow (fmod (cosh a) (* a a)) (log1p a))))