\cos \left(x + \varepsilon\right) - \cos x
\left(\sin \left(\frac{1}{2} \cdot \varepsilon\right) \cdot \cos x + \sqrt[3]{\left(\sin x \cdot \cos \left(\frac{1}{2} \cdot \varepsilon\right)\right) \cdot \left(\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)\right)}\right) \cdot \left(\sin \left(\frac{1}{2} \cdot \varepsilon\right) \cdot -2\right)double f(double x, double eps) {
double r4604033 = x;
double r4604034 = eps;
double r4604035 = r4604033 + r4604034;
double r4604036 = cos(r4604035);
double r4604037 = cos(r4604033);
double r4604038 = r4604036 - r4604037;
return r4604038;
}
double f(double x, double eps) {
double r4604039 = 0.5;
double r4604040 = eps;
double r4604041 = r4604039 * r4604040;
double r4604042 = sin(r4604041);
double r4604043 = x;
double r4604044 = cos(r4604043);
double r4604045 = r4604042 * r4604044;
double r4604046 = sin(r4604043);
double r4604047 = cos(r4604041);
double r4604048 = r4604046 * r4604047;
double r4604049 = r4604048 * r4604048;
double r4604050 = r4604048 * r4604049;
double r4604051 = cbrt(r4604050);
double r4604052 = r4604045 + r4604051;
double r4604053 = -2.0;
double r4604054 = r4604042 * r4604053;
double r4604055 = r4604052 * r4604054;
return r4604055;
}



Bits error versus x



Bits error versus eps
Results
Initial program 39.6
rmApplied diff-cos33.9
Simplified14.7
Taylor expanded around -inf 14.7
Simplified14.6
rmApplied sin-sum0.4
rmApplied add-cbrt-cube0.4
Applied add-cbrt-cube1.1
Applied cbrt-unprod1.0
Simplified1.0
Final simplification1.0
herbie shell --seed 2019125
(FPCore (x eps)
:name "2cos (problem 3.3.5)"
(- (cos (+ x eps)) (cos x)))