\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(\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{1}{\sqrt{2}} \cdot \left(\frac{\sqrt{5} - 1}{\sqrt{2}} \cdot \cos x\right)\right) + \frac{\frac{3 \cdot 3 + \left(-5\right)}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}double f(double x, double y) {
double r226627 = 2.0;
double r226628 = sqrt(r226627);
double r226629 = x;
double r226630 = sin(r226629);
double r226631 = y;
double r226632 = sin(r226631);
double r226633 = 16.0;
double r226634 = r226632 / r226633;
double r226635 = r226630 - r226634;
double r226636 = r226628 * r226635;
double r226637 = r226630 / r226633;
double r226638 = r226632 - r226637;
double r226639 = r226636 * r226638;
double r226640 = cos(r226629);
double r226641 = cos(r226631);
double r226642 = r226640 - r226641;
double r226643 = r226639 * r226642;
double r226644 = r226627 + r226643;
double r226645 = 3.0;
double r226646 = 1.0;
double r226647 = 5.0;
double r226648 = sqrt(r226647);
double r226649 = r226648 - r226646;
double r226650 = r226649 / r226627;
double r226651 = r226650 * r226640;
double r226652 = r226646 + r226651;
double r226653 = r226645 - r226648;
double r226654 = r226653 / r226627;
double r226655 = r226654 * r226641;
double r226656 = r226652 + r226655;
double r226657 = r226645 * r226656;
double r226658 = r226644 / r226657;
return r226658;
}
double f(double x, double y) {
double r226659 = 2.0;
double r226660 = sqrt(r226659);
double r226661 = x;
double r226662 = sin(r226661);
double r226663 = y;
double r226664 = sin(r226663);
double r226665 = 16.0;
double r226666 = r226664 / r226665;
double r226667 = r226662 - r226666;
double r226668 = r226660 * r226667;
double r226669 = r226662 / r226665;
double r226670 = r226664 - r226669;
double r226671 = r226668 * r226670;
double r226672 = exp(r226671);
double r226673 = log(r226672);
double r226674 = cos(r226661);
double r226675 = cos(r226663);
double r226676 = r226674 - r226675;
double r226677 = r226673 * r226676;
double r226678 = r226659 + r226677;
double r226679 = 3.0;
double r226680 = 1.0;
double r226681 = 1.0;
double r226682 = r226681 / r226660;
double r226683 = 5.0;
double r226684 = sqrt(r226683);
double r226685 = r226684 - r226680;
double r226686 = r226685 / r226660;
double r226687 = r226686 * r226674;
double r226688 = r226682 * r226687;
double r226689 = r226680 + r226688;
double r226690 = r226679 * r226679;
double r226691 = -r226683;
double r226692 = r226690 + r226691;
double r226693 = r226679 + r226684;
double r226694 = r226692 / r226693;
double r226695 = r226694 / r226659;
double r226696 = r226695 * r226675;
double r226697 = r226689 + r226696;
double r226698 = r226679 * r226697;
double r226699 = r226678 / r226698;
return r226699;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.4
rmApplied flip--0.5
Simplified0.4
rmApplied add-sqr-sqrt0.4
Applied *-un-lft-identity0.4
Applied times-frac0.4
Applied associate-*l*0.4
rmApplied add-log-exp0.4
Final simplification0.4
herbie shell --seed 2020089
(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))))))