\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 r65767 = 2.0;
double r65768 = x;
double r65769 = r65767 * r65768;
double r65770 = cos(r65769);
double r65771 = cos;
double r65772 = pow(r65771, r65767);
double r65773 = sin;
double r65774 = pow(r65773, r65767);
double r65775 = r65768 * r65774;
double r65776 = r65775 * r65768;
double r65777 = r65772 * r65776;
double r65778 = r65770 / r65777;
return r65778;
}
double f(double x, double cos, double sin) {
double r65779 = 2.0;
double r65780 = x;
double r65781 = r65779 * r65780;
double r65782 = cos(r65781);
double r65783 = cos;
double r65784 = 2.0;
double r65785 = r65779 / r65784;
double r65786 = pow(r65783, r65785);
double r65787 = sin;
double r65788 = pow(r65787, r65785);
double r65789 = r65780 * r65788;
double r65790 = r65786 * r65789;
double r65791 = r65786 * r65790;
double r65792 = r65788 * r65780;
double r65793 = r65791 * r65792;
double r65794 = r65782 / r65793;
return r65794;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 28.1
rmApplied sqr-pow28.1
Applied associate-*r*21.9
rmApplied associate-*l*19.9
rmApplied associate-*r*15.9
rmApplied sqr-pow15.9
Applied associate-*l*6.6
Final simplification6.6
herbie shell --seed 2019325 +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))))