\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{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \frac{\cos x \cdot \cos x - \cos y \cdot \cos y}{\cos x + \cos y}, 2\right)}{\mathsf{fma}\left(\frac{3 - \sqrt{5}}{2}, \cos y, \mathsf{fma}\left(\frac{\sqrt{5} - 1}{2}, \cos x, 1\right)\right)}}{3}double f(double x, double y) {
double r195853 = 2.0;
double r195854 = sqrt(r195853);
double r195855 = x;
double r195856 = sin(r195855);
double r195857 = y;
double r195858 = sin(r195857);
double r195859 = 16.0;
double r195860 = r195858 / r195859;
double r195861 = r195856 - r195860;
double r195862 = r195854 * r195861;
double r195863 = r195856 / r195859;
double r195864 = r195858 - r195863;
double r195865 = r195862 * r195864;
double r195866 = cos(r195855);
double r195867 = cos(r195857);
double r195868 = r195866 - r195867;
double r195869 = r195865 * r195868;
double r195870 = r195853 + r195869;
double r195871 = 3.0;
double r195872 = 1.0;
double r195873 = 5.0;
double r195874 = sqrt(r195873);
double r195875 = r195874 - r195872;
double r195876 = r195875 / r195853;
double r195877 = r195876 * r195866;
double r195878 = r195872 + r195877;
double r195879 = r195871 - r195874;
double r195880 = r195879 / r195853;
double r195881 = r195880 * r195867;
double r195882 = r195878 + r195881;
double r195883 = r195871 * r195882;
double r195884 = r195870 / r195883;
return r195884;
}
double f(double x, double y) {
double r195885 = 2.0;
double r195886 = sqrt(r195885);
double r195887 = x;
double r195888 = sin(r195887);
double r195889 = y;
double r195890 = sin(r195889);
double r195891 = 16.0;
double r195892 = r195890 / r195891;
double r195893 = r195888 - r195892;
double r195894 = r195886 * r195893;
double r195895 = r195888 / r195891;
double r195896 = r195890 - r195895;
double r195897 = cos(r195887);
double r195898 = r195897 * r195897;
double r195899 = cos(r195889);
double r195900 = r195899 * r195899;
double r195901 = r195898 - r195900;
double r195902 = r195897 + r195899;
double r195903 = r195901 / r195902;
double r195904 = r195896 * r195903;
double r195905 = fma(r195894, r195904, r195885);
double r195906 = 3.0;
double r195907 = 5.0;
double r195908 = sqrt(r195907);
double r195909 = r195906 - r195908;
double r195910 = r195909 / r195885;
double r195911 = 1.0;
double r195912 = r195908 - r195911;
double r195913 = r195912 / r195885;
double r195914 = fma(r195913, r195897, r195911);
double r195915 = fma(r195910, r195899, r195914);
double r195916 = r195905 / r195915;
double r195917 = r195916 / r195906;
return r195917;
}



Bits error versus x



Bits error versus y
Initial program 0.5
Simplified0.5
rmApplied flip--0.5
Final simplification0.5
herbie shell --seed 2020062 +o rules:numerics
(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))))))