\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\frac{\cos \left(2 \cdot x\right)}{{cos}^{\left(\frac{2}{2}\right)} \cdot \left(\left({cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right) \cdot \left({sin}^{\left(\frac{2}{2}\right)} \cdot x\right)\right)}double f(double x, double cos, double sin) {
double r49415 = 2.0;
double r49416 = x;
double r49417 = r49415 * r49416;
double r49418 = cos(r49417);
double r49419 = cos;
double r49420 = pow(r49419, r49415);
double r49421 = sin;
double r49422 = pow(r49421, r49415);
double r49423 = r49416 * r49422;
double r49424 = r49423 * r49416;
double r49425 = r49420 * r49424;
double r49426 = r49418 / r49425;
return r49426;
}
double f(double x, double cos, double sin) {
double r49427 = 2.0;
double r49428 = x;
double r49429 = r49427 * r49428;
double r49430 = cos(r49429);
double r49431 = cos;
double r49432 = 2.0;
double r49433 = r49427 / r49432;
double r49434 = pow(r49431, r49433);
double r49435 = sin;
double r49436 = pow(r49435, r49433);
double r49437 = r49428 * r49436;
double r49438 = r49434 * r49437;
double r49439 = r49436 * r49428;
double r49440 = r49438 * r49439;
double r49441 = r49434 * r49440;
double r49442 = r49430 / r49441;
return r49442;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 28.4
rmApplied sqr-pow28.4
Applied associate-*l*23.7
rmApplied sqr-pow23.7
Applied associate-*r*16.2
rmApplied associate-*l*13.3
rmApplied associate-*r*5.9
Final simplification5.9
herbie shell --seed 2019208
(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))))