\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\frac{1}{\frac{\left(cos \cdot x\right) \cdot sin}{\frac{\cos \left(2 \cdot x\right)}{\left(cos \cdot x\right) \cdot sin}}}double f(double x, double cos, double sin) {
double r2283495 = 2.0;
double r2283496 = x;
double r2283497 = r2283495 * r2283496;
double r2283498 = cos(r2283497);
double r2283499 = cos;
double r2283500 = pow(r2283499, r2283495);
double r2283501 = sin;
double r2283502 = pow(r2283501, r2283495);
double r2283503 = r2283496 * r2283502;
double r2283504 = r2283503 * r2283496;
double r2283505 = r2283500 * r2283504;
double r2283506 = r2283498 / r2283505;
return r2283506;
}
double f(double x, double cos, double sin) {
double r2283507 = 1.0;
double r2283508 = cos;
double r2283509 = x;
double r2283510 = r2283508 * r2283509;
double r2283511 = sin;
double r2283512 = r2283510 * r2283511;
double r2283513 = 2.0;
double r2283514 = r2283513 * r2283509;
double r2283515 = cos(r2283514);
double r2283516 = r2283515 / r2283512;
double r2283517 = r2283512 / r2283516;
double r2283518 = r2283507 / r2283517;
return r2283518;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 27.3
Simplified2.9
rmApplied associate-/r*2.6
rmApplied associate-/r*2.8
rmApplied clear-num3.0
Simplified2.9
Final simplification2.9
herbie shell --seed 2019149 +o rules:numerics
(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))))