\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\begin{array}{l}
\mathbf{if}\;cos \le -5.658624829795034525283840639142347785327 \cdot 10^{-292} \lor \neg \left(cos \le 5.254045133843250338248612619311844129892 \cdot 10^{-192}\right):\\
\;\;\;\;\frac{\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|}}{\left|{cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right|}\\
\mathbf{else}:\\
\;\;\;\;\frac{\cos \left(2 \cdot x\right)}{{\left(\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|\right)}^{2}}\\
\end{array}double f(double x, double cos, double sin) {
double r53701 = 2.0;
double r53702 = x;
double r53703 = r53701 * r53702;
double r53704 = cos(r53703);
double r53705 = cos;
double r53706 = pow(r53705, r53701);
double r53707 = sin;
double r53708 = pow(r53707, r53701);
double r53709 = r53702 * r53708;
double r53710 = r53709 * r53702;
double r53711 = r53706 * r53710;
double r53712 = r53704 / r53711;
return r53712;
}
double f(double x, double cos, double sin) {
double r53713 = cos;
double r53714 = -5.6586248297950345e-292;
bool r53715 = r53713 <= r53714;
double r53716 = 5.25404513384325e-192;
bool r53717 = r53713 <= r53716;
double r53718 = !r53717;
bool r53719 = r53715 || r53718;
double r53720 = 2.0;
double r53721 = x;
double r53722 = r53720 * r53721;
double r53723 = cos(r53722);
double r53724 = 2.0;
double r53725 = r53720 / r53724;
double r53726 = pow(r53713, r53725);
double r53727 = sin;
double r53728 = pow(r53727, r53725);
double r53729 = r53721 * r53728;
double r53730 = r53726 * r53729;
double r53731 = fabs(r53730);
double r53732 = r53723 / r53731;
double r53733 = r53732 / r53731;
double r53734 = 1.0;
double r53735 = pow(r53713, r53734);
double r53736 = pow(r53727, r53734);
double r53737 = r53735 * r53736;
double r53738 = pow(r53737, r53734);
double r53739 = r53738 * r53721;
double r53740 = fabs(r53739);
double r53741 = pow(r53740, r53724);
double r53742 = r53723 / r53741;
double r53743 = r53719 ? r53733 : r53742;
return r53743;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if cos < -5.6586248297950345e-292 or 5.25404513384325e-192 < cos Initial program 26.4
rmApplied sqr-pow26.4
Applied associate-*r*19.9
rmApplied add-sqr-sqrt20.0
Simplified19.9
Simplified2.3
rmApplied associate-/r*2.0
if -5.6586248297950345e-292 < cos < 5.25404513384325e-192Initial program 64.0
rmApplied sqr-pow64.0
Applied associate-*r*64.0
rmApplied add-sqr-sqrt64.0
Simplified64.0
Simplified10.8
Taylor expanded around inf 6.2
Final simplification2.2
herbie shell --seed 2019297
(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))))