Average Error: 0.5 → 0.5
Time: 36.0s
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(\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\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(\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\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 r174281 = 2.0;
        double r174282 = sqrt(r174281);
        double r174283 = x;
        double r174284 = sin(r174283);
        double r174285 = y;
        double r174286 = sin(r174285);
        double r174287 = 16.0;
        double r174288 = r174286 / r174287;
        double r174289 = r174284 - r174288;
        double r174290 = r174282 * r174289;
        double r174291 = r174284 / r174287;
        double r174292 = r174286 - r174291;
        double r174293 = r174290 * r174292;
        double r174294 = cos(r174283);
        double r174295 = cos(r174285);
        double r174296 = r174294 - r174295;
        double r174297 = r174293 * r174296;
        double r174298 = r174281 + r174297;
        double r174299 = 3.0;
        double r174300 = 1.0;
        double r174301 = 5.0;
        double r174302 = sqrt(r174301);
        double r174303 = r174302 - r174300;
        double r174304 = r174303 / r174281;
        double r174305 = r174304 * r174294;
        double r174306 = r174300 + r174305;
        double r174307 = r174299 - r174302;
        double r174308 = r174307 / r174281;
        double r174309 = r174308 * r174295;
        double r174310 = r174306 + r174309;
        double r174311 = r174299 * r174310;
        double r174312 = r174298 / r174311;
        return r174312;
}

double f(double x, double y) {
        double r174313 = 2.0;
        double r174314 = sqrt(r174313);
        double r174315 = sqrt(r174314);
        double r174316 = x;
        double r174317 = sin(r174316);
        double r174318 = y;
        double r174319 = sin(r174318);
        double r174320 = 16.0;
        double r174321 = r174319 / r174320;
        double r174322 = r174317 - r174321;
        double r174323 = r174315 * r174322;
        double r174324 = r174315 * r174323;
        double r174325 = r174317 / r174320;
        double r174326 = r174319 - r174325;
        double r174327 = r174324 * r174326;
        double r174328 = cos(r174316);
        double r174329 = cos(r174318);
        double r174330 = r174328 - r174329;
        double r174331 = r174327 * r174330;
        double r174332 = r174313 + r174331;
        double r174333 = 3.0;
        double r174334 = 1.0;
        double r174335 = 5.0;
        double r174336 = sqrt(r174335);
        double r174337 = r174336 - r174334;
        double r174338 = r174337 / r174313;
        double r174339 = r174338 * r174328;
        double r174340 = r174334 + r174339;
        double r174341 = r174333 - r174336;
        double r174342 = r174341 / r174313;
        double r174343 = r174342 * r174329;
        double r174344 = r174340 + r174343;
        double r174345 = r174333 * r174344;
        double r174346 = r174332 / r174345;
        return r174346;
}

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-sqr-sqrt0.5

    \[\leadsto \frac{2 + \left(\left(\sqrt{\color{blue}{\sqrt{2} \cdot \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. Applied sqrt-prod0.5

    \[\leadsto \frac{2 + \left(\left(\color{blue}{\left(\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}\right)} \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)}\]
  5. Applied associate-*l*0.5

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

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