\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\frac{\cos \left(2 \cdot x\right)}{{\left(\left|sin \cdot \left(x \cdot cos\right)\right|\right)}^{2}}double f(double x, double cos, double sin) {
double r64174 = 2.0;
double r64175 = x;
double r64176 = r64174 * r64175;
double r64177 = cos(r64176);
double r64178 = cos;
double r64179 = pow(r64178, r64174);
double r64180 = sin;
double r64181 = pow(r64180, r64174);
double r64182 = r64175 * r64181;
double r64183 = r64182 * r64175;
double r64184 = r64179 * r64183;
double r64185 = r64177 / r64184;
return r64185;
}
double f(double x, double cos, double sin) {
double r64186 = 2.0;
double r64187 = x;
double r64188 = r64186 * r64187;
double r64189 = cos(r64188);
double r64190 = sin;
double r64191 = cos;
double r64192 = r64187 * r64191;
double r64193 = r64190 * r64192;
double r64194 = fabs(r64193);
double r64195 = 2.0;
double r64196 = pow(r64194, r64195);
double r64197 = r64189 / r64196;
return r64197;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 28.5
rmApplied sqr-pow28.5
Applied associate-*r*22.4
rmApplied add-sqr-sqrt22.4
Simplified22.4
Simplified3.0
Taylor expanded around 0 3.1
Simplified3.1
Taylor expanded around 0 2.7
Final simplification2.7
herbie shell --seed 2020001 +o rules:numerics
(FPCore (x cos sin)
:name "cos(2*x)/(cos^2(x)*sin^2(x))"
:precision binary64
(/ (cos (* 2 x)) (* (pow cos 2) (* (* x (pow sin 2)) x))))