Average Error: 0.5 → 0.5
Time: 29.7s
Precision: 64
\[\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{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right)\right) + 2}{\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}}{3}\]
\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{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right)\right) + 2}{\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}}{3}
double f(double x, double y) {
        double r158566 = 2.0;
        double r158567 = sqrt(r158566);
        double r158568 = x;
        double r158569 = sin(r158568);
        double r158570 = y;
        double r158571 = sin(r158570);
        double r158572 = 16.0;
        double r158573 = r158571 / r158572;
        double r158574 = r158569 - r158573;
        double r158575 = r158567 * r158574;
        double r158576 = r158569 / r158572;
        double r158577 = r158571 - r158576;
        double r158578 = r158575 * r158577;
        double r158579 = cos(r158568);
        double r158580 = cos(r158570);
        double r158581 = r158579 - r158580;
        double r158582 = r158578 * r158581;
        double r158583 = r158566 + r158582;
        double r158584 = 3.0;
        double r158585 = 1.0;
        double r158586 = 5.0;
        double r158587 = sqrt(r158586);
        double r158588 = r158587 - r158585;
        double r158589 = r158588 / r158566;
        double r158590 = r158589 * r158579;
        double r158591 = r158585 + r158590;
        double r158592 = r158584 - r158587;
        double r158593 = r158592 / r158566;
        double r158594 = r158593 * r158580;
        double r158595 = r158591 + r158594;
        double r158596 = r158584 * r158595;
        double r158597 = r158583 / r158596;
        return r158597;
}

double f(double x, double y) {
        double r158598 = 2.0;
        double r158599 = sqrt(r158598);
        double r158600 = x;
        double r158601 = sin(r158600);
        double r158602 = y;
        double r158603 = sin(r158602);
        double r158604 = 16.0;
        double r158605 = r158603 / r158604;
        double r158606 = r158601 - r158605;
        double r158607 = r158599 * r158606;
        double r158608 = r158601 / r158604;
        double r158609 = r158603 - r158608;
        double r158610 = cos(r158600);
        double r158611 = cos(r158602);
        double r158612 = r158610 - r158611;
        double r158613 = r158609 * r158612;
        double r158614 = r158607 * r158613;
        double r158615 = r158614 + r158598;
        double r158616 = 1.0;
        double r158617 = 5.0;
        double r158618 = sqrt(r158617);
        double r158619 = r158618 - r158616;
        double r158620 = r158619 / r158598;
        double r158621 = r158620 * r158610;
        double r158622 = r158616 + r158621;
        double r158623 = 3.0;
        double r158624 = r158623 * r158623;
        double r158625 = -r158617;
        double r158626 = r158624 + r158625;
        double r158627 = r158623 + r158618;
        double r158628 = r158626 / r158627;
        double r158629 = r158628 / r158598;
        double r158630 = r158629 * r158611;
        double r158631 = r158622 + r158630;
        double r158632 = r158615 / r158631;
        double r158633 = r158632 / r158623;
        return r158633;
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.5

    \[\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)}\]
  2. Using strategy rm
  3. Applied add-log-exp0.5

    \[\leadsto \frac{2 + \left(\color{blue}{\log \left(e^{\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)}\]
  4. Using strategy rm
  5. Applied flip--0.5

    \[\leadsto \frac{2 + \left(\log \left(e^{\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{\color{blue}{\frac{3 \cdot 3 - \sqrt{5} \cdot \sqrt{5}}{3 + \sqrt{5}}}}{2} \cdot \cos y\right)}\]
  6. Simplified0.5

    \[\leadsto \frac{2 + \left(\log \left(e^{\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{\frac{\color{blue}{3 \cdot 3 + \left(-5\right)}}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}\]
  7. Final simplification0.5

    \[\leadsto \frac{\frac{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right)\right) + 2}{\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}}{3}\]

Reproduce

herbie shell --seed 2019297 
(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))))))