\cos \left(x + \varepsilon\right) - \cos x
\left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \cos x + \cos \left(\frac{\varepsilon}{2}\right) \cdot \sin x\right) \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot -2\right)double f(double x, double eps) {
double r790610 = x;
double r790611 = eps;
double r790612 = r790610 + r790611;
double r790613 = cos(r790612);
double r790614 = cos(r790610);
double r790615 = r790613 - r790614;
return r790615;
}
double f(double x, double eps) {
double r790616 = eps;
double r790617 = 2.0;
double r790618 = r790616 / r790617;
double r790619 = sin(r790618);
double r790620 = x;
double r790621 = cos(r790620);
double r790622 = r790619 * r790621;
double r790623 = cos(r790618);
double r790624 = sin(r790620);
double r790625 = r790623 * r790624;
double r790626 = r790622 + r790625;
double r790627 = -2.0;
double r790628 = r790619 * r790627;
double r790629 = r790626 * r790628;
return r790629;
}



Bits error versus x



Bits error versus eps
Results
Initial program 39.9
rmApplied diff-cos34.1
Simplified15.4
Taylor expanded around inf 15.4
Simplified15.4
rmApplied fma-udef15.4
Applied sin-sum0.4
Simplified0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019163 +o rules:numerics
(FPCore (x eps)
:name "2cos (problem 3.3.5)"
(- (cos (+ x eps)) (cos x)))