\cos \left(x + \varepsilon\right) - \cos x
\left(\frac{\left(\cos x \cdot \sin \left(\frac{\varepsilon}{2}\right)\right) \cdot \left(\cos x \cdot \sin \left(\frac{\varepsilon}{2}\right)\right) - \left(\cos \left(\frac{\varepsilon}{2}\right) \cdot \sin x\right) \cdot \left(\cos \left(\frac{\varepsilon}{2}\right) \cdot \sin x\right)}{\cos x \cdot \sin \left(\frac{\varepsilon}{2}\right) - \cos \left(\frac{\varepsilon}{2}\right) \cdot \sin x} \cdot -2\right) \cdot \sin \left(\frac{\varepsilon}{2}\right)double f(double x, double eps) {
double r943380 = x;
double r943381 = eps;
double r943382 = r943380 + r943381;
double r943383 = cos(r943382);
double r943384 = cos(r943380);
double r943385 = r943383 - r943384;
return r943385;
}
double f(double x, double eps) {
double r943386 = x;
double r943387 = cos(r943386);
double r943388 = eps;
double r943389 = 2.0;
double r943390 = r943388 / r943389;
double r943391 = sin(r943390);
double r943392 = r943387 * r943391;
double r943393 = r943392 * r943392;
double r943394 = cos(r943390);
double r943395 = sin(r943386);
double r943396 = r943394 * r943395;
double r943397 = r943396 * r943396;
double r943398 = r943393 - r943397;
double r943399 = r943392 - r943396;
double r943400 = r943398 / r943399;
double r943401 = -2.0;
double r943402 = r943400 * r943401;
double r943403 = r943402 * r943391;
return r943403;
}



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 sin-sum0.4
rmApplied flip-+0.4
Final simplification0.4
herbie shell --seed 2019163
(FPCore (x eps)
:name "2cos (problem 3.3.5)"
(- (cos (+ x eps)) (cos x)))