\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.19899225278698649 \cdot 10^{-308}:\\
\;\;\;\;\frac{1}{\left|\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|\right|} \cdot \frac{\cos \left(2 \cdot x\right)}{\left|\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|\right|}\\
\mathbf{elif}\;cos \le 7.57685492731950486 \cdot 10^{145}:\\
\;\;\;\;\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 \left|{\left(\sqrt{cos}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\sqrt{cos}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\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 r54256 = 2.0;
double r54257 = x;
double r54258 = r54256 * r54257;
double r54259 = cos(r54258);
double r54260 = cos;
double r54261 = pow(r54260, r54256);
double r54262 = sin;
double r54263 = pow(r54262, r54256);
double r54264 = r54257 * r54263;
double r54265 = r54264 * r54257;
double r54266 = r54261 * r54265;
double r54267 = r54259 / r54266;
return r54267;
}
double f(double x, double cos, double sin) {
double r54268 = cos;
double r54269 = 4.1989922527869865e-308;
bool r54270 = r54268 <= r54269;
double r54271 = 1.0;
double r54272 = 1.0;
double r54273 = pow(r54268, r54272);
double r54274 = sin;
double r54275 = pow(r54274, r54272);
double r54276 = r54273 * r54275;
double r54277 = pow(r54276, r54272);
double r54278 = x;
double r54279 = r54277 * r54278;
double r54280 = fabs(r54279);
double r54281 = fabs(r54280);
double r54282 = r54271 / r54281;
double r54283 = 2.0;
double r54284 = r54283 * r54278;
double r54285 = cos(r54284);
double r54286 = r54285 / r54281;
double r54287 = r54282 * r54286;
double r54288 = 7.576854927319505e+145;
bool r54289 = r54268 <= r54288;
double r54290 = 2.0;
double r54291 = r54283 / r54290;
double r54292 = pow(r54268, r54291);
double r54293 = pow(r54274, r54291);
double r54294 = r54278 * r54293;
double r54295 = r54292 * r54294;
double r54296 = fabs(r54295);
double r54297 = sqrt(r54268);
double r54298 = pow(r54297, r54291);
double r54299 = r54298 * r54294;
double r54300 = r54298 * r54299;
double r54301 = fabs(r54300);
double r54302 = r54296 * r54301;
double r54303 = r54285 / r54302;
double r54304 = pow(r54280, r54290);
double r54305 = r54285 / r54304;
double r54306 = r54289 ? r54303 : r54305;
double r54307 = r54270 ? r54287 : r54306;
return r54307;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if cos < 4.1989922527869865e-308Initial program 28.3
rmApplied sqr-pow28.3
Applied associate-*r*22.6
rmApplied add-sqr-sqrt22.7
Simplified22.6
Simplified3.0
Taylor expanded around 0 2.8
Simplified2.8
rmApplied add-sqr-sqrt2.8
Applied *-un-lft-identity2.8
Applied times-frac2.8
Simplified2.8
Simplified2.6
if 4.1989922527869865e-308 < cos < 7.576854927319505e+145Initial program 29.7
rmApplied sqr-pow29.7
Applied associate-*r*21.8
rmApplied add-sqr-sqrt21.8
Simplified21.8
Simplified2.4
rmApplied add-sqr-sqrt2.5
Applied unpow-prod-down2.5
Applied associate-*l*2.4
if 7.576854927319505e+145 < cos Initial program 24.7
rmApplied sqr-pow24.7
Applied associate-*r*21.1
rmApplied add-sqr-sqrt21.1
Simplified21.1
Simplified3.4
Taylor expanded around 0 2.4
Simplified2.4
Final simplification2.5
herbie shell --seed 2020018 +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))))