\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}\;sin \le -9.428285242761686 \cdot 10^{-254}:\\
\;\;\;\;\frac{\frac{\frac{1}{sin}}{cos} \cdot \frac{1}{x}}{\frac{x \cdot \left(cos \cdot sin\right)}{\cos \left(2 \cdot x\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\cos \left(2 \cdot x\right)}{\left(cos \cdot \left(x \cdot sin\right)\right) \cdot \left(cos \cdot \left(x \cdot sin\right)\right)}\\
\end{array}double f(double x, double cos, double sin) {
double r26298981 = 2.0;
double r26298982 = x;
double r26298983 = r26298981 * r26298982;
double r26298984 = cos(r26298983);
double r26298985 = cos;
double r26298986 = pow(r26298985, r26298981);
double r26298987 = sin;
double r26298988 = pow(r26298987, r26298981);
double r26298989 = r26298982 * r26298988;
double r26298990 = r26298989 * r26298982;
double r26298991 = r26298986 * r26298990;
double r26298992 = r26298984 / r26298991;
return r26298992;
}
double f(double x, double cos, double sin) {
double r26298993 = sin;
double r26298994 = -9.428285242761686e-254;
bool r26298995 = r26298993 <= r26298994;
double r26298996 = 1.0;
double r26298997 = r26298996 / r26298993;
double r26298998 = cos;
double r26298999 = r26298997 / r26298998;
double r26299000 = x;
double r26299001 = r26298996 / r26299000;
double r26299002 = r26298999 * r26299001;
double r26299003 = r26298998 * r26298993;
double r26299004 = r26299000 * r26299003;
double r26299005 = 2.0;
double r26299006 = r26299005 * r26299000;
double r26299007 = cos(r26299006);
double r26299008 = r26299004 / r26299007;
double r26299009 = r26299002 / r26299008;
double r26299010 = r26299000 * r26298993;
double r26299011 = r26298998 * r26299010;
double r26299012 = r26299011 * r26299011;
double r26299013 = r26299007 / r26299012;
double r26299014 = r26298995 ? r26299009 : r26299013;
return r26299014;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if sin < -9.428285242761686e-254Initial program 25.6
Simplified2.3
Taylor expanded around -inf 29.3
Simplified2.4
rmApplied clear-num2.4
rmApplied *-un-lft-identity2.4
Applied times-frac2.4
Applied associate-/r*2.2
rmApplied add-cube-cbrt2.2
Applied times-frac2.2
Applied add-sqr-sqrt2.2
Applied times-frac2.3
Simplified2.2
Simplified2.2
if -9.428285242761686e-254 < sin Initial program 28.1
Simplified3.5
Taylor expanded around -inf 31.4
Simplified2.5
Final simplification2.4
herbie shell --seed 2019124
(FPCore (x cos sin)
:name "cos(2*x)/(cos^2(x)*sin^2(x))"
(/ (cos (* 2 x)) (* (pow cos 2) (* (* x (pow sin 2)) x))))