Average Error: 0.5 → 0.5
Time: 44.4s
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)}\]
\[\left(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)\right) \cdot \frac{1}{\left(\cos y \cdot \frac{3.0 - \sqrt{5.0}}{2.0} + \left(\frac{\sqrt{5.0} - 1.0}{2.0} \cdot \cos x + 1.0\right)\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)}
\left(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)\right) \cdot \frac{1}{\left(\cos y \cdot \frac{3.0 - \sqrt{5.0}}{2.0} + \left(\frac{\sqrt{5.0} - 1.0}{2.0} \cdot \cos x + 1.0\right)\right) \cdot 3.0}
double f(double x, double y) {
        double r12872063 = 2.0;
        double r12872064 = sqrt(r12872063);
        double r12872065 = x;
        double r12872066 = sin(r12872065);
        double r12872067 = y;
        double r12872068 = sin(r12872067);
        double r12872069 = 16.0;
        double r12872070 = r12872068 / r12872069;
        double r12872071 = r12872066 - r12872070;
        double r12872072 = r12872064 * r12872071;
        double r12872073 = r12872066 / r12872069;
        double r12872074 = r12872068 - r12872073;
        double r12872075 = r12872072 * r12872074;
        double r12872076 = cos(r12872065);
        double r12872077 = cos(r12872067);
        double r12872078 = r12872076 - r12872077;
        double r12872079 = r12872075 * r12872078;
        double r12872080 = r12872063 + r12872079;
        double r12872081 = 3.0;
        double r12872082 = 1.0;
        double r12872083 = 5.0;
        double r12872084 = sqrt(r12872083);
        double r12872085 = r12872084 - r12872082;
        double r12872086 = r12872085 / r12872063;
        double r12872087 = r12872086 * r12872076;
        double r12872088 = r12872082 + r12872087;
        double r12872089 = r12872081 - r12872084;
        double r12872090 = r12872089 / r12872063;
        double r12872091 = r12872090 * r12872077;
        double r12872092 = r12872088 + r12872091;
        double r12872093 = r12872081 * r12872092;
        double r12872094 = r12872080 / r12872093;
        return r12872094;
}

double f(double x, double y) {
        double r12872095 = 2.0;
        double r12872096 = x;
        double r12872097 = cos(r12872096);
        double r12872098 = y;
        double r12872099 = cos(r12872098);
        double r12872100 = r12872097 - r12872099;
        double r12872101 = cbrt(r12872100);
        double r12872102 = r12872101 * r12872101;
        double r12872103 = r12872101 * r12872102;
        double r12872104 = sin(r12872098);
        double r12872105 = sin(r12872096);
        double r12872106 = 16.0;
        double r12872107 = r12872105 / r12872106;
        double r12872108 = r12872104 - r12872107;
        double r12872109 = r12872104 / r12872106;
        double r12872110 = r12872105 - r12872109;
        double r12872111 = sqrt(r12872095);
        double r12872112 = r12872110 * r12872111;
        double r12872113 = r12872108 * r12872112;
        double r12872114 = r12872103 * r12872113;
        double r12872115 = r12872095 + r12872114;
        double r12872116 = 1.0;
        double r12872117 = 3.0;
        double r12872118 = 5.0;
        double r12872119 = sqrt(r12872118);
        double r12872120 = r12872117 - r12872119;
        double r12872121 = r12872120 / r12872095;
        double r12872122 = r12872099 * r12872121;
        double r12872123 = 1.0;
        double r12872124 = r12872119 - r12872123;
        double r12872125 = r12872124 / r12872095;
        double r12872126 = r12872125 * r12872097;
        double r12872127 = r12872126 + r12872123;
        double r12872128 = r12872122 + r12872127;
        double r12872129 = r12872128 * r12872117;
        double r12872130 = r12872116 / r12872129;
        double r12872131 = r12872115 * r12872130;
        return r12872131;
}

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 div-inv0.5

    \[\leadsto \color{blue}{\left(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)\right) \cdot \frac{1}{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 add-cube-cbrt0.5

    \[\leadsto \left(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)}\right) \cdot \frac{1}{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)}\]
  6. Final simplification0.5

    \[\leadsto \left(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)\right) \cdot \frac{1}{\left(\cos y \cdot \frac{3.0 - \sqrt{5.0}}{2.0} + \left(\frac{\sqrt{5.0} - 1.0}{2.0} \cdot \cos x + 1.0\right)\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))))))