\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 + \left(\left(\left(\sqrt[3]{\log \left(\sqrt{e^{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)}}\right)} \cdot \sqrt[3]{\log \left(\sqrt{e^{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)}}\right)}\right) \cdot \sqrt[3]{\log \left(\sqrt{e^{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)}}\right)} + \log \left(\sqrt{e^{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)}}\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{\frac{3 \cdot 3 + \left(-5\right)}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}double f(double x, double y) {
double r217548 = 2.0;
double r217549 = sqrt(r217548);
double r217550 = x;
double r217551 = sin(r217550);
double r217552 = y;
double r217553 = sin(r217552);
double r217554 = 16.0;
double r217555 = r217553 / r217554;
double r217556 = r217551 - r217555;
double r217557 = r217549 * r217556;
double r217558 = r217551 / r217554;
double r217559 = r217553 - r217558;
double r217560 = r217557 * r217559;
double r217561 = cos(r217550);
double r217562 = cos(r217552);
double r217563 = r217561 - r217562;
double r217564 = r217560 * r217563;
double r217565 = r217548 + r217564;
double r217566 = 3.0;
double r217567 = 1.0;
double r217568 = 5.0;
double r217569 = sqrt(r217568);
double r217570 = r217569 - r217567;
double r217571 = r217570 / r217548;
double r217572 = r217571 * r217561;
double r217573 = r217567 + r217572;
double r217574 = r217566 - r217569;
double r217575 = r217574 / r217548;
double r217576 = r217575 * r217562;
double r217577 = r217573 + r217576;
double r217578 = r217566 * r217577;
double r217579 = r217565 / r217578;
return r217579;
}
double f(double x, double y) {
double r217580 = 2.0;
double r217581 = sqrt(r217580);
double r217582 = x;
double r217583 = sin(r217582);
double r217584 = y;
double r217585 = sin(r217584);
double r217586 = 16.0;
double r217587 = r217585 / r217586;
double r217588 = r217583 - r217587;
double r217589 = r217581 * r217588;
double r217590 = exp(r217589);
double r217591 = sqrt(r217590);
double r217592 = log(r217591);
double r217593 = cbrt(r217592);
double r217594 = r217593 * r217593;
double r217595 = r217594 * r217593;
double r217596 = r217595 + r217592;
double r217597 = r217583 / r217586;
double r217598 = r217585 - r217597;
double r217599 = r217596 * r217598;
double r217600 = cos(r217582);
double r217601 = cos(r217584);
double r217602 = r217600 - r217601;
double r217603 = r217599 * r217602;
double r217604 = r217580 + r217603;
double r217605 = 3.0;
double r217606 = 1.0;
double r217607 = 5.0;
double r217608 = sqrt(r217607);
double r217609 = r217608 - r217606;
double r217610 = r217609 / r217580;
double r217611 = r217610 * r217600;
double r217612 = r217606 + r217611;
double r217613 = r217605 * r217605;
double r217614 = -r217607;
double r217615 = r217613 + r217614;
double r217616 = r217605 + r217608;
double r217617 = r217615 / r217616;
double r217618 = r217617 / r217580;
double r217619 = r217618 * r217601;
double r217620 = r217612 + r217619;
double r217621 = r217605 * r217620;
double r217622 = r217604 / r217621;
return r217622;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip--0.5
Simplified0.4
rmApplied add-log-exp0.4
rmApplied add-sqr-sqrt0.5
Applied log-prod0.4
rmApplied add-cube-cbrt0.5
Final simplification0.5
herbie shell --seed 2020100
(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))))))