\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(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right|} \cdot \frac{1}{\left|{cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right|}double f(double x, double cos, double sin) {
double r66110 = 2.0;
double r66111 = x;
double r66112 = r66110 * r66111;
double r66113 = cos(r66112);
double r66114 = cos;
double r66115 = pow(r66114, r66110);
double r66116 = sin;
double r66117 = pow(r66116, r66110);
double r66118 = r66111 * r66117;
double r66119 = r66118 * r66111;
double r66120 = r66115 * r66119;
double r66121 = r66113 / r66120;
return r66121;
}
double f(double x, double cos, double sin) {
double r66122 = 2.0;
double r66123 = x;
double r66124 = r66122 * r66123;
double r66125 = cos(r66124);
double r66126 = cos;
double r66127 = 2.0;
double r66128 = r66122 / r66127;
double r66129 = pow(r66126, r66128);
double r66130 = sin;
double r66131 = pow(r66130, r66128);
double r66132 = r66123 * r66131;
double r66133 = r66129 * r66132;
double r66134 = fabs(r66133);
double r66135 = r66125 / r66134;
double r66136 = 1.0;
double r66137 = r66136 / r66134;
double r66138 = r66135 * r66137;
return r66138;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 27.9
rmApplied sqr-pow27.9
Applied associate-*r*21.8
rmApplied add-sqr-sqrt21.9
Simplified21.8
Simplified3.1
rmApplied associate-/r*2.8
rmApplied div-inv2.8
Final simplification2.8
herbie shell --seed 2020065
(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))))