\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}\frac{2 + \left(\left(\left(\sqrt[3]{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)} \cdot \sqrt[3]{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)}\right) \cdot \sqrt[3]{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)}\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 + \left(-5\right)}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}double f(double x, double y) {
double r249841 = 2.0;
double r249842 = sqrt(r249841);
double r249843 = x;
double r249844 = sin(r249843);
double r249845 = y;
double r249846 = sin(r249845);
double r249847 = 16.0;
double r249848 = r249846 / r249847;
double r249849 = r249844 - r249848;
double r249850 = r249842 * r249849;
double r249851 = r249844 / r249847;
double r249852 = r249846 - r249851;
double r249853 = r249850 * r249852;
double r249854 = cos(r249843);
double r249855 = cos(r249845);
double r249856 = r249854 - r249855;
double r249857 = r249853 * r249856;
double r249858 = r249841 + r249857;
double r249859 = 3.0;
double r249860 = 1.0;
double r249861 = 5.0;
double r249862 = sqrt(r249861);
double r249863 = r249862 - r249860;
double r249864 = r249863 / r249841;
double r249865 = r249864 * r249854;
double r249866 = r249860 + r249865;
double r249867 = r249859 - r249862;
double r249868 = r249867 / r249841;
double r249869 = r249868 * r249855;
double r249870 = r249866 + r249869;
double r249871 = r249859 * r249870;
double r249872 = r249858 / r249871;
return r249872;
}
double f(double x, double y) {
double r249873 = 2.0;
double r249874 = sqrt(r249873);
double r249875 = sqrt(r249874);
double r249876 = x;
double r249877 = sin(r249876);
double r249878 = y;
double r249879 = sin(r249878);
double r249880 = 16.0;
double r249881 = r249879 / r249880;
double r249882 = r249877 - r249881;
double r249883 = r249875 * r249882;
double r249884 = r249875 * r249883;
double r249885 = cbrt(r249884);
double r249886 = r249885 * r249885;
double r249887 = r249886 * r249885;
double r249888 = r249877 / r249880;
double r249889 = r249879 - r249888;
double r249890 = r249887 * r249889;
double r249891 = cos(r249876);
double r249892 = cos(r249878);
double r249893 = r249891 - r249892;
double r249894 = r249890 * r249893;
double r249895 = r249873 + r249894;
double r249896 = 3.0;
double r249897 = 1.0;
double r249898 = 5.0;
double r249899 = sqrt(r249898);
double r249900 = r249899 - r249897;
double r249901 = r249900 / r249873;
double r249902 = r249901 * r249891;
double r249903 = r249897 + r249902;
double r249904 = r249896 * r249896;
double r249905 = -r249898;
double r249906 = r249904 + r249905;
double r249907 = r249896 + r249899;
double r249908 = r249906 / r249907;
double r249909 = r249908 / r249873;
double r249910 = r249909 * r249892;
double r249911 = r249903 + r249910;
double r249912 = r249896 * r249911;
double r249913 = r249895 / r249912;
return r249913;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip--0.5
Simplified0.5
rmApplied add-sqr-sqrt0.5
Applied sqrt-prod0.5
Applied associate-*l*0.5
rmApplied add-cube-cbrt0.5
Final simplification0.5
herbie shell --seed 2020047
(FPCore (x y)
:name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
:precision binary64
(/ (+ 2 (* (* (* (sqrt 2) (- (sin x) (/ (sin y) 16))) (- (sin y) (/ (sin x) 16))) (- (cos x) (cos y)))) (* 3 (+ (+ 1 (* (/ (- (sqrt 5) 1) 2) (cos x))) (* (/ (- 3 (sqrt 5)) 2) (cos y))))))