Average Error: 31.3 → 0.3
Time: 12.4s
Precision: 64
\[\frac{1 - \cos x}{x \cdot x}\]
\[\begin{array}{l} \mathbf{if}\;x \le -0.03237572141906872036365427902637748047709:\\ \;\;\;\;\frac{\frac{\frac{{1}^{3} - \log \left(e^{{\left(\cos x\right)}^{3}}\right)}{\cos x \cdot \frac{{\left(\cos x\right)}^{3} + {1}^{3}}{\cos x \cdot \left(\cos x - 1\right) + 1 \cdot 1} + 1 \cdot 1}}{x}}{x}\\ \mathbf{elif}\;x \le 0.03382760307135756344676380535929638426751:\\ \;\;\;\;\left(\frac{1}{720} \cdot {x}^{4} + \frac{1}{2}\right) - \frac{1}{24} \cdot {x}^{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\frac{{1}^{3} - \log \left(e^{\left(\cos x \cdot \cos x\right) \cdot \cos x}\right)}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\\ \end{array}\]
\frac{1 - \cos x}{x \cdot x}
\begin{array}{l}
\mathbf{if}\;x \le -0.03237572141906872036365427902637748047709:\\
\;\;\;\;\frac{\frac{\frac{{1}^{3} - \log \left(e^{{\left(\cos x\right)}^{3}}\right)}{\cos x \cdot \frac{{\left(\cos x\right)}^{3} + {1}^{3}}{\cos x \cdot \left(\cos x - 1\right) + 1 \cdot 1} + 1 \cdot 1}}{x}}{x}\\

\mathbf{elif}\;x \le 0.03382760307135756344676380535929638426751:\\
\;\;\;\;\left(\frac{1}{720} \cdot {x}^{4} + \frac{1}{2}\right) - \frac{1}{24} \cdot {x}^{2}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{\frac{{1}^{3} - \log \left(e^{\left(\cos x \cdot \cos x\right) \cdot \cos x}\right)}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\\

\end{array}
double f(double x) {
        double r21540 = 1.0;
        double r21541 = x;
        double r21542 = cos(r21541);
        double r21543 = r21540 - r21542;
        double r21544 = r21541 * r21541;
        double r21545 = r21543 / r21544;
        return r21545;
}

double f(double x) {
        double r21546 = x;
        double r21547 = -0.03237572141906872;
        bool r21548 = r21546 <= r21547;
        double r21549 = 1.0;
        double r21550 = 3.0;
        double r21551 = pow(r21549, r21550);
        double r21552 = cos(r21546);
        double r21553 = pow(r21552, r21550);
        double r21554 = exp(r21553);
        double r21555 = log(r21554);
        double r21556 = r21551 - r21555;
        double r21557 = r21553 + r21551;
        double r21558 = r21552 - r21549;
        double r21559 = r21552 * r21558;
        double r21560 = r21549 * r21549;
        double r21561 = r21559 + r21560;
        double r21562 = r21557 / r21561;
        double r21563 = r21552 * r21562;
        double r21564 = r21563 + r21560;
        double r21565 = r21556 / r21564;
        double r21566 = r21565 / r21546;
        double r21567 = r21566 / r21546;
        double r21568 = 0.03382760307135756;
        bool r21569 = r21546 <= r21568;
        double r21570 = 0.001388888888888889;
        double r21571 = 4.0;
        double r21572 = pow(r21546, r21571);
        double r21573 = r21570 * r21572;
        double r21574 = 0.5;
        double r21575 = r21573 + r21574;
        double r21576 = 0.041666666666666664;
        double r21577 = 2.0;
        double r21578 = pow(r21546, r21577);
        double r21579 = r21576 * r21578;
        double r21580 = r21575 - r21579;
        double r21581 = r21552 * r21552;
        double r21582 = r21581 * r21552;
        double r21583 = exp(r21582);
        double r21584 = log(r21583);
        double r21585 = r21551 - r21584;
        double r21586 = r21549 + r21552;
        double r21587 = r21552 * r21586;
        double r21588 = r21587 + r21560;
        double r21589 = r21585 / r21588;
        double r21590 = r21589 / r21546;
        double r21591 = r21590 / r21546;
        double r21592 = r21569 ? r21580 : r21591;
        double r21593 = r21548 ? r21567 : r21592;
        return r21593;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if x < -0.03237572141906872

    1. Initial program 1.1

      \[\frac{1 - \cos x}{x \cdot x}\]
    2. Using strategy rm
    3. Applied associate-/r*0.5

      \[\leadsto \color{blue}{\frac{\frac{1 - \cos x}{x}}{x}}\]
    4. Using strategy rm
    5. Applied flip3--0.5

      \[\leadsto \frac{\frac{\color{blue}{\frac{{1}^{3} - {\left(\cos x\right)}^{3}}{1 \cdot 1 + \left(\cos x \cdot \cos x + 1 \cdot \cos x\right)}}}{x}}{x}\]
    6. Simplified0.5

      \[\leadsto \frac{\frac{\frac{{1}^{3} - {\left(\cos x\right)}^{3}}{\color{blue}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}}{x}}{x}\]
    7. Using strategy rm
    8. Applied add-log-exp0.6

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \color{blue}{\log \left(e^{{\left(\cos x\right)}^{3}}\right)}}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\]
    9. Using strategy rm
    10. Applied flip3-+0.6

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \log \left(e^{{\left(\cos x\right)}^{3}}\right)}{\cos x \cdot \color{blue}{\frac{{1}^{3} + {\left(\cos x\right)}^{3}}{1 \cdot 1 + \left(\cos x \cdot \cos x - 1 \cdot \cos x\right)}} + 1 \cdot 1}}{x}}{x}\]
    11. Simplified0.6

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \log \left(e^{{\left(\cos x\right)}^{3}}\right)}{\cos x \cdot \frac{\color{blue}{{\left(\cos x\right)}^{3} + {1}^{3}}}{1 \cdot 1 + \left(\cos x \cdot \cos x - 1 \cdot \cos x\right)} + 1 \cdot 1}}{x}}{x}\]
    12. Simplified0.6

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \log \left(e^{{\left(\cos x\right)}^{3}}\right)}{\cos x \cdot \frac{{\left(\cos x\right)}^{3} + {1}^{3}}{\color{blue}{\cos x \cdot \left(\cos x - 1\right) + 1 \cdot 1}} + 1 \cdot 1}}{x}}{x}\]

    if -0.03237572141906872 < x < 0.03382760307135756

    1. Initial program 62.2

      \[\frac{1 - \cos x}{x \cdot x}\]
    2. Taylor expanded around 0 0.0

      \[\leadsto \color{blue}{\left(\frac{1}{720} \cdot {x}^{4} + \frac{1}{2}\right) - \frac{1}{24} \cdot {x}^{2}}\]

    if 0.03382760307135756 < x

    1. Initial program 0.9

      \[\frac{1 - \cos x}{x \cdot x}\]
    2. Using strategy rm
    3. Applied associate-/r*0.5

      \[\leadsto \color{blue}{\frac{\frac{1 - \cos x}{x}}{x}}\]
    4. Using strategy rm
    5. Applied flip3--0.5

      \[\leadsto \frac{\frac{\color{blue}{\frac{{1}^{3} - {\left(\cos x\right)}^{3}}{1 \cdot 1 + \left(\cos x \cdot \cos x + 1 \cdot \cos x\right)}}}{x}}{x}\]
    6. Simplified0.5

      \[\leadsto \frac{\frac{\frac{{1}^{3} - {\left(\cos x\right)}^{3}}{\color{blue}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}}{x}}{x}\]
    7. Using strategy rm
    8. Applied add-log-exp0.6

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \color{blue}{\log \left(e^{{\left(\cos x\right)}^{3}}\right)}}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\]
    9. Using strategy rm
    10. Applied add-cbrt-cube0.7

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \log \left(e^{{\color{blue}{\left(\sqrt[3]{\left(\cos x \cdot \cos x\right) \cdot \cos x}\right)}}^{3}}\right)}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\]
    11. Applied rem-cube-cbrt0.6

      \[\leadsto \frac{\frac{\frac{{1}^{3} - \log \left(e^{\color{blue}{\left(\cos x \cdot \cos x\right) \cdot \cos x}}\right)}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification0.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -0.03237572141906872036365427902637748047709:\\ \;\;\;\;\frac{\frac{\frac{{1}^{3} - \log \left(e^{{\left(\cos x\right)}^{3}}\right)}{\cos x \cdot \frac{{\left(\cos x\right)}^{3} + {1}^{3}}{\cos x \cdot \left(\cos x - 1\right) + 1 \cdot 1} + 1 \cdot 1}}{x}}{x}\\ \mathbf{elif}\;x \le 0.03382760307135756344676380535929638426751:\\ \;\;\;\;\left(\frac{1}{720} \cdot {x}^{4} + \frac{1}{2}\right) - \frac{1}{24} \cdot {x}^{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\frac{{1}^{3} - \log \left(e^{\left(\cos x \cdot \cos x\right) \cdot \cos x}\right)}{\cos x \cdot \left(1 + \cos x\right) + 1 \cdot 1}}{x}}{x}\\ \end{array}\]

Reproduce

herbie shell --seed 2019212 
(FPCore (x)
  :name "cos2 (problem 3.4.1)"
  :precision binary64
  (/ (- 1 (cos x)) (* x x)))