\cos \left(x + \varepsilon\right) - \cos x
-2 \cdot \left(\left(\cos \left(\varepsilon \cdot \frac{1}{2}\right) \cdot \sin x + \left(\sin \left(\varepsilon \cdot \frac{1}{2}\right) \cdot \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right)\right) \cdot \sqrt[3]{\cos x}\right) \cdot \sin \left(\varepsilon \cdot \frac{1}{2}\right)\right)double f(double x, double eps) {
double r2522615 = x;
double r2522616 = eps;
double r2522617 = r2522615 + r2522616;
double r2522618 = cos(r2522617);
double r2522619 = cos(r2522615);
double r2522620 = r2522618 - r2522619;
return r2522620;
}
double f(double x, double eps) {
double r2522621 = -2.0;
double r2522622 = eps;
double r2522623 = 0.5;
double r2522624 = r2522622 * r2522623;
double r2522625 = cos(r2522624);
double r2522626 = x;
double r2522627 = sin(r2522626);
double r2522628 = r2522625 * r2522627;
double r2522629 = sin(r2522624);
double r2522630 = cos(r2522626);
double r2522631 = cbrt(r2522630);
double r2522632 = r2522631 * r2522631;
double r2522633 = r2522629 * r2522632;
double r2522634 = r2522633 * r2522631;
double r2522635 = r2522628 + r2522634;
double r2522636 = r2522635 * r2522629;
double r2522637 = r2522621 * r2522636;
return r2522637;
}



Bits error versus x



Bits error versus eps
Results
Initial program 39.5
rmApplied diff-cos34.2
Simplified15.3
Taylor expanded around inf 15.3
Simplified15.3
rmApplied fma-udef15.3
Applied sin-sum0.4
rmApplied add-cube-cbrt0.5
Applied associate-*r*0.5
Final simplification0.5
herbie shell --seed 2019169 +o rules:numerics
(FPCore (x eps)
:name "2cos (problem 3.3.5)"
(- (cos (+ x eps)) (cos x)))