\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(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \frac{\cos x \cdot \cos x - \cos y \cdot \cos y}{\cos x + \cos y}}{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 r212792 = 2.0;
double r212793 = sqrt(r212792);
double r212794 = x;
double r212795 = sin(r212794);
double r212796 = y;
double r212797 = sin(r212796);
double r212798 = 16.0;
double r212799 = r212797 / r212798;
double r212800 = r212795 - r212799;
double r212801 = r212793 * r212800;
double r212802 = r212795 / r212798;
double r212803 = r212797 - r212802;
double r212804 = r212801 * r212803;
double r212805 = cos(r212794);
double r212806 = cos(r212796);
double r212807 = r212805 - r212806;
double r212808 = r212804 * r212807;
double r212809 = r212792 + r212808;
double r212810 = 3.0;
double r212811 = 1.0;
double r212812 = 5.0;
double r212813 = sqrt(r212812);
double r212814 = r212813 - r212811;
double r212815 = r212814 / r212792;
double r212816 = r212815 * r212805;
double r212817 = r212811 + r212816;
double r212818 = r212810 - r212813;
double r212819 = r212818 / r212792;
double r212820 = r212819 * r212806;
double r212821 = r212817 + r212820;
double r212822 = r212810 * r212821;
double r212823 = r212809 / r212822;
return r212823;
}
double f(double x, double y) {
double r212824 = 2.0;
double r212825 = sqrt(r212824);
double r212826 = x;
double r212827 = sin(r212826);
double r212828 = y;
double r212829 = sin(r212828);
double r212830 = 16.0;
double r212831 = r212829 / r212830;
double r212832 = r212827 - r212831;
double r212833 = r212825 * r212832;
double r212834 = r212827 / r212830;
double r212835 = r212829 - r212834;
double r212836 = r212833 * r212835;
double r212837 = cos(r212826);
double r212838 = r212837 * r212837;
double r212839 = cos(r212828);
double r212840 = r212839 * r212839;
double r212841 = r212838 - r212840;
double r212842 = r212837 + r212839;
double r212843 = r212841 / r212842;
double r212844 = r212836 * r212843;
double r212845 = r212824 + r212844;
double r212846 = 3.0;
double r212847 = 1.0;
double r212848 = 5.0;
double r212849 = sqrt(r212848);
double r212850 = r212849 - r212847;
double r212851 = r212850 / r212824;
double r212852 = r212851 * r212837;
double r212853 = r212847 + r212852;
double r212854 = r212846 * r212846;
double r212855 = -r212848;
double r212856 = r212854 + r212855;
double r212857 = r212846 + r212849;
double r212858 = r212856 / r212857;
double r212859 = r212858 / r212824;
double r212860 = r212859 * r212839;
double r212861 = r212853 + r212860;
double r212862 = r212846 * r212861;
double r212863 = r212845 / r212862;
return r212863;
}



Bits error versus x



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