\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}^{2} \le 4.90188746686008668 \cdot 10^{-183}:\\
\;\;\;\;\frac{\cos \left(2 \cdot x\right)}{{\left(\left|{\left({cos}^{1} \cdot {sin}^{1}\right)}^{1} \cdot x\right|\right)}^{2}}\\
\mathbf{else}:\\
\;\;\;\;\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|}\\
\end{array}double code(double x, double cos, double sin) {
return ((double) (((double) cos(((double) (2.0 * x)))) / ((double) (((double) pow(cos, 2.0)) * ((double) (((double) (x * ((double) pow(sin, 2.0)))) * x))))));
}
double code(double x, double cos, double sin) {
double VAR;
if ((((double) pow(cos, 2.0)) <= 4.901887466860087e-183)) {
VAR = ((double) (((double) cos(((double) (2.0 * x)))) / ((double) pow(((double) fabs(((double) (((double) pow(((double) (((double) pow(cos, 1.0)) * ((double) pow(sin, 1.0)))), 1.0)) * x)))), 2.0))));
} else {
VAR = ((double) (((double) (((double) (((double) cbrt(((double) cos(((double) (2.0 * x)))))) * ((double) cbrt(((double) cos(((double) (2.0 * x)))))))) / ((double) fabs(((double) (((double) pow(cos, ((double) (2.0 / 2.0)))) * ((double) (x * ((double) pow(sin, ((double) (2.0 / 2.0)))))))))))) * ((double) (((double) cbrt(((double) cos(((double) (2.0 * x)))))) / ((double) fabs(((double) (((double) pow(cos, ((double) (2.0 / 2.0)))) * ((double) (x * ((double) pow(sin, ((double) (2.0 / 2.0))))))))))))));
}
return VAR;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if (pow cos 2.0) < 4.901887466860087e-183Initial program 49.6
rmApplied sqr-pow49.6
Applied associate-*l*35.3
rmApplied sqr-pow35.3
Applied associate-*r*30.0
rmApplied add-sqr-sqrt30.1
Simplified30.1
Simplified6.8
Taylor expanded around inf 5.0
if 4.901887466860087e-183 < (pow cos 2.0) Initial program 22.0
rmApplied sqr-pow22.0
Applied associate-*l*20.0
rmApplied sqr-pow20.0
Applied associate-*r*12.5
rmApplied add-sqr-sqrt12.5
Simplified12.5
Simplified2.1
rmApplied add-cube-cbrt2.2
Applied times-frac2.0
Final simplification2.7
herbie shell --seed 2020126
(FPCore (x cos sin)
:name "cos(2*x)/(cos^2(x)*sin^2(x))"
:precision binary64
(/ (cos (* 2.0 x)) (* (pow cos 2.0) (* (* x (pow sin 2.0)) x))))