\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\frac{\sqrt[3]{\cos \left(2 \cdot x\right)} \cdot \sqrt[3]{\cos \left(2 \cdot x\right)}}{{cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)} \cdot \frac{\frac{\sqrt[3]{\cos \left(2 \cdot x\right)}}{x \cdot {sin}^{\left(\frac{2}{2}\right)}}}{{cos}^{\left(\frac{2}{2}\right)}}double f(double x, double cos, double sin) {
double r3186964 = 2.0;
double r3186965 = x;
double r3186966 = r3186964 * r3186965;
double r3186967 = cos(r3186966);
double r3186968 = cos;
double r3186969 = pow(r3186968, r3186964);
double r3186970 = sin;
double r3186971 = pow(r3186970, r3186964);
double r3186972 = r3186965 * r3186971;
double r3186973 = r3186972 * r3186965;
double r3186974 = r3186969 * r3186973;
double r3186975 = r3186967 / r3186974;
return r3186975;
}
double f(double x, double cos, double sin) {
double r3186976 = 2.0;
double r3186977 = x;
double r3186978 = r3186976 * r3186977;
double r3186979 = cos(r3186978);
double r3186980 = cbrt(r3186979);
double r3186981 = r3186980 * r3186980;
double r3186982 = cos;
double r3186983 = 2.0;
double r3186984 = r3186976 / r3186983;
double r3186985 = pow(r3186982, r3186984);
double r3186986 = sin;
double r3186987 = pow(r3186986, r3186984);
double r3186988 = r3186977 * r3186987;
double r3186989 = r3186985 * r3186988;
double r3186990 = r3186981 / r3186989;
double r3186991 = r3186980 / r3186988;
double r3186992 = r3186991 / r3186985;
double r3186993 = r3186990 * r3186992;
return r3186993;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 28.2
rmApplied sqr-pow28.2
Applied associate-*r*21.7
rmApplied sqr-pow21.7
Applied associate-*l*16.1
Simplified6.1
rmApplied associate-/r*5.9
rmApplied *-un-lft-identity5.9
Applied unpow-prod-down5.9
Applied add-cube-cbrt6.1
Applied times-frac6.1
Applied times-frac2.7
Simplified2.7
Simplified2.8
Final simplification2.8
herbie shell --seed 2019171 +o rules:numerics
(FPCore (x cos sin)
:name "cos(2*x)/(cos^2(x)*sin^2(x))"
(/ (cos (* 2.0 x)) (* (pow cos 2.0) (* (* x (pow sin 2.0)) x))))