\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)}{\left({cos}^{\left(\frac{2}{2}\right)} \cdot \left({cos}^{\left(\frac{2}{2}\right)} \cdot \left(x \cdot {sin}^{\left(\frac{2}{2}\right)}\right)\right)\right) \cdot \left({sin}^{\left(\frac{2}{2}\right)} \cdot x\right)}double f(double x, double cos, double sin) {
double r63376 = 2.0;
double r63377 = x;
double r63378 = r63376 * r63377;
double r63379 = cos(r63378);
double r63380 = cos;
double r63381 = pow(r63380, r63376);
double r63382 = sin;
double r63383 = pow(r63382, r63376);
double r63384 = r63377 * r63383;
double r63385 = r63384 * r63377;
double r63386 = r63381 * r63385;
double r63387 = r63379 / r63386;
return r63387;
}
double f(double x, double cos, double sin) {
double r63388 = 2.0;
double r63389 = x;
double r63390 = r63388 * r63389;
double r63391 = cos(r63390);
double r63392 = cos;
double r63393 = 2.0;
double r63394 = r63388 / r63393;
double r63395 = pow(r63392, r63394);
double r63396 = sin;
double r63397 = pow(r63396, r63394);
double r63398 = r63389 * r63397;
double r63399 = r63395 * r63398;
double r63400 = r63395 * r63399;
double r63401 = r63397 * r63389;
double r63402 = r63400 * r63401;
double r63403 = r63391 / r63402;
return r63403;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 28.5
rmApplied sqr-pow28.5
Applied associate-*r*22.4
rmApplied associate-*l*20.4
rmApplied associate-*r*16.1
rmApplied sqr-pow16.1
Applied associate-*l*6.8
Final simplification6.8
herbie shell --seed 2019303
(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))))