Average Error: 61.3 → 59.0
Time: 59.6s
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)\]
\[\begin{array}{l} \mathbf{if}\;a \le 1.542338768776221979718923094404481642848 \cdot 10^{-162}:\\ \;\;\;\;\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(2 \cdot \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right) + \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\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)\\ \end{array}\]
\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\mathsf{log1p}\left(a\right)\right)}\right)
\begin{array}{l}
\mathbf{if}\;a \le 1.542338768776221979718923094404481642848 \cdot 10^{-162}:\\
\;\;\;\;\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(2 \cdot \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right) + \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)\right)}\right)\\

\mathbf{else}:\\
\;\;\;\;\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)\\

\end{array}
double f(double a) {
        double r17806 = a;
        double r17807 = cosh(r17806);
        double r17808 = r17806 * r17806;
        double r17809 = fmod(r17807, r17808);
        double r17810 = log1p(r17806);
        double r17811 = pow(r17809, r17810);
        double r17812 = acos(r17811);
        return r17812;
}

double f(double a) {
        double r17813 = a;
        double r17814 = 1.542338768776222e-162;
        bool r17815 = r17813 <= r17814;
        double r17816 = cosh(r17813);
        double r17817 = r17813 * r17813;
        double r17818 = fmod(r17816, r17817);
        double r17819 = 2.0;
        double r17820 = log1p(r17813);
        double r17821 = exp(r17820);
        double r17822 = cbrt(r17821);
        double r17823 = log(r17822);
        double r17824 = r17819 * r17823;
        double r17825 = r17824 + r17823;
        double r17826 = pow(r17818, r17825);
        double r17827 = acos(r17826);
        double r17828 = exp(r17818);
        double r17829 = log(r17828);
        double r17830 = pow(r17829, r17820);
        double r17831 = acos(r17830);
        double r17832 = r17815 ? r17827 : r17831;
        return r17832;
}

Error

Bits error versus a

Derivation

  1. Split input into 2 regimes
  2. if a < 1.542338768776222e-162

    1. Initial program 64.0

      \[\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-exp61.3

      \[\leadsto \cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\color{blue}{\left(\log \left(e^{\mathsf{log1p}\left(a\right)}\right)\right)}}\right)\]
    4. Using strategy rm
    5. Applied add-cube-cbrt61.3

      \[\leadsto \cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\log \color{blue}{\left(\left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right) \cdot \sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)}\right)}\right)\]
    6. Applied log-prod61.3

      \[\leadsto \cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\color{blue}{\left(\log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}} \cdot \sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right) + \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)\right)}}\right)\]
    7. Simplified61.3

      \[\leadsto \cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(\color{blue}{2 \cdot \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)} + \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)\right)}\right)\]

    if 1.542338768776222e-162 < a

    1. Initial program 58.8

      \[\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-exp56.9

      \[\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)\]
  3. Recombined 2 regimes into one program.
  4. Final simplification59.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;a \le 1.542338768776221979718923094404481642848 \cdot 10^{-162}:\\ \;\;\;\;\cos^{-1} \left({\left(\left(\cosh a\right) \bmod \left(a \cdot a\right)\right)}^{\left(2 \cdot \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right) + \log \left(\sqrt[3]{e^{\mathsf{log1p}\left(a\right)}}\right)\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;\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)\\ \end{array}\]

Reproduce

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