Average Error: 39.7 → 16.5
Time: 26.7s
Precision: 64
\[\cos \left(x + \varepsilon\right) - \cos x\]
\[\begin{array}{l} \mathbf{if}\;\varepsilon \le -3.934754991620558305595464982165609946207 \cdot 10^{-8}:\\ \;\;\;\;\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)} \cdot \sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)}\right) \cdot \sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)}}{\sin \varepsilon \cdot \sin x + \cos x \cdot \cos \varepsilon} - \cos x\\ \mathbf{elif}\;\varepsilon \le 9.775851168574081187156640883099244730994 \cdot 10^{-26}:\\ \;\;\;\;\frac{1}{6} \cdot \left(\left(x \cdot \varepsilon\right) \cdot \left(x \cdot x\right)\right) - \mathsf{fma}\left(\frac{1}{2}, \varepsilon \cdot \varepsilon, x \cdot \varepsilon\right)\\ \mathbf{else}:\\ \;\;\;\;0 \cdot \cos x + \left(\frac{\left(\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \mathsf{fma}\left(\sin \varepsilon \cdot \sin x, \sin \varepsilon \cdot \sin x - \cos x \cdot \cos \varepsilon, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right)\right)}{\mathsf{fma}\left(\cos x \cdot \cos \varepsilon, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right), \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right)\right)} - \cos x\right)\\ \end{array}\]
\cos \left(x + \varepsilon\right) - \cos x
\begin{array}{l}
\mathbf{if}\;\varepsilon \le -3.934754991620558305595464982165609946207 \cdot 10^{-8}:\\
\;\;\;\;\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)} \cdot \sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)}\right) \cdot \sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)}}{\sin \varepsilon \cdot \sin x + \cos x \cdot \cos \varepsilon} - \cos x\\

\mathbf{elif}\;\varepsilon \le 9.775851168574081187156640883099244730994 \cdot 10^{-26}:\\
\;\;\;\;\frac{1}{6} \cdot \left(\left(x \cdot \varepsilon\right) \cdot \left(x \cdot x\right)\right) - \mathsf{fma}\left(\frac{1}{2}, \varepsilon \cdot \varepsilon, x \cdot \varepsilon\right)\\

\mathbf{else}:\\
\;\;\;\;0 \cdot \cos x + \left(\frac{\left(\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \mathsf{fma}\left(\sin \varepsilon \cdot \sin x, \sin \varepsilon \cdot \sin x - \cos x \cdot \cos \varepsilon, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right)\right)}{\mathsf{fma}\left(\cos x \cdot \cos \varepsilon, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right), \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right)\right)} - \cos x\right)\\

\end{array}
double f(double x, double eps) {
        double r2437729 = x;
        double r2437730 = eps;
        double r2437731 = r2437729 + r2437730;
        double r2437732 = cos(r2437731);
        double r2437733 = cos(r2437729);
        double r2437734 = r2437732 - r2437733;
        return r2437734;
}

double f(double x, double eps) {
        double r2437735 = eps;
        double r2437736 = -3.934754991620558e-08;
        bool r2437737 = r2437735 <= r2437736;
        double r2437738 = x;
        double r2437739 = cos(r2437738);
        double r2437740 = cos(r2437735);
        double r2437741 = r2437739 * r2437740;
        double r2437742 = r2437741 * r2437741;
        double r2437743 = sin(r2437735);
        double r2437744 = sin(r2437738);
        double r2437745 = r2437743 * r2437744;
        double r2437746 = r2437745 * r2437745;
        double r2437747 = cbrt(r2437746);
        double r2437748 = r2437747 * r2437747;
        double r2437749 = r2437748 * r2437747;
        double r2437750 = r2437742 - r2437749;
        double r2437751 = r2437745 + r2437741;
        double r2437752 = r2437750 / r2437751;
        double r2437753 = r2437752 - r2437739;
        double r2437754 = 9.775851168574081e-26;
        bool r2437755 = r2437735 <= r2437754;
        double r2437756 = 0.16666666666666666;
        double r2437757 = r2437738 * r2437735;
        double r2437758 = r2437738 * r2437738;
        double r2437759 = r2437757 * r2437758;
        double r2437760 = r2437756 * r2437759;
        double r2437761 = 0.5;
        double r2437762 = r2437735 * r2437735;
        double r2437763 = fma(r2437761, r2437762, r2437757);
        double r2437764 = r2437760 - r2437763;
        double r2437765 = 0.0;
        double r2437766 = r2437765 * r2437739;
        double r2437767 = r2437742 - r2437746;
        double r2437768 = r2437745 - r2437741;
        double r2437769 = fma(r2437745, r2437768, r2437742);
        double r2437770 = r2437767 * r2437769;
        double r2437771 = r2437745 * r2437746;
        double r2437772 = fma(r2437741, r2437742, r2437771);
        double r2437773 = r2437770 / r2437772;
        double r2437774 = r2437773 - r2437739;
        double r2437775 = r2437766 + r2437774;
        double r2437776 = r2437755 ? r2437764 : r2437775;
        double r2437777 = r2437737 ? r2437753 : r2437776;
        return r2437777;
}

Error

Bits error versus x

Bits error versus eps

Derivation

  1. Split input into 3 regimes
  2. if eps < -3.934754991620558e-08

    1. Initial program 30.9

      \[\cos \left(x + \varepsilon\right) - \cos x\]
    2. Using strategy rm
    3. Applied cos-sum1.2

      \[\leadsto \color{blue}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)} - \cos x\]
    4. Using strategy rm
    5. Applied flip--1.3

      \[\leadsto \color{blue}{\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{\cos x \cdot \cos \varepsilon + \sin x \cdot \sin \varepsilon}} - \cos x\]
    6. Using strategy rm
    7. Applied add-cube-cbrt1.5

      \[\leadsto \frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \color{blue}{\left(\sqrt[3]{\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)} \cdot \sqrt[3]{\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}\right) \cdot \sqrt[3]{\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}}}{\cos x \cdot \cos \varepsilon + \sin x \cdot \sin \varepsilon} - \cos x\]

    if -3.934754991620558e-08 < eps < 9.775851168574081e-26

    1. Initial program 48.8

      \[\cos \left(x + \varepsilon\right) - \cos x\]
    2. Using strategy rm
    3. Applied cos-sum48.7

      \[\leadsto \color{blue}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)} - \cos x\]
    4. Using strategy rm
    5. Applied flip--48.7

      \[\leadsto \color{blue}{\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{\cos x \cdot \cos \varepsilon + \sin x \cdot \sin \varepsilon}} - \cos x\]
    6. Taylor expanded around 0 31.6

      \[\leadsto \color{blue}{\frac{1}{6} \cdot \left({x}^{3} \cdot \varepsilon\right) - \left(\frac{1}{2} \cdot {\varepsilon}^{2} + x \cdot \varepsilon\right)}\]
    7. Simplified31.5

      \[\leadsto \color{blue}{\left(\left(\varepsilon \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \frac{1}{6} - \mathsf{fma}\left(\frac{1}{2}, \varepsilon \cdot \varepsilon, \varepsilon \cdot x\right)}\]

    if 9.775851168574081e-26 < eps

    1. Initial program 31.7

      \[\cos \left(x + \varepsilon\right) - \cos x\]
    2. Using strategy rm
    3. Applied cos-sum3.6

      \[\leadsto \color{blue}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)} - \cos x\]
    4. Using strategy rm
    5. Applied flip--3.7

      \[\leadsto \color{blue}{\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{\cos x \cdot \cos \varepsilon + \sin x \cdot \sin \varepsilon}} - \cos x\]
    6. Using strategy rm
    7. Applied add-cube-cbrt4.0

      \[\leadsto \frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{\cos x \cdot \cos \varepsilon + \sin x \cdot \sin \varepsilon} - \color{blue}{\left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right) \cdot \sqrt[3]{\cos x}}\]
    8. Applied flip3-+4.2

      \[\leadsto \frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{\color{blue}{\frac{{\left(\cos x \cdot \cos \varepsilon\right)}^{3} + {\left(\sin x \cdot \sin \varepsilon\right)}^{3}}{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) + \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right) - \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)\right)}}} - \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right) \cdot \sqrt[3]{\cos x}\]
    9. Applied associate-/r/4.2

      \[\leadsto \color{blue}{\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{{\left(\cos x \cdot \cos \varepsilon\right)}^{3} + {\left(\sin x \cdot \sin \varepsilon\right)}^{3}} \cdot \left(\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) + \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right) - \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)\right)\right)} - \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right) \cdot \sqrt[3]{\cos x}\]
    10. Applied prod-diff4.2

      \[\leadsto \color{blue}{\mathsf{fma}\left(\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)}{{\left(\cos x \cdot \cos \varepsilon\right)}^{3} + {\left(\sin x \cdot \sin \varepsilon\right)}^{3}}, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) + \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right) - \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)\right), -\sqrt[3]{\cos x} \cdot \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right)\right) + \mathsf{fma}\left(-\sqrt[3]{\cos x}, \sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}, \sqrt[3]{\cos x} \cdot \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right)\right)}\]
    11. Simplified3.8

      \[\leadsto \color{blue}{\left(\frac{\left(\left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right) - \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \mathsf{fma}\left(\sin \varepsilon \cdot \sin x, \sin \varepsilon \cdot \sin x - \cos \varepsilon \cdot \cos x, \left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right)\right)}{\mathsf{fma}\left(\cos \varepsilon \cdot \cos x, \left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right), \left(\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right)} - \cos x\right)} + \mathsf{fma}\left(-\sqrt[3]{\cos x}, \sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}, \sqrt[3]{\cos x} \cdot \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right)\right)\]
    12. Simplified3.8

      \[\leadsto \left(\frac{\left(\left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right) - \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \mathsf{fma}\left(\sin \varepsilon \cdot \sin x, \sin \varepsilon \cdot \sin x - \cos \varepsilon \cdot \cos x, \left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right)\right)}{\mathsf{fma}\left(\cos \varepsilon \cdot \cos x, \left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right), \left(\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right)} - \cos x\right) + \color{blue}{\cos x \cdot 0}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification16.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;\varepsilon \le -3.934754991620558305595464982165609946207 \cdot 10^{-8}:\\ \;\;\;\;\frac{\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)} \cdot \sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)}\right) \cdot \sqrt[3]{\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)}}{\sin \varepsilon \cdot \sin x + \cos x \cdot \cos \varepsilon} - \cos x\\ \mathbf{elif}\;\varepsilon \le 9.775851168574081187156640883099244730994 \cdot 10^{-26}:\\ \;\;\;\;\frac{1}{6} \cdot \left(\left(x \cdot \varepsilon\right) \cdot \left(x \cdot x\right)\right) - \mathsf{fma}\left(\frac{1}{2}, \varepsilon \cdot \varepsilon, x \cdot \varepsilon\right)\\ \mathbf{else}:\\ \;\;\;\;0 \cdot \cos x + \left(\frac{\left(\left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right) - \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right) \cdot \mathsf{fma}\left(\sin \varepsilon \cdot \sin x, \sin \varepsilon \cdot \sin x - \cos x \cdot \cos \varepsilon, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right)\right)}{\mathsf{fma}\left(\cos x \cdot \cos \varepsilon, \left(\cos x \cdot \cos \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon\right), \left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\left(\sin \varepsilon \cdot \sin x\right) \cdot \left(\sin \varepsilon \cdot \sin x\right)\right)\right)} - \cos x\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019171 +o rules:numerics
(FPCore (x eps)
  :name "2cos (problem 3.3.5)"
  (- (cos (+ x eps)) (cos x)))