\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 4.24708257629406067 \cdot 10^{-274}:\\
\;\;\;\;\cos \left(2 \cdot x\right) \cdot \frac{1}{{\left(\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|\right)}^{2}}\\
\mathbf{elif}\;cos \le 6.4244675320823765 \cdot 10^{214}:\\
\;\;\;\;\frac{\sqrt[3]{\cos \left(2 \cdot x\right)} \cdot \sqrt[3]{\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{\sqrt[3]{\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|}\\
\mathbf{else}:\\
\;\;\;\;\frac{\cos \left(2 \cdot x\right)}{{\left(\left|sin \cdot \left(x \cdot cos\right)\right|\right)}^{2}}\\
\end{array}double f(double x, double cos, double sin) {
double r74857 = 2.0;
double r74858 = x;
double r74859 = r74857 * r74858;
double r74860 = cos(r74859);
double r74861 = cos;
double r74862 = pow(r74861, r74857);
double r74863 = sin;
double r74864 = pow(r74863, r74857);
double r74865 = r74858 * r74864;
double r74866 = r74865 * r74858;
double r74867 = r74862 * r74866;
double r74868 = r74860 / r74867;
return r74868;
}
double f(double x, double cos, double sin) {
double r74869 = cos;
double r74870 = 4.2470825762940607e-274;
bool r74871 = r74869 <= r74870;
double r74872 = 2.0;
double r74873 = x;
double r74874 = r74872 * r74873;
double r74875 = cos(r74874);
double r74876 = 1.0;
double r74877 = 1.0;
double r74878 = pow(r74869, r74877);
double r74879 = sin;
double r74880 = pow(r74879, r74877);
double r74881 = r74878 * r74880;
double r74882 = pow(r74881, r74877);
double r74883 = r74882 * r74873;
double r74884 = fabs(r74883);
double r74885 = 2.0;
double r74886 = pow(r74884, r74885);
double r74887 = r74876 / r74886;
double r74888 = r74875 * r74887;
double r74889 = 6.4244675320823765e+214;
bool r74890 = r74869 <= r74889;
double r74891 = cbrt(r74875);
double r74892 = r74891 * r74891;
double r74893 = r74872 / r74885;
double r74894 = pow(r74869, r74893);
double r74895 = pow(r74879, r74893);
double r74896 = r74873 * r74895;
double r74897 = r74894 * r74896;
double r74898 = fabs(r74897);
double r74899 = r74892 / r74898;
double r74900 = r74891 / r74898;
double r74901 = r74899 * r74900;
double r74902 = r74873 * r74869;
double r74903 = r74879 * r74902;
double r74904 = fabs(r74903);
double r74905 = pow(r74904, r74885);
double r74906 = r74875 / r74905;
double r74907 = r74890 ? r74901 : r74906;
double r74908 = r74871 ? r74888 : r74907;
return r74908;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if cos < 4.2470825762940607e-274Initial program 28.9
rmApplied sqr-pow28.9
Applied associate-*r*23.2
rmApplied add-sqr-sqrt23.3
Simplified23.2
Simplified3.2
Taylor expanded around inf 2.8
rmApplied div-inv2.8
if 4.2470825762940607e-274 < cos < 6.4244675320823765e+214Initial program 28.2
rmApplied sqr-pow28.2
Applied associate-*r*20.9
rmApplied add-sqr-sqrt20.9
Simplified20.9
Simplified1.9
rmApplied add-cube-cbrt2.1
Applied times-frac1.8
if 6.4244675320823765e+214 < cos Initial program 24.4
rmApplied sqr-pow24.4
Applied associate-*r*21.2
rmApplied add-sqr-sqrt21.2
Simplified21.2
Simplified4.5
Taylor expanded around inf 2.2
Taylor expanded around 0 2.6
Final simplification2.4
herbie shell --seed 2020035 +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))))