Average Error: 0.5 → 0.5
Time: 15.3s
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 + \left(\left(\left(\sqrt[3]{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)} \cdot \sqrt[3]{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)}\right) \cdot \sqrt[3]{\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(\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]{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)} \cdot \sqrt[3]{\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)}\right) \cdot \sqrt[3]{\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)}
double f(double x, double y) {
        double r215696 = 2.0;
        double r215697 = sqrt(r215696);
        double r215698 = x;
        double r215699 = sin(r215698);
        double r215700 = y;
        double r215701 = sin(r215700);
        double r215702 = 16.0;
        double r215703 = r215701 / r215702;
        double r215704 = r215699 - r215703;
        double r215705 = r215697 * r215704;
        double r215706 = r215699 / r215702;
        double r215707 = r215701 - r215706;
        double r215708 = r215705 * r215707;
        double r215709 = cos(r215698);
        double r215710 = cos(r215700);
        double r215711 = r215709 - r215710;
        double r215712 = r215708 * r215711;
        double r215713 = r215696 + r215712;
        double r215714 = 3.0;
        double r215715 = 1.0;
        double r215716 = 5.0;
        double r215717 = sqrt(r215716);
        double r215718 = r215717 - r215715;
        double r215719 = r215718 / r215696;
        double r215720 = r215719 * r215709;
        double r215721 = r215715 + r215720;
        double r215722 = r215714 - r215717;
        double r215723 = r215722 / r215696;
        double r215724 = r215723 * r215710;
        double r215725 = r215721 + r215724;
        double r215726 = r215714 * r215725;
        double r215727 = r215713 / r215726;
        return r215727;
}

double f(double x, double y) {
        double r215728 = 2.0;
        double r215729 = sqrt(r215728);
        double r215730 = x;
        double r215731 = sin(r215730);
        double r215732 = y;
        double r215733 = sin(r215732);
        double r215734 = 16.0;
        double r215735 = r215733 / r215734;
        double r215736 = r215731 - r215735;
        double r215737 = r215729 * r215736;
        double r215738 = cbrt(r215737);
        double r215739 = r215738 * r215738;
        double r215740 = r215739 * r215738;
        double r215741 = r215731 / r215734;
        double r215742 = r215733 - r215741;
        double r215743 = r215740 * r215742;
        double r215744 = cos(r215730);
        double r215745 = cos(r215732);
        double r215746 = r215744 - r215745;
        double r215747 = r215743 * r215746;
        double r215748 = r215728 + r215747;
        double r215749 = 3.0;
        double r215750 = 1.0;
        double r215751 = 5.0;
        double r215752 = sqrt(r215751);
        double r215753 = r215752 - r215750;
        double r215754 = r215753 / r215728;
        double r215755 = r215754 * r215744;
        double r215756 = r215750 + r215755;
        double r215757 = r215749 - r215752;
        double r215758 = r215757 / r215728;
        double r215759 = r215758 * r215745;
        double r215760 = r215756 + r215759;
        double r215761 = r215749 * r215760;
        double r215762 = r215748 / r215761;
        return r215762;
}

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-cube-cbrt0.5

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

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

Reproduce

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