Average Error: 39.7 → 15.9
Time: 9.3s
Precision: 64
\[\cos \left(x + \varepsilon\right) - \cos x\]
\[\begin{array}{l} \mathbf{if}\;\varepsilon \le -1.4155618696900624 \cdot 10^{-10}:\\ \;\;\;\;\frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\frac{\left({\left(\cos \varepsilon \cdot \cos x\right)}^{3} - {\left(\sin x \cdot \sin \varepsilon\right)}^{3}\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x \cdot \cos x\right)}{\left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x\right) \cdot \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon + \cos \varepsilon \cdot \cos x\right) + {\left(\cos \varepsilon\right)}^{2} \cdot {\left(\cos x\right)}^{2}\right)} + \cos x \cdot \cos x}\\ \mathbf{elif}\;\varepsilon \le 1.23057486602459758 \cdot 10^{-7}:\\ \;\;\;\;\frac{\frac{7}{8} \cdot {\varepsilon}^{4} - \left(3 \cdot \left(x \cdot \varepsilon\right) + \frac{3}{2} \cdot {\varepsilon}^{2}\right)}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}\\ \mathbf{else}:\\ \;\;\;\;\left(\cos x \cdot \cos \varepsilon - \left(\sqrt[3]{\sin x \cdot \sin \varepsilon} \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) - \cos x\\ \end{array}\]
\cos \left(x + \varepsilon\right) - \cos x
\begin{array}{l}
\mathbf{if}\;\varepsilon \le -1.4155618696900624 \cdot 10^{-10}:\\
\;\;\;\;\frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\frac{\left({\left(\cos \varepsilon \cdot \cos x\right)}^{3} - {\left(\sin x \cdot \sin \varepsilon\right)}^{3}\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x \cdot \cos x\right)}{\left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x\right) \cdot \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon + \cos \varepsilon \cdot \cos x\right) + {\left(\cos \varepsilon\right)}^{2} \cdot {\left(\cos x\right)}^{2}\right)} + \cos x \cdot \cos x}\\

\mathbf{elif}\;\varepsilon \le 1.23057486602459758 \cdot 10^{-7}:\\
\;\;\;\;\frac{\frac{7}{8} \cdot {\varepsilon}^{4} - \left(3 \cdot \left(x \cdot \varepsilon\right) + \frac{3}{2} \cdot {\varepsilon}^{2}\right)}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}\\

\mathbf{else}:\\
\;\;\;\;\left(\cos x \cdot \cos \varepsilon - \left(\sqrt[3]{\sin x \cdot \sin \varepsilon} \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) - \cos x\\

\end{array}
double f(double x, double eps) {
        double r67488 = x;
        double r67489 = eps;
        double r67490 = r67488 + r67489;
        double r67491 = cos(r67490);
        double r67492 = cos(r67488);
        double r67493 = r67491 - r67492;
        return r67493;
}

double f(double x, double eps) {
        double r67494 = eps;
        double r67495 = -1.4155618696900624e-10;
        bool r67496 = r67494 <= r67495;
        double r67497 = x;
        double r67498 = cos(r67497);
        double r67499 = cos(r67494);
        double r67500 = r67498 * r67499;
        double r67501 = sin(r67497);
        double r67502 = sin(r67494);
        double r67503 = r67501 * r67502;
        double r67504 = r67500 - r67503;
        double r67505 = 3.0;
        double r67506 = pow(r67504, r67505);
        double r67507 = pow(r67498, r67505);
        double r67508 = r67506 - r67507;
        double r67509 = r67499 * r67498;
        double r67510 = pow(r67509, r67505);
        double r67511 = pow(r67503, r67505);
        double r67512 = r67510 - r67511;
        double r67513 = r67504 * r67504;
        double r67514 = r67498 * r67498;
        double r67515 = r67513 - r67514;
        double r67516 = r67512 * r67515;
        double r67517 = r67504 - r67498;
        double r67518 = r67503 + r67509;
        double r67519 = r67503 * r67518;
        double r67520 = 2.0;
        double r67521 = pow(r67499, r67520);
        double r67522 = pow(r67498, r67520);
        double r67523 = r67521 * r67522;
        double r67524 = r67519 + r67523;
        double r67525 = r67517 * r67524;
        double r67526 = r67516 / r67525;
        double r67527 = r67526 + r67514;
        double r67528 = r67508 / r67527;
        double r67529 = 1.2305748660245976e-07;
        bool r67530 = r67494 <= r67529;
        double r67531 = 0.875;
        double r67532 = 4.0;
        double r67533 = pow(r67494, r67532);
        double r67534 = r67531 * r67533;
        double r67535 = r67497 * r67494;
        double r67536 = r67505 * r67535;
        double r67537 = 1.5;
        double r67538 = pow(r67494, r67520);
        double r67539 = r67537 * r67538;
        double r67540 = r67536 + r67539;
        double r67541 = r67534 - r67540;
        double r67542 = r67509 - r67503;
        double r67543 = r67504 + r67498;
        double r67544 = r67542 * r67543;
        double r67545 = r67544 + r67514;
        double r67546 = r67541 / r67545;
        double r67547 = cbrt(r67503);
        double r67548 = r67547 * r67547;
        double r67549 = r67548 * r67547;
        double r67550 = r67500 - r67549;
        double r67551 = r67550 - r67498;
        double r67552 = r67530 ? r67546 : r67551;
        double r67553 = r67496 ? r67528 : r67552;
        return r67553;
}

Error

Bits error versus x

Bits error versus eps

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if eps < -1.4155618696900624e-10

    1. Initial program 31.0

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

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

      \[\leadsto \color{blue}{\frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \left(\cos x \cdot \cos x + \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \cos x\right)}}\]
    6. Simplified1.7

      \[\leadsto \frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\color{blue}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}}\]
    7. Using strategy rm
    8. Applied flip-+1.7

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

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

      \[\leadsto \frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\color{blue}{\frac{\left({\left(\cos \varepsilon \cdot \cos x\right)}^{3} - {\left(\sin x \cdot \sin \varepsilon\right)}^{3}\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x \cdot \cos x\right)}{\left(\left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\cos \varepsilon \cdot \cos x\right) + \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon\right) + \left(\cos \varepsilon \cdot \cos x\right) \cdot \left(\sin x \cdot \sin \varepsilon\right)\right)\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x\right)}} + \cos x \cdot \cos x}\]
    11. Simplified1.7

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

    if -1.4155618696900624e-10 < eps < 1.2305748660245976e-07

    1. Initial program 49.1

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

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

      \[\leadsto \color{blue}{\frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \left(\cos x \cdot \cos x + \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \cos x\right)}}\]
    6. Simplified48.8

      \[\leadsto \frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\color{blue}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}}\]
    7. Taylor expanded around inf 48.8

      \[\leadsto \frac{\color{blue}{\left({\left(\cos x\right)}^{3} \cdot {\left(\cos \varepsilon\right)}^{3} + 3 \cdot \left(\cos \varepsilon \cdot \left({\left(\sin x\right)}^{2} \cdot \left({\left(\sin \varepsilon\right)}^{2} \cdot \cos x\right)\right)\right)\right) - \left({\left(\cos x\right)}^{3} + \left(3 \cdot \left({\left(\cos \varepsilon\right)}^{2} \cdot \left(\sin x \cdot \left(\sin \varepsilon \cdot {\left(\cos x\right)}^{2}\right)\right)\right) + {\left(\sin x\right)}^{3} \cdot {\left(\sin \varepsilon\right)}^{3}\right)\right)}}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}\]
    8. Simplified48.8

      \[\leadsto \frac{\color{blue}{{\left(\cos \varepsilon \cdot \cos x\right)}^{3} + \left(3 \cdot \left(\cos x \cdot \left({\left(\sin x\right)}^{2} \cdot \left({\left(\sin \varepsilon\right)}^{2} \cdot \cos \varepsilon\right)\right)\right) - \left(\left({\left(\cos x\right)}^{3} + 3 \cdot \left({\left(\cos x\right)}^{2} \cdot \left(\sin x \cdot \left(\sin \varepsilon \cdot {\left(\cos \varepsilon\right)}^{2}\right)\right)\right)\right) + {\left(\sin x \cdot \sin \varepsilon\right)}^{3}\right)\right)}}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}\]
    9. Taylor expanded around 0 30.8

      \[\leadsto \frac{\color{blue}{\frac{7}{8} \cdot {\varepsilon}^{4} - \left(3 \cdot \left(x \cdot \varepsilon\right) + \frac{3}{2} \cdot {\varepsilon}^{2}\right)}}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}\]

    if 1.2305748660245976e-07 < eps

    1. Initial program 30.3

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

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

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \color{blue}{\left(\sqrt[3]{\sin x \cdot \sin \varepsilon} \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}}\right) - \cos x\]
  3. Recombined 3 regimes into one program.
  4. Final simplification15.9

    \[\leadsto \begin{array}{l} \mathbf{if}\;\varepsilon \le -1.4155618696900624 \cdot 10^{-10}:\\ \;\;\;\;\frac{{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)}^{3} - {\left(\cos x\right)}^{3}}{\frac{\left({\left(\cos \varepsilon \cdot \cos x\right)}^{3} - {\left(\sin x \cdot \sin \varepsilon\right)}^{3}\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) \cdot \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x \cdot \cos x\right)}{\left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x\right) \cdot \left(\left(\sin x \cdot \sin \varepsilon\right) \cdot \left(\sin x \cdot \sin \varepsilon + \cos \varepsilon \cdot \cos x\right) + {\left(\cos \varepsilon\right)}^{2} \cdot {\left(\cos x\right)}^{2}\right)} + \cos x \cdot \cos x}\\ \mathbf{elif}\;\varepsilon \le 1.23057486602459758 \cdot 10^{-7}:\\ \;\;\;\;\frac{\frac{7}{8} \cdot {\varepsilon}^{4} - \left(3 \cdot \left(x \cdot \varepsilon\right) + \frac{3}{2} \cdot {\varepsilon}^{2}\right)}{\left(\cos \varepsilon \cdot \cos x - \sin x \cdot \sin \varepsilon\right) \cdot \left(\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) + \cos x\right) + \cos x \cdot \cos x}\\ \mathbf{else}:\\ \;\;\;\;\left(\cos x \cdot \cos \varepsilon - \left(\sqrt[3]{\sin x \cdot \sin \varepsilon} \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) \cdot \sqrt[3]{\sin x \cdot \sin \varepsilon}\right) - \cos x\\ \end{array}\]

Reproduce

herbie shell --seed 2020062 
(FPCore (x eps)
  :name "2cos (problem 3.3.5)"
  :precision binary64
  (- (cos (+ x eps)) (cos x)))