\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 + \sqrt[3]{{\left(\cos x - \cos y\right)}^{3}} \cdot \left(\left(\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)}{3 \cdot \left(\frac{\frac{{3}^{3} - 5 \cdot \sqrt{5}}{\left(3 \cdot 3 + 3 \cdot \sqrt{5}\right) + 5}}{2} \cdot \cos y + \left(\frac{\sqrt{5} - 1}{2} \cdot \cos x + 1\right)\right)}double f(double x, double y) {
double r159886 = 2.0;
double r159887 = sqrt(r159886);
double r159888 = x;
double r159889 = sin(r159888);
double r159890 = y;
double r159891 = sin(r159890);
double r159892 = 16.0;
double r159893 = r159891 / r159892;
double r159894 = r159889 - r159893;
double r159895 = r159887 * r159894;
double r159896 = r159889 / r159892;
double r159897 = r159891 - r159896;
double r159898 = r159895 * r159897;
double r159899 = cos(r159888);
double r159900 = cos(r159890);
double r159901 = r159899 - r159900;
double r159902 = r159898 * r159901;
double r159903 = r159886 + r159902;
double r159904 = 3.0;
double r159905 = 1.0;
double r159906 = 5.0;
double r159907 = sqrt(r159906);
double r159908 = r159907 - r159905;
double r159909 = r159908 / r159886;
double r159910 = r159909 * r159899;
double r159911 = r159905 + r159910;
double r159912 = r159904 - r159907;
double r159913 = r159912 / r159886;
double r159914 = r159913 * r159900;
double r159915 = r159911 + r159914;
double r159916 = r159904 * r159915;
double r159917 = r159903 / r159916;
return r159917;
}
double f(double x, double y) {
double r159918 = 2.0;
double r159919 = x;
double r159920 = cos(r159919);
double r159921 = y;
double r159922 = cos(r159921);
double r159923 = r159920 - r159922;
double r159924 = 3.0;
double r159925 = pow(r159923, r159924);
double r159926 = cbrt(r159925);
double r159927 = sqrt(r159918);
double r159928 = sqrt(r159927);
double r159929 = sin(r159919);
double r159930 = sin(r159921);
double r159931 = 16.0;
double r159932 = r159930 / r159931;
double r159933 = r159929 - r159932;
double r159934 = r159928 * r159933;
double r159935 = r159928 * r159934;
double r159936 = r159929 / r159931;
double r159937 = r159930 - r159936;
double r159938 = r159935 * r159937;
double r159939 = r159926 * r159938;
double r159940 = r159918 + r159939;
double r159941 = 3.0;
double r159942 = pow(r159941, r159924);
double r159943 = 5.0;
double r159944 = sqrt(r159943);
double r159945 = r159943 * r159944;
double r159946 = r159942 - r159945;
double r159947 = r159941 * r159941;
double r159948 = r159941 * r159944;
double r159949 = r159947 + r159948;
double r159950 = r159949 + r159943;
double r159951 = r159946 / r159950;
double r159952 = r159951 / r159918;
double r159953 = r159952 * r159922;
double r159954 = 1.0;
double r159955 = r159944 - r159954;
double r159956 = r159955 / r159918;
double r159957 = r159956 * r159920;
double r159958 = r159957 + r159954;
double r159959 = r159953 + r159958;
double r159960 = r159941 * r159959;
double r159961 = r159940 / r159960;
return r159961;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied add-sqr-sqrt0.5
Applied sqrt-prod0.5
Applied associate-*l*0.5
Simplified0.5
rmApplied flip3--0.5
Simplified0.4
Simplified0.4
rmApplied add-cbrt-cube0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019195
(FPCore (x y)
:name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
(/ (+ 2.0 (* (* (* (sqrt 2.0) (- (sin x) (/ (sin y) 16.0))) (- (sin y) (/ (sin x) 16.0))) (- (cos x) (cos y)))) (* 3.0 (+ (+ 1.0 (* (/ (- (sqrt 5.0) 1.0) 2.0) (cos x))) (* (/ (- 3.0 (sqrt 5.0)) 2.0) (cos y))))))