\frac{2.0 + \left(\left(\sqrt{2.0} \cdot \left(\sin x - \frac{\sin y}{16.0}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)}{3.0 \cdot \left(\left(1.0 + \frac{\sqrt{5.0} - 1.0}{2.0} \cdot \cos x\right) + \frac{3.0 - \sqrt{5.0}}{2.0} \cdot \cos y\right)}\frac{\frac{\left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\cos x \cdot \cos x - \cos y \cdot \cos y\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right)}{\cos y + \cos x} + 2.0}{\left(\frac{\frac{3.0 \cdot 3.0 - 5.0}{\sqrt{5.0} + 3.0}}{2.0} \cdot \cos y + \left(\frac{\sqrt{5.0} - 1.0}{2.0} \cdot \cos x + 1.0\right)\right) \cdot 3.0}double f(double x, double y) {
double r9658402 = 2.0;
double r9658403 = sqrt(r9658402);
double r9658404 = x;
double r9658405 = sin(r9658404);
double r9658406 = y;
double r9658407 = sin(r9658406);
double r9658408 = 16.0;
double r9658409 = r9658407 / r9658408;
double r9658410 = r9658405 - r9658409;
double r9658411 = r9658403 * r9658410;
double r9658412 = r9658405 / r9658408;
double r9658413 = r9658407 - r9658412;
double r9658414 = r9658411 * r9658413;
double r9658415 = cos(r9658404);
double r9658416 = cos(r9658406);
double r9658417 = r9658415 - r9658416;
double r9658418 = r9658414 * r9658417;
double r9658419 = r9658402 + r9658418;
double r9658420 = 3.0;
double r9658421 = 1.0;
double r9658422 = 5.0;
double r9658423 = sqrt(r9658422);
double r9658424 = r9658423 - r9658421;
double r9658425 = r9658424 / r9658402;
double r9658426 = r9658425 * r9658415;
double r9658427 = r9658421 + r9658426;
double r9658428 = r9658420 - r9658423;
double r9658429 = r9658428 / r9658402;
double r9658430 = r9658429 * r9658416;
double r9658431 = r9658427 + r9658430;
double r9658432 = r9658420 * r9658431;
double r9658433 = r9658419 / r9658432;
return r9658433;
}
double f(double x, double y) {
double r9658434 = x;
double r9658435 = sin(r9658434);
double r9658436 = y;
double r9658437 = sin(r9658436);
double r9658438 = 16.0;
double r9658439 = r9658437 / r9658438;
double r9658440 = r9658435 - r9658439;
double r9658441 = 2.0;
double r9658442 = sqrt(r9658441);
double r9658443 = r9658440 * r9658442;
double r9658444 = cos(r9658434);
double r9658445 = r9658444 * r9658444;
double r9658446 = cos(r9658436);
double r9658447 = r9658446 * r9658446;
double r9658448 = r9658445 - r9658447;
double r9658449 = r9658443 * r9658448;
double r9658450 = r9658435 / r9658438;
double r9658451 = r9658437 - r9658450;
double r9658452 = r9658449 * r9658451;
double r9658453 = r9658446 + r9658444;
double r9658454 = r9658452 / r9658453;
double r9658455 = r9658454 + r9658441;
double r9658456 = 3.0;
double r9658457 = r9658456 * r9658456;
double r9658458 = 5.0;
double r9658459 = r9658457 - r9658458;
double r9658460 = sqrt(r9658458);
double r9658461 = r9658460 + r9658456;
double r9658462 = r9658459 / r9658461;
double r9658463 = r9658462 / r9658441;
double r9658464 = r9658463 * r9658446;
double r9658465 = 1.0;
double r9658466 = r9658460 - r9658465;
double r9658467 = r9658466 / r9658441;
double r9658468 = r9658467 * r9658444;
double r9658469 = r9658468 + r9658465;
double r9658470 = r9658464 + r9658469;
double r9658471 = r9658470 * r9658456;
double r9658472 = r9658455 / r9658471;
return r9658472;
}



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 sqrt-prod0.4
Applied associate-*l*0.4
rmApplied flip--0.4
Applied associate-*r/0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019158
(FPCore (x y)
:name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
(/ (+ 2.0 (* (* (* (sqrt 2.0) (- (sin x) (/ (sin y) 16.0))) (- (sin y) (/ (sin x) 16.0))) (- (cos x) (cos y)))) (* 3.0 (+ (+ 1.0 (* (/ (- (sqrt 5.0) 1.0) 2.0) (cos x))) (* (/ (- 3.0 (sqrt 5.0)) 2.0) (cos y))))))