\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({cos}^{\left(\frac{2}{2}\right)} \cdot \left({cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right)\right) \cdot \left({sin}^{\left(\frac{2}{2}\right)} \cdot x\right)}double f(double x, double cos, double sin) {
double r61854 = 2.0;
double r61855 = x;
double r61856 = r61854 * r61855;
double r61857 = cos(r61856);
double r61858 = cos;
double r61859 = pow(r61858, r61854);
double r61860 = sin;
double r61861 = pow(r61860, r61854);
double r61862 = r61855 * r61861;
double r61863 = r61862 * r61855;
double r61864 = r61859 * r61863;
double r61865 = r61857 / r61864;
return r61865;
}
double f(double x, double cos, double sin) {
double r61866 = 2.0;
double r61867 = x;
double r61868 = r61866 * r61867;
double r61869 = cos(r61868);
double r61870 = cos;
double r61871 = 2.0;
double r61872 = r61866 / r61871;
double r61873 = pow(r61870, r61872);
double r61874 = sin;
double r61875 = pow(r61874, r61872);
double r61876 = r61867 * r61875;
double r61877 = r61873 * r61876;
double r61878 = r61873 * r61877;
double r61879 = r61875 * r61867;
double r61880 = r61878 * r61879;
double r61881 = r61869 / r61880;
return r61881;
}



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.6
rmApplied associate-*l*20.5
rmApplied associate-*r*16.4
rmApplied sqr-pow16.4
Applied associate-*l*6.8
Final simplification6.8
herbie shell --seed 2019347
(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))))