\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 \cdot 2 - \left(\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)\right) \cdot \left(\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)\right)}{\left(3 \cdot \mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)\right) \cdot \left(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)\right)}double f(double x, double y) {
double r189715 = 2.0;
double r189716 = sqrt(r189715);
double r189717 = x;
double r189718 = sin(r189717);
double r189719 = y;
double r189720 = sin(r189719);
double r189721 = 16.0;
double r189722 = r189720 / r189721;
double r189723 = r189718 - r189722;
double r189724 = r189716 * r189723;
double r189725 = r189718 / r189721;
double r189726 = r189720 - r189725;
double r189727 = r189724 * r189726;
double r189728 = cos(r189717);
double r189729 = cos(r189719);
double r189730 = r189728 - r189729;
double r189731 = r189727 * r189730;
double r189732 = r189715 + r189731;
double r189733 = 3.0;
double r189734 = 1.0;
double r189735 = 5.0;
double r189736 = sqrt(r189735);
double r189737 = r189736 - r189734;
double r189738 = r189737 / r189715;
double r189739 = r189738 * r189728;
double r189740 = r189734 + r189739;
double r189741 = r189733 - r189736;
double r189742 = r189741 / r189715;
double r189743 = r189742 * r189729;
double r189744 = r189740 + r189743;
double r189745 = r189733 * r189744;
double r189746 = r189732 / r189745;
return r189746;
}
double f(double x, double y) {
double r189747 = 2.0;
double r189748 = r189747 * r189747;
double r189749 = sqrt(r189747);
double r189750 = x;
double r189751 = sin(r189750);
double r189752 = y;
double r189753 = sin(r189752);
double r189754 = 16.0;
double r189755 = r189753 / r189754;
double r189756 = r189751 - r189755;
double r189757 = r189749 * r189756;
double r189758 = r189751 / r189754;
double r189759 = r189753 - r189758;
double r189760 = r189757 * r189759;
double r189761 = cos(r189750);
double r189762 = cos(r189752);
double r189763 = r189761 - r189762;
double r189764 = r189760 * r189763;
double r189765 = r189764 * r189764;
double r189766 = r189748 - r189765;
double r189767 = 3.0;
double r189768 = 5.0;
double r189769 = sqrt(r189768);
double r189770 = r189767 - r189769;
double r189771 = r189770 / r189747;
double r189772 = 1.0;
double r189773 = r189769 - r189772;
double r189774 = r189773 / r189747;
double r189775 = fma(r189761, r189774, r189772);
double r189776 = fma(r189762, r189771, r189775);
double r189777 = r189767 * r189776;
double r189778 = r189747 - r189764;
double r189779 = r189777 * r189778;
double r189780 = r189766 / r189779;
return r189780;
}



Bits error versus x



Bits error versus y
Initial program 0.5
rmApplied flip-+0.5
Applied associate-/l/0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019208 +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))))))