\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{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}}{\left(1 + \frac{1}{\sqrt{2}} \cdot \left(\frac{\sqrt{5} - 1}{\sqrt{2}} \cdot \cos x\right)\right) + \frac{\frac{3 \cdot 3 - 5}{3 + \sqrt{5}}}{2} \cdot \cos y}double f(double x, double y) {
double r182575 = 2.0;
double r182576 = sqrt(r182575);
double r182577 = x;
double r182578 = sin(r182577);
double r182579 = y;
double r182580 = sin(r182579);
double r182581 = 16.0;
double r182582 = r182580 / r182581;
double r182583 = r182578 - r182582;
double r182584 = r182576 * r182583;
double r182585 = r182578 / r182581;
double r182586 = r182580 - r182585;
double r182587 = r182584 * r182586;
double r182588 = cos(r182577);
double r182589 = cos(r182579);
double r182590 = r182588 - r182589;
double r182591 = r182587 * r182590;
double r182592 = r182575 + r182591;
double r182593 = 3.0;
double r182594 = 1.0;
double r182595 = 5.0;
double r182596 = sqrt(r182595);
double r182597 = r182596 - r182594;
double r182598 = r182597 / r182575;
double r182599 = r182598 * r182588;
double r182600 = r182594 + r182599;
double r182601 = r182593 - r182596;
double r182602 = r182601 / r182575;
double r182603 = r182602 * r182589;
double r182604 = r182600 + r182603;
double r182605 = r182593 * r182604;
double r182606 = r182592 / r182605;
return r182606;
}
double f(double x, double y) {
double r182607 = 2.0;
double r182608 = sqrt(r182607);
double r182609 = x;
double r182610 = sin(r182609);
double r182611 = y;
double r182612 = sin(r182611);
double r182613 = 16.0;
double r182614 = r182612 / r182613;
double r182615 = r182610 - r182614;
double r182616 = r182608 * r182615;
double r182617 = r182610 / r182613;
double r182618 = r182612 - r182617;
double r182619 = r182616 * r182618;
double r182620 = cos(r182609);
double r182621 = cos(r182611);
double r182622 = r182620 - r182621;
double r182623 = r182619 * r182622;
double r182624 = exp(r182623);
double r182625 = log(r182624);
double r182626 = r182607 + r182625;
double r182627 = 3.0;
double r182628 = r182626 / r182627;
double r182629 = 1.0;
double r182630 = 1.0;
double r182631 = r182630 / r182608;
double r182632 = 5.0;
double r182633 = sqrt(r182632);
double r182634 = r182633 - r182629;
double r182635 = r182634 / r182608;
double r182636 = r182635 * r182620;
double r182637 = r182631 * r182636;
double r182638 = r182629 + r182637;
double r182639 = r182627 * r182627;
double r182640 = r182639 - r182632;
double r182641 = r182627 + r182633;
double r182642 = r182640 / r182641;
double r182643 = r182642 / r182607;
double r182644 = r182643 * r182621;
double r182645 = r182638 + r182644;
double r182646 = r182628 / r182645;
return r182646;
}



Bits error versus x



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