Average Error: 0.5 → 0.5
Time: 38.6s
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{\left(\cos x - \cos y\right) \cdot \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16}\right) \cdot \sqrt{2}\right)\right) + 2}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 - 5}{\sqrt{5} + 3}}{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{\left(\cos x - \cos y\right) \cdot \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16}\right) \cdot \sqrt{2}\right)\right) + 2}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 - 5}{\sqrt{5} + 3}}{2} \cdot \cos y\right)}
double f(double x, double y) {
        double r11349312 = 2.0;
        double r11349313 = sqrt(r11349312);
        double r11349314 = x;
        double r11349315 = sin(r11349314);
        double r11349316 = y;
        double r11349317 = sin(r11349316);
        double r11349318 = 16.0;
        double r11349319 = r11349317 / r11349318;
        double r11349320 = r11349315 - r11349319;
        double r11349321 = r11349313 * r11349320;
        double r11349322 = r11349315 / r11349318;
        double r11349323 = r11349317 - r11349322;
        double r11349324 = r11349321 * r11349323;
        double r11349325 = cos(r11349314);
        double r11349326 = cos(r11349316);
        double r11349327 = r11349325 - r11349326;
        double r11349328 = r11349324 * r11349327;
        double r11349329 = r11349312 + r11349328;
        double r11349330 = 3.0;
        double r11349331 = 1.0;
        double r11349332 = 5.0;
        double r11349333 = sqrt(r11349332);
        double r11349334 = r11349333 - r11349331;
        double r11349335 = r11349334 / r11349312;
        double r11349336 = r11349335 * r11349325;
        double r11349337 = r11349331 + r11349336;
        double r11349338 = r11349330 - r11349333;
        double r11349339 = r11349338 / r11349312;
        double r11349340 = r11349339 * r11349326;
        double r11349341 = r11349337 + r11349340;
        double r11349342 = r11349330 * r11349341;
        double r11349343 = r11349329 / r11349342;
        return r11349343;
}

double f(double x, double y) {
        double r11349344 = x;
        double r11349345 = cos(r11349344);
        double r11349346 = y;
        double r11349347 = cos(r11349346);
        double r11349348 = r11349345 - r11349347;
        double r11349349 = sin(r11349346);
        double r11349350 = sin(r11349344);
        double r11349351 = 16.0;
        double r11349352 = r11349350 / r11349351;
        double r11349353 = r11349349 - r11349352;
        double r11349354 = r11349349 / r11349351;
        double r11349355 = r11349350 - r11349354;
        double r11349356 = 2.0;
        double r11349357 = sqrt(r11349356);
        double r11349358 = r11349355 * r11349357;
        double r11349359 = r11349353 * r11349358;
        double r11349360 = r11349348 * r11349359;
        double r11349361 = r11349360 + r11349356;
        double r11349362 = 3.0;
        double r11349363 = 1.0;
        double r11349364 = 5.0;
        double r11349365 = sqrt(r11349364);
        double r11349366 = r11349365 - r11349363;
        double r11349367 = r11349366 / r11349356;
        double r11349368 = r11349367 * r11349345;
        double r11349369 = r11349363 + r11349368;
        double r11349370 = r11349362 * r11349362;
        double r11349371 = r11349370 - r11349364;
        double r11349372 = r11349365 + r11349362;
        double r11349373 = r11349371 / r11349372;
        double r11349374 = r11349373 / r11349356;
        double r11349375 = r11349374 * r11349347;
        double r11349376 = r11349369 + r11349375;
        double r11349377 = r11349362 * r11349376;
        double r11349378 = r11349361 / r11349377;
        return r11349378;
}

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 flip--0.5

    \[\leadsto \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{\color{blue}{\frac{3 \cdot 3 - \sqrt{5} \cdot \sqrt{5}}{3 + \sqrt{5}}}}{2} \cdot \cos y\right)}\]
  4. Simplified0.5

    \[\leadsto \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{\frac{\color{blue}{3 \cdot 3 - 5}}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}\]
  5. Using strategy rm
  6. Applied add-log-exp0.5

    \[\leadsto \frac{2 + \color{blue}{\log \left(e^{\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)}\right)}}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 - 5}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}\]
  7. Using strategy rm
  8. Applied rem-log-exp0.5

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

    \[\leadsto \frac{\left(\cos x - \cos y\right) \cdot \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16}\right) \cdot \sqrt{2}\right)\right) + 2}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 - 5}{\sqrt{5} + 3}}{2} \cdot \cos y\right)}\]

Reproduce

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