Average Error: 0.5 → 0.5
Time: 13.1s
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{2 + \log \left(e^{\sqrt[3]{{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)}^{3}} \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(\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 + \log \left(e^{\sqrt[3]{{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)}^{3}} \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)}
double f(double x, double y) {
        double r159611 = 2.0;
        double r159612 = sqrt(r159611);
        double r159613 = x;
        double r159614 = sin(r159613);
        double r159615 = y;
        double r159616 = sin(r159615);
        double r159617 = 16.0;
        double r159618 = r159616 / r159617;
        double r159619 = r159614 - r159618;
        double r159620 = r159612 * r159619;
        double r159621 = r159614 / r159617;
        double r159622 = r159616 - r159621;
        double r159623 = r159620 * r159622;
        double r159624 = cos(r159613);
        double r159625 = cos(r159615);
        double r159626 = r159624 - r159625;
        double r159627 = r159623 * r159626;
        double r159628 = r159611 + r159627;
        double r159629 = 3.0;
        double r159630 = 1.0;
        double r159631 = 5.0;
        double r159632 = sqrt(r159631);
        double r159633 = r159632 - r159630;
        double r159634 = r159633 / r159611;
        double r159635 = r159634 * r159624;
        double r159636 = r159630 + r159635;
        double r159637 = r159629 - r159632;
        double r159638 = r159637 / r159611;
        double r159639 = r159638 * r159625;
        double r159640 = r159636 + r159639;
        double r159641 = r159629 * r159640;
        double r159642 = r159628 / r159641;
        return r159642;
}

double f(double x, double y) {
        double r159643 = 2.0;
        double r159644 = sqrt(r159643);
        double r159645 = x;
        double r159646 = sin(r159645);
        double r159647 = y;
        double r159648 = sin(r159647);
        double r159649 = 16.0;
        double r159650 = r159648 / r159649;
        double r159651 = r159646 - r159650;
        double r159652 = r159644 * r159651;
        double r159653 = 3.0;
        double r159654 = pow(r159652, r159653);
        double r159655 = cbrt(r159654);
        double r159656 = r159646 / r159649;
        double r159657 = r159648 - r159656;
        double r159658 = r159655 * r159657;
        double r159659 = exp(r159658);
        double r159660 = log(r159659);
        double r159661 = cos(r159645);
        double r159662 = cos(r159647);
        double r159663 = r159661 - r159662;
        double r159664 = r159660 * r159663;
        double r159665 = r159643 + r159664;
        double r159666 = 3.0;
        double r159667 = 1.0;
        double r159668 = 5.0;
        double r159669 = sqrt(r159668);
        double r159670 = r159669 - r159667;
        double r159671 = r159670 / r159643;
        double r159672 = r159671 * r159661;
        double r159673 = r159667 + r159672;
        double r159674 = r159666 - r159669;
        double r159675 = r159674 / r159643;
        double r159676 = r159675 * r159662;
        double r159677 = r159673 + r159676;
        double r159678 = r159666 * r159677;
        double r159679 = r159665 / r159678;
        return r159679;
}

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 + \color{blue}{\log \left(e^{\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)}\]
  4. Using strategy rm
  5. Applied add-cbrt-cube0.5

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

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

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

Reproduce

herbie shell --seed 2020001 +o rules:numerics
(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))))))