\frac{\tan \left(\frac{x}{y \cdot 2}\right)}{\sin \left(\frac{x}{y \cdot 2}\right)}\left(\sqrt[3]{\frac{1}{\cos \left(\frac{x}{y \cdot 2}\right)}} \cdot \sqrt[3]{\frac{1}{\cos \left(\frac{x}{y \cdot 2}\right)}}\right) \cdot \sqrt[3]{\frac{1}{\cos \left(\frac{x}{y \cdot 2}\right)}}double f(double x, double y) {
double r469728 = x;
double r469729 = y;
double r469730 = 2.0;
double r469731 = r469729 * r469730;
double r469732 = r469728 / r469731;
double r469733 = tan(r469732);
double r469734 = sin(r469732);
double r469735 = r469733 / r469734;
return r469735;
}
double f(double x, double y) {
double r469736 = 1.0;
double r469737 = x;
double r469738 = y;
double r469739 = 2.0;
double r469740 = r469738 * r469739;
double r469741 = r469737 / r469740;
double r469742 = cos(r469741);
double r469743 = r469736 / r469742;
double r469744 = cbrt(r469743);
double r469745 = r469744 * r469744;
double r469746 = r469745 * r469744;
return r469746;
}




Bits error versus x




Bits error versus y
Results
| Original | 35.8 |
|---|---|
| Target | 29.1 |
| Herbie | 28.5 |
Initial program 35.8
rmApplied tan-quot35.8
rmApplied add-cube-cbrt35.8
Simplified35.8
Simplified28.5
Final simplification28.5
herbie shell --seed 2019199
(FPCore (x y)
:name "Diagrams.TwoD.Layout.CirclePacking:approxRadius from diagrams-contrib-1.3.0.5"
:herbie-target
(if (< y -1.2303690911306994e+114) 1.0 (if (< y -9.102852406811914e-222) (/ (sin (/ x (* y 2.0))) (* (sin (/ x (* y 2.0))) (log (exp (cos (/ x (* y 2.0))))))) 1.0))
(/ (tan (/ x (* y 2.0))) (sin (/ x (* y 2.0)))))