\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 + \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}}{\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 r214431 = 2.0;
double r214432 = sqrt(r214431);
double r214433 = x;
double r214434 = sin(r214433);
double r214435 = y;
double r214436 = sin(r214435);
double r214437 = 16.0;
double r214438 = r214436 / r214437;
double r214439 = r214434 - r214438;
double r214440 = r214432 * r214439;
double r214441 = r214434 / r214437;
double r214442 = r214436 - r214441;
double r214443 = r214440 * r214442;
double r214444 = cos(r214433);
double r214445 = cos(r214435);
double r214446 = r214444 - r214445;
double r214447 = r214443 * r214446;
double r214448 = r214431 + r214447;
double r214449 = 3.0;
double r214450 = 1.0;
double r214451 = 5.0;
double r214452 = sqrt(r214451);
double r214453 = r214452 - r214450;
double r214454 = r214453 / r214431;
double r214455 = r214454 * r214444;
double r214456 = r214450 + r214455;
double r214457 = r214449 - r214452;
double r214458 = r214457 / r214431;
double r214459 = r214458 * r214445;
double r214460 = r214456 + r214459;
double r214461 = r214449 * r214460;
double r214462 = r214448 / r214461;
return r214462;
}
double f(double x, double y) {
double r214463 = 2.0;
double r214464 = sqrt(r214463);
double r214465 = x;
double r214466 = sin(r214465);
double r214467 = y;
double r214468 = sin(r214467);
double r214469 = 16.0;
double r214470 = r214468 / r214469;
double r214471 = r214466 - r214470;
double r214472 = r214464 * r214471;
double r214473 = r214466 / r214469;
double r214474 = r214468 - r214473;
double r214475 = r214472 * r214474;
double r214476 = cos(r214465);
double r214477 = cos(r214467);
double r214478 = r214476 - r214477;
double r214479 = r214475 * r214478;
double r214480 = r214463 + r214479;
double r214481 = 3.0;
double r214482 = r214480 / r214481;
double r214483 = 1.0;
double r214484 = 1.0;
double r214485 = r214484 / r214464;
double r214486 = 5.0;
double r214487 = sqrt(r214486);
double r214488 = r214487 - r214483;
double r214489 = r214488 / r214464;
double r214490 = r214489 * r214476;
double r214491 = r214485 * r214490;
double r214492 = r214483 + r214491;
double r214493 = r214481 * r214481;
double r214494 = r214493 - r214486;
double r214495 = r214481 + r214487;
double r214496 = r214494 / r214495;
double r214497 = r214496 / r214463;
double r214498 = r214497 * r214477;
double r214499 = r214492 + r214498;
double r214500 = r214482 / r214499;
return r214500;
}



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
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))))))