Average Error: 0.5 → 0.5
Time: 44.9s
Precision: 64
\[\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{2.0 + \left(\sqrt[3]{\cos x - \cos y} \cdot \left(\sqrt[3]{\cos x - \cos y} \cdot \sqrt[3]{\cos x - \cos y}\right)\right) \cdot \left(\left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right)\right)}{\left(\left(\cos x \cdot \frac{\sqrt{5.0} - 1.0}{2.0} + 1.0\right) + \cos y \cdot \frac{\frac{3.0 \cdot 3.0 - 5.0}{3.0 + \sqrt{5.0}}}{2.0}\right) \cdot 3.0}\]
\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{2.0 + \left(\sqrt[3]{\cos x - \cos y} \cdot \left(\sqrt[3]{\cos x - \cos y} \cdot \sqrt[3]{\cos x - \cos y}\right)\right) \cdot \left(\left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right)\right)}{\left(\left(\cos x \cdot \frac{\sqrt{5.0} - 1.0}{2.0} + 1.0\right) + \cos y \cdot \frac{\frac{3.0 \cdot 3.0 - 5.0}{3.0 + \sqrt{5.0}}}{2.0}\right) \cdot 3.0}
double f(double x, double y) {
        double r10745789 = 2.0;
        double r10745790 = sqrt(r10745789);
        double r10745791 = x;
        double r10745792 = sin(r10745791);
        double r10745793 = y;
        double r10745794 = sin(r10745793);
        double r10745795 = 16.0;
        double r10745796 = r10745794 / r10745795;
        double r10745797 = r10745792 - r10745796;
        double r10745798 = r10745790 * r10745797;
        double r10745799 = r10745792 / r10745795;
        double r10745800 = r10745794 - r10745799;
        double r10745801 = r10745798 * r10745800;
        double r10745802 = cos(r10745791);
        double r10745803 = cos(r10745793);
        double r10745804 = r10745802 - r10745803;
        double r10745805 = r10745801 * r10745804;
        double r10745806 = r10745789 + r10745805;
        double r10745807 = 3.0;
        double r10745808 = 1.0;
        double r10745809 = 5.0;
        double r10745810 = sqrt(r10745809);
        double r10745811 = r10745810 - r10745808;
        double r10745812 = r10745811 / r10745789;
        double r10745813 = r10745812 * r10745802;
        double r10745814 = r10745808 + r10745813;
        double r10745815 = r10745807 - r10745810;
        double r10745816 = r10745815 / r10745789;
        double r10745817 = r10745816 * r10745803;
        double r10745818 = r10745814 + r10745817;
        double r10745819 = r10745807 * r10745818;
        double r10745820 = r10745806 / r10745819;
        return r10745820;
}

double f(double x, double y) {
        double r10745821 = 2.0;
        double r10745822 = x;
        double r10745823 = cos(r10745822);
        double r10745824 = y;
        double r10745825 = cos(r10745824);
        double r10745826 = r10745823 - r10745825;
        double r10745827 = cbrt(r10745826);
        double r10745828 = r10745827 * r10745827;
        double r10745829 = r10745827 * r10745828;
        double r10745830 = sin(r10745824);
        double r10745831 = sin(r10745822);
        double r10745832 = 16.0;
        double r10745833 = r10745831 / r10745832;
        double r10745834 = r10745830 - r10745833;
        double r10745835 = r10745830 / r10745832;
        double r10745836 = r10745831 - r10745835;
        double r10745837 = sqrt(r10745821);
        double r10745838 = r10745836 * r10745837;
        double r10745839 = r10745834 * r10745838;
        double r10745840 = r10745829 * r10745839;
        double r10745841 = r10745821 + r10745840;
        double r10745842 = 5.0;
        double r10745843 = sqrt(r10745842);
        double r10745844 = 1.0;
        double r10745845 = r10745843 - r10745844;
        double r10745846 = r10745845 / r10745821;
        double r10745847 = r10745823 * r10745846;
        double r10745848 = r10745847 + r10745844;
        double r10745849 = 3.0;
        double r10745850 = r10745849 * r10745849;
        double r10745851 = r10745850 - r10745842;
        double r10745852 = r10745849 + r10745843;
        double r10745853 = r10745851 / r10745852;
        double r10745854 = r10745853 / r10745821;
        double r10745855 = r10745825 * r10745854;
        double r10745856 = r10745848 + r10745855;
        double r10745857 = r10745856 * r10745849;
        double r10745858 = r10745841 / r10745857;
        return r10745858;
}

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

    \[\leadsto \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 \color{blue}{\left(\left(\sqrt[3]{\cos x - \cos y} \cdot \sqrt[3]{\cos x - \cos y}\right) \cdot \sqrt[3]{\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)}\]
  4. Using strategy rm
  5. Applied flip--0.5

    \[\leadsto \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(\left(\sqrt[3]{\cos x - \cos y} \cdot \sqrt[3]{\cos x - \cos y}\right) \cdot \sqrt[3]{\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{\color{blue}{\frac{3.0 \cdot 3.0 - \sqrt{5.0} \cdot \sqrt{5.0}}{3.0 + \sqrt{5.0}}}}{2.0} \cdot \cos y\right)}\]
  6. Simplified0.5

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

    \[\leadsto \frac{2.0 + \left(\sqrt[3]{\cos x - \cos y} \cdot \left(\sqrt[3]{\cos x - \cos y} \cdot \sqrt[3]{\cos x - \cos y}\right)\right) \cdot \left(\left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right)\right)}{\left(\left(\cos x \cdot \frac{\sqrt{5.0} - 1.0}{2.0} + 1.0\right) + \cos y \cdot \frac{\frac{3.0 \cdot 3.0 - 5.0}{3.0 + \sqrt{5.0}}}{2.0}\right) \cdot 3.0}\]

Reproduce

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