\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 + \log \left(e^{\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)}{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 r196667 = 2.0;
double r196668 = sqrt(r196667);
double r196669 = x;
double r196670 = sin(r196669);
double r196671 = y;
double r196672 = sin(r196671);
double r196673 = 16.0;
double r196674 = r196672 / r196673;
double r196675 = r196670 - r196674;
double r196676 = r196668 * r196675;
double r196677 = r196670 / r196673;
double r196678 = r196672 - r196677;
double r196679 = r196676 * r196678;
double r196680 = cos(r196669);
double r196681 = cos(r196671);
double r196682 = r196680 - r196681;
double r196683 = r196679 * r196682;
double r196684 = r196667 + r196683;
double r196685 = 3.0;
double r196686 = 1.0;
double r196687 = 5.0;
double r196688 = sqrt(r196687);
double r196689 = r196688 - r196686;
double r196690 = r196689 / r196667;
double r196691 = r196690 * r196680;
double r196692 = r196686 + r196691;
double r196693 = r196685 - r196688;
double r196694 = r196693 / r196667;
double r196695 = r196694 * r196681;
double r196696 = r196692 + r196695;
double r196697 = r196685 * r196696;
double r196698 = r196684 / r196697;
return r196698;
}
double f(double x, double y) {
double r196699 = 2.0;
double r196700 = sqrt(r196699);
double r196701 = x;
double r196702 = sin(r196701);
double r196703 = y;
double r196704 = sin(r196703);
double r196705 = 16.0;
double r196706 = r196704 / r196705;
double r196707 = r196702 - r196706;
double r196708 = r196700 * r196707;
double r196709 = r196702 / r196705;
double r196710 = r196704 - r196709;
double r196711 = r196708 * r196710;
double r196712 = cos(r196701);
double r196713 = cos(r196703);
double r196714 = r196712 - r196713;
double r196715 = r196711 * r196714;
double r196716 = exp(r196715);
double r196717 = log(r196716);
double r196718 = r196699 + r196717;
double r196719 = 3.0;
double r196720 = 1.0;
double r196721 = 5.0;
double r196722 = sqrt(r196721);
double r196723 = r196722 - r196720;
double r196724 = r196723 / r196699;
double r196725 = r196724 * r196712;
double r196726 = r196720 + r196725;
double r196727 = r196719 * r196719;
double r196728 = -r196721;
double r196729 = r196727 + r196728;
double r196730 = r196719 + r196722;
double r196731 = r196729 / r196730;
double r196732 = r196731 / r196699;
double r196733 = r196732 * r196713;
double r196734 = r196726 + r196733;
double r196735 = r196719 * r196734;
double r196736 = r196718 / r196735;
return r196736;
}



Bits error versus x



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