\frac{1 - \cos x}{x \cdot x}\begin{array}{l}
\mathbf{if}\;x \le -0.03115379972147733905751820771001803223044:\\
\;\;\;\;\frac{\frac{1 - \cos x}{x}}{x}\\
\mathbf{elif}\;x \le 0.02739005695178562543867784029316680971533:\\
\;\;\;\;\frac{1}{2} + \left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{1}{720} + \frac{-1}{24}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1 - \cos x}{x}}{x}\\
\end{array}double f(double x) {
double r897396 = 1.0;
double r897397 = x;
double r897398 = cos(r897397);
double r897399 = r897396 - r897398;
double r897400 = r897397 * r897397;
double r897401 = r897399 / r897400;
return r897401;
}
double f(double x) {
double r897402 = x;
double r897403 = -0.03115379972147734;
bool r897404 = r897402 <= r897403;
double r897405 = 1.0;
double r897406 = cos(r897402);
double r897407 = r897405 - r897406;
double r897408 = r897407 / r897402;
double r897409 = r897408 / r897402;
double r897410 = 0.027390056951785625;
bool r897411 = r897402 <= r897410;
double r897412 = 0.5;
double r897413 = r897402 * r897402;
double r897414 = 0.001388888888888889;
double r897415 = r897413 * r897414;
double r897416 = -0.041666666666666664;
double r897417 = r897415 + r897416;
double r897418 = r897413 * r897417;
double r897419 = r897412 + r897418;
double r897420 = r897411 ? r897419 : r897409;
double r897421 = r897404 ? r897409 : r897420;
return r897421;
}



Bits error versus x
Results
if x < -0.03115379972147734 or 0.027390056951785625 < x Initial program 1.0
rmApplied *-un-lft-identity1.0
Applied times-frac0.5
rmApplied associate-*r/0.5
Simplified0.5
if -0.03115379972147734 < x < 0.027390056951785625Initial program 62.4
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.2
herbie shell --seed 2019172
(FPCore (x)
:name "cos2 (problem 3.4.1)"
(/ (- 1.0 (cos x)) (* x x)))