\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\left(\frac{\sqrt[3]{\frac{\cos \left(2 \cdot x\right)}{\left(cos \cdot x\right) \cdot sin}}}{\sqrt[3]{\left(cos \cdot x\right) \cdot sin}} \cdot \sqrt[3]{\frac{\frac{\cos \left(2 \cdot x\right)}{\left(cos \cdot x\right) \cdot sin}}{\left(cos \cdot x\right) \cdot sin}}\right) \cdot \sqrt[3]{\frac{\frac{\cos \left(2 \cdot x\right)}{\left(cos \cdot x\right) \cdot sin}}{\left(cos \cdot x\right) \cdot sin}}double f(double x, double cos, double sin) {
double r21395498 = 2.0;
double r21395499 = x;
double r21395500 = r21395498 * r21395499;
double r21395501 = cos(r21395500);
double r21395502 = cos;
double r21395503 = pow(r21395502, r21395498);
double r21395504 = sin;
double r21395505 = pow(r21395504, r21395498);
double r21395506 = r21395499 * r21395505;
double r21395507 = r21395506 * r21395499;
double r21395508 = r21395503 * r21395507;
double r21395509 = r21395501 / r21395508;
return r21395509;
}
double f(double x, double cos, double sin) {
double r21395510 = 2.0;
double r21395511 = x;
double r21395512 = r21395510 * r21395511;
double r21395513 = cos(r21395512);
double r21395514 = cos;
double r21395515 = r21395514 * r21395511;
double r21395516 = sin;
double r21395517 = r21395515 * r21395516;
double r21395518 = r21395513 / r21395517;
double r21395519 = cbrt(r21395518);
double r21395520 = cbrt(r21395517);
double r21395521 = r21395519 / r21395520;
double r21395522 = r21395518 / r21395517;
double r21395523 = cbrt(r21395522);
double r21395524 = r21395521 * r21395523;
double r21395525 = r21395524 * r21395523;
return r21395525;
}



Bits error versus x



Bits error versus cos



Bits error versus sin
Results
Initial program 26.9
Simplified2.7
rmApplied associate-/r*2.5
rmApplied add-cube-cbrt2.8
rmApplied cbrt-div2.8
Final simplification2.8
herbie shell --seed 2019125 +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))))