\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}^{3} + {\left(\left(\log \left({\left(e^{\sqrt{2}}\right)}^{\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(\left(\left(\log \left({\left(e^{\sqrt{2}}\right)}^{\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(\log \left({\left(e^{\sqrt{2}}\right)}^{\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) - 2\right) + 2 \cdot 2\right) \cdot \left(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)\right)}double f(double x, double y) {
double r223496 = 2.0;
double r223497 = sqrt(r223496);
double r223498 = x;
double r223499 = sin(r223498);
double r223500 = y;
double r223501 = sin(r223500);
double r223502 = 16.0;
double r223503 = r223501 / r223502;
double r223504 = r223499 - r223503;
double r223505 = r223497 * r223504;
double r223506 = r223499 / r223502;
double r223507 = r223501 - r223506;
double r223508 = r223505 * r223507;
double r223509 = cos(r223498);
double r223510 = cos(r223500);
double r223511 = r223509 - r223510;
double r223512 = r223508 * r223511;
double r223513 = r223496 + r223512;
double r223514 = 3.0;
double r223515 = 1.0;
double r223516 = 5.0;
double r223517 = sqrt(r223516);
double r223518 = r223517 - r223515;
double r223519 = r223518 / r223496;
double r223520 = r223519 * r223509;
double r223521 = r223515 + r223520;
double r223522 = r223514 - r223517;
double r223523 = r223522 / r223496;
double r223524 = r223523 * r223510;
double r223525 = r223521 + r223524;
double r223526 = r223514 * r223525;
double r223527 = r223513 / r223526;
return r223527;
}
double f(double x, double y) {
double r223528 = 2.0;
double r223529 = 3.0;
double r223530 = pow(r223528, r223529);
double r223531 = sqrt(r223528);
double r223532 = exp(r223531);
double r223533 = x;
double r223534 = sin(r223533);
double r223535 = y;
double r223536 = sin(r223535);
double r223537 = 16.0;
double r223538 = r223536 / r223537;
double r223539 = r223534 - r223538;
double r223540 = pow(r223532, r223539);
double r223541 = log(r223540);
double r223542 = r223534 / r223537;
double r223543 = r223536 - r223542;
double r223544 = r223541 * r223543;
double r223545 = cos(r223533);
double r223546 = cos(r223535);
double r223547 = r223545 - r223546;
double r223548 = r223544 * r223547;
double r223549 = pow(r223548, r223529);
double r223550 = r223530 + r223549;
double r223551 = r223548 - r223528;
double r223552 = r223548 * r223551;
double r223553 = r223528 * r223528;
double r223554 = r223552 + r223553;
double r223555 = 3.0;
double r223556 = 1.0;
double r223557 = 5.0;
double r223558 = sqrt(r223557);
double r223559 = r223558 - r223556;
double r223560 = r223559 / r223528;
double r223561 = r223560 * r223545;
double r223562 = r223556 + r223561;
double r223563 = r223555 * r223555;
double r223564 = -r223557;
double r223565 = r223563 + r223564;
double r223566 = r223555 + r223558;
double r223567 = r223565 / r223566;
double r223568 = r223567 / r223528;
double r223569 = r223568 * r223546;
double r223570 = r223562 + r223569;
double r223571 = r223555 * r223570;
double r223572 = r223554 * r223571;
double r223573 = r223550 / r223572;
return r223573;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied add-sqr-sqrt0.5
Applied sqrt-prod0.5
Applied associate-*l*0.5
rmApplied flip--0.5
Simplified0.5
rmApplied add-log-exp0.5
Simplified0.5
rmApplied flip3-+0.5
Applied associate-/l/0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2020002
(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))))))