\cos \left(x + \varepsilon\right) - \cos x
\frac{\left(\sin x \cdot \cos \left(\frac{1}{2} \cdot \varepsilon\right)\right) \cdot \left(\sin x \cdot \cos \left(\frac{1}{2} \cdot \varepsilon\right)\right) - \left(\cos x \cdot \sin \left(\frac{1}{2} \cdot \varepsilon\right)\right) \cdot \left(\cos x \cdot \sin \left(\frac{1}{2} \cdot \varepsilon\right)\right)}{\sin x \cdot \cos \left(\frac{1}{2} \cdot \varepsilon\right) - \cos x \cdot \sin \left(\frac{1}{2} \cdot \varepsilon\right)} \cdot \left(\sin \left(\frac{1}{2} \cdot \varepsilon\right) \cdot -2\right)double f(double x, double eps) {
double r1026267 = x;
double r1026268 = eps;
double r1026269 = r1026267 + r1026268;
double r1026270 = cos(r1026269);
double r1026271 = cos(r1026267);
double r1026272 = r1026270 - r1026271;
return r1026272;
}
double f(double x, double eps) {
double r1026273 = x;
double r1026274 = sin(r1026273);
double r1026275 = 0.5;
double r1026276 = eps;
double r1026277 = r1026275 * r1026276;
double r1026278 = cos(r1026277);
double r1026279 = r1026274 * r1026278;
double r1026280 = r1026279 * r1026279;
double r1026281 = cos(r1026273);
double r1026282 = sin(r1026277);
double r1026283 = r1026281 * r1026282;
double r1026284 = r1026283 * r1026283;
double r1026285 = r1026280 - r1026284;
double r1026286 = r1026279 - r1026283;
double r1026287 = r1026285 / r1026286;
double r1026288 = -2.0;
double r1026289 = r1026282 * r1026288;
double r1026290 = r1026287 * r1026289;
return r1026290;
}



Bits error versus x



Bits error versus eps
Results
Initial program 39.9
rmApplied diff-cos34.2
Simplified15.3
Taylor expanded around -inf 15.3
Simplified15.3
rmApplied sin-sum0.4
rmApplied flip-+0.4
Final simplification0.4
herbie shell --seed 2019135
(FPCore (x eps)
:name "2cos (problem 3.3.5)"
(- (cos (+ x eps)) (cos x)))