\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}\;x \le -3.899795259514831596491496327990136660459 \cdot 10^{-188}:\\
\;\;\;\;\frac{\frac{\cos \left(2 \cdot x\right)}{\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|}}{{\left(\sqrt{\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|}\right)}^{2}}\\
\mathbf{elif}\;x \le 3.099208061336091548327514698736633602822 \cdot 10^{-150}:\\
\;\;\;\;\frac{1}{\left|{cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right|} \cdot \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|}\\
\mathbf{else}:\\
\;\;\;\;\cos \left(2 \cdot x\right) \cdot \frac{1}{{\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 r56026 = 2.0;
double r56027 = x;
double r56028 = r56026 * r56027;
double r56029 = cos(r56028);
double r56030 = cos;
double r56031 = pow(r56030, r56026);
double r56032 = sin;
double r56033 = pow(r56032, r56026);
double r56034 = r56027 * r56033;
double r56035 = r56034 * r56027;
double r56036 = r56031 * r56035;
double r56037 = r56029 / r56036;
return r56037;
}
double f(double x, double cos, double sin) {
double r56038 = x;
double r56039 = -3.8997952595148316e-188;
bool r56040 = r56038 <= r56039;
double r56041 = 2.0;
double r56042 = r56041 * r56038;
double r56043 = cos(r56042);
double r56044 = cos;
double r56045 = 1.0;
double r56046 = pow(r56044, r56045);
double r56047 = sin;
double r56048 = pow(r56047, r56045);
double r56049 = r56046 * r56048;
double r56050 = pow(r56049, r56045);
double r56051 = r56050 * r56038;
double r56052 = fabs(r56051);
double r56053 = r56043 / r56052;
double r56054 = sqrt(r56052);
double r56055 = 2.0;
double r56056 = pow(r56054, r56055);
double r56057 = r56053 / r56056;
double r56058 = 3.0992080613360915e-150;
bool r56059 = r56038 <= r56058;
double r56060 = 1.0;
double r56061 = r56041 / r56055;
double r56062 = pow(r56044, r56061);
double r56063 = pow(r56047, r56061);
double r56064 = r56038 * r56063;
double r56065 = r56062 * r56064;
double r56066 = fabs(r56065);
double r56067 = r56060 / r56066;
double r56068 = r56043 / r56066;
double r56069 = r56067 * r56068;
double r56070 = pow(r56052, r56055);
double r56071 = r56060 / r56070;
double r56072 = r56043 * r56071;
double r56073 = r56059 ? r56069 : r56072;
double r56074 = r56040 ? r56057 : r56073;
return r56074;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if x < -3.8997952595148316e-188Initial program 26.2
rmApplied sqr-pow26.2
Applied associate-*r*21.0
rmApplied add-sqr-sqrt21.1
Simplified21.0
Simplified2.6
Taylor expanded around inf 2.1
rmApplied add-sqr-sqrt2.3
Applied unpow-prod-down2.3
Applied associate-/r*1.9
Simplified1.8
if -3.8997952595148316e-188 < x < 3.0992080613360915e-150Initial program 44.2
rmApplied sqr-pow44.2
Applied associate-*r*30.4
rmApplied add-sqr-sqrt30.5
Simplified30.4
Simplified4.8
rmApplied *-un-lft-identity4.8
Applied times-frac4.6
if 3.0992080613360915e-150 < x Initial program 25.7
rmApplied sqr-pow25.7
Applied associate-*r*20.3
rmApplied add-sqr-sqrt20.4
Simplified20.4
Simplified2.4
Taylor expanded around inf 1.8
rmApplied div-inv1.8
Final simplification2.2
herbie shell --seed 2019352 +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))))