\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(\log \left(e^{\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 r215896 = 2.0;
double r215897 = sqrt(r215896);
double r215898 = x;
double r215899 = sin(r215898);
double r215900 = y;
double r215901 = sin(r215900);
double r215902 = 16.0;
double r215903 = r215901 / r215902;
double r215904 = r215899 - r215903;
double r215905 = r215897 * r215904;
double r215906 = r215899 / r215902;
double r215907 = r215901 - r215906;
double r215908 = r215905 * r215907;
double r215909 = cos(r215898);
double r215910 = cos(r215900);
double r215911 = r215909 - r215910;
double r215912 = r215908 * r215911;
double r215913 = r215896 + r215912;
double r215914 = 3.0;
double r215915 = 1.0;
double r215916 = 5.0;
double r215917 = sqrt(r215916);
double r215918 = r215917 - r215915;
double r215919 = r215918 / r215896;
double r215920 = r215919 * r215909;
double r215921 = r215915 + r215920;
double r215922 = r215914 - r215917;
double r215923 = r215922 / r215896;
double r215924 = r215923 * r215910;
double r215925 = r215921 + r215924;
double r215926 = r215914 * r215925;
double r215927 = r215913 / r215926;
return r215927;
}
double f(double x, double y) {
double r215928 = 2.0;
double r215929 = sqrt(r215928);
double r215930 = sqrt(r215929);
double r215931 = x;
double r215932 = sin(r215931);
double r215933 = y;
double r215934 = sin(r215933);
double r215935 = 16.0;
double r215936 = r215934 / r215935;
double r215937 = r215932 - r215936;
double r215938 = r215930 * r215937;
double r215939 = r215930 * r215938;
double r215940 = exp(r215939);
double r215941 = log(r215940);
double r215942 = r215932 / r215935;
double r215943 = r215934 - r215942;
double r215944 = r215941 * r215943;
double r215945 = cos(r215931);
double r215946 = cos(r215933);
double r215947 = r215945 - r215946;
double r215948 = r215944 * r215947;
double r215949 = r215928 + r215948;
double r215950 = 3.0;
double r215951 = 1.0;
double r215952 = 5.0;
double r215953 = sqrt(r215952);
double r215954 = r215953 - r215951;
double r215955 = r215954 / r215928;
double r215956 = r215955 * r215945;
double r215957 = r215951 + r215956;
double r215958 = r215950 * r215950;
double r215959 = -r215952;
double r215960 = r215958 + r215959;
double r215961 = r215950 + r215953;
double r215962 = r215960 / r215961;
double r215963 = r215962 / r215928;
double r215964 = r215963 * r215946;
double r215965 = r215957 + r215964;
double r215966 = r215950 * r215965;
double r215967 = r215949 / r215966;
return r215967;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip--0.5
Simplified0.4
rmApplied add-log-exp0.4
rmApplied add-sqr-sqrt0.4
Applied sqrt-prod0.5
Applied associate-*l*0.5
Final simplification0.5
herbie shell --seed 2020056
(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))))))