\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 2.3344053992995315 \cdot 10^{-226}:\\
\;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\
\mathbf{elif}\;cos \le 7.956426647105508 \cdot 10^{+132}:\\
\;\;\;\;\frac{\cos \left(x \cdot 2\right)}{\left(cos \cdot \left(x \cdot sin\right)\right) \cdot \left(cos \cdot \left(x \cdot sin\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\
\end{array}double f(double x, double cos, double sin) {
double r1866451 = 2.0;
double r1866452 = x;
double r1866453 = r1866451 * r1866452;
double r1866454 = cos(r1866453);
double r1866455 = cos;
double r1866456 = pow(r1866455, r1866451);
double r1866457 = sin;
double r1866458 = pow(r1866457, r1866451);
double r1866459 = r1866452 * r1866458;
double r1866460 = r1866459 * r1866452;
double r1866461 = r1866456 * r1866460;
double r1866462 = r1866454 / r1866461;
return r1866462;
}
double f(double x, double cos, double sin) {
double r1866463 = cos;
double r1866464 = 2.3344053992995315e-226;
bool r1866465 = r1866463 <= r1866464;
double r1866466 = x;
double r1866467 = 2.0;
double r1866468 = r1866466 * r1866467;
double r1866469 = cos(r1866468);
double r1866470 = sin;
double r1866471 = r1866470 * r1866463;
double r1866472 = r1866466 * r1866471;
double r1866473 = r1866469 / r1866472;
double r1866474 = 1.0;
double r1866475 = r1866474 / r1866471;
double r1866476 = r1866474 / r1866466;
double r1866477 = r1866475 * r1866476;
double r1866478 = r1866473 * r1866477;
double r1866479 = 7.956426647105508e+132;
bool r1866480 = r1866463 <= r1866479;
double r1866481 = r1866466 * r1866470;
double r1866482 = r1866463 * r1866481;
double r1866483 = r1866482 * r1866482;
double r1866484 = r1866469 / r1866483;
double r1866485 = r1866480 ? r1866484 : r1866478;
double r1866486 = r1866465 ? r1866478 : r1866485;
return r1866486;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
if cos < 2.3344053992995315e-226 or 7.956426647105508e+132 < cos Initial program 28.4
Simplified2.8
rmApplied *-un-lft-identity2.8
Applied times-frac2.6
rmApplied *-un-lft-identity2.6
Applied times-frac2.7
if 2.3344053992995315e-226 < cos < 7.956426647105508e+132Initial program 26.8
Simplified2.7
Taylor expanded around inf 30.2
Simplified1.0
Final simplification2.2
herbie shell --seed 2019130
(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))))