Average Error: 0.5 → 0.5
Time: 30.2s
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{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \mathsf{log1p}\left(\mathsf{expm1}\left(\cos x - \cos y\right)\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, \left(-\sqrt{\sqrt[3]{5}}\right) \cdot \left|\sqrt[3]{5}\right|\right) + \sqrt{\sqrt[3]{5}} \cdot \left(\left(-\left|\sqrt[3]{5}\right|\right) + \left|\sqrt[3]{5}\right|\right)}{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{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \mathsf{log1p}\left(\mathsf{expm1}\left(\cos x - \cos y\right)\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, \left(-\sqrt{\sqrt[3]{5}}\right) \cdot \left|\sqrt[3]{5}\right|\right) + \sqrt{\sqrt[3]{5}} \cdot \left(\left(-\left|\sqrt[3]{5}\right|\right) + \left|\sqrt[3]{5}\right|\right)}{2} \cdot \cos y\right)}
double f(double x, double y) {
        double r174345 = 2.0;
        double r174346 = sqrt(r174345);
        double r174347 = x;
        double r174348 = sin(r174347);
        double r174349 = y;
        double r174350 = sin(r174349);
        double r174351 = 16.0;
        double r174352 = r174350 / r174351;
        double r174353 = r174348 - r174352;
        double r174354 = r174346 * r174353;
        double r174355 = r174348 / r174351;
        double r174356 = r174350 - r174355;
        double r174357 = r174354 * r174356;
        double r174358 = cos(r174347);
        double r174359 = cos(r174349);
        double r174360 = r174358 - r174359;
        double r174361 = r174357 * r174360;
        double r174362 = r174345 + r174361;
        double r174363 = 3.0;
        double r174364 = 1.0;
        double r174365 = 5.0;
        double r174366 = sqrt(r174365);
        double r174367 = r174366 - r174364;
        double r174368 = r174367 / r174345;
        double r174369 = r174368 * r174358;
        double r174370 = r174364 + r174369;
        double r174371 = r174363 - r174366;
        double r174372 = r174371 / r174345;
        double r174373 = r174372 * r174359;
        double r174374 = r174370 + r174373;
        double r174375 = r174363 * r174374;
        double r174376 = r174362 / r174375;
        return r174376;
}

double f(double x, double y) {
        double r174377 = 2.0;
        double r174378 = sqrt(r174377);
        double r174379 = x;
        double r174380 = sin(r174379);
        double r174381 = y;
        double r174382 = sin(r174381);
        double r174383 = 16.0;
        double r174384 = r174382 / r174383;
        double r174385 = r174380 - r174384;
        double r174386 = r174378 * r174385;
        double r174387 = r174380 / r174383;
        double r174388 = r174382 - r174387;
        double r174389 = r174386 * r174388;
        double r174390 = cos(r174379);
        double r174391 = cos(r174381);
        double r174392 = r174390 - r174391;
        double r174393 = expm1(r174392);
        double r174394 = log1p(r174393);
        double r174395 = r174389 * r174394;
        double r174396 = r174377 + r174395;
        double r174397 = 3.0;
        double r174398 = 1.0;
        double r174399 = 5.0;
        double r174400 = sqrt(r174399);
        double r174401 = r174400 - r174398;
        double r174402 = r174401 / r174377;
        double r174403 = r174402 * r174390;
        double r174404 = r174398 + r174403;
        double r174405 = cbrt(r174397);
        double r174406 = r174405 * r174405;
        double r174407 = cbrt(r174399);
        double r174408 = sqrt(r174407);
        double r174409 = -r174408;
        double r174410 = fabs(r174407);
        double r174411 = r174409 * r174410;
        double r174412 = fma(r174406, r174405, r174411);
        double r174413 = -r174410;
        double r174414 = r174413 + r174410;
        double r174415 = r174408 * r174414;
        double r174416 = r174412 + r174415;
        double r174417 = r174416 / r174377;
        double r174418 = r174417 * r174391;
        double r174419 = r174404 + r174418;
        double r174420 = r174397 * r174419;
        double r174421 = r174396 / r174420;
        return r174421;
}

Error

Bits error versus x

Bits error versus y

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.6

    \[\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{3 - \sqrt{\color{blue}{\left(\sqrt[3]{5} \cdot \sqrt[3]{5}\right) \cdot \sqrt[3]{5}}}}{2} \cdot \cos y\right)}\]
  4. Applied sqrt-prod0.6

    \[\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{3 - \color{blue}{\sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}} \cdot \sqrt{\sqrt[3]{5}}}}{2} \cdot \cos y\right)}\]
  5. Applied add-cube-cbrt0.6

    \[\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}{\left(\sqrt[3]{3} \cdot \sqrt[3]{3}\right) \cdot \sqrt[3]{3}} - \sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}} \cdot \sqrt{\sqrt[3]{5}}}{2} \cdot \cos y\right)}\]
  6. Applied prod-diff0.4

    \[\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}{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, -\sqrt{\sqrt[3]{5}} \cdot \sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}}\right) + \mathsf{fma}\left(-\sqrt{\sqrt[3]{5}}, \sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}}, \sqrt{\sqrt[3]{5}} \cdot \sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}}\right)}}{2} \cdot \cos y\right)}\]
  7. Simplified0.4

    \[\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}{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, \left(-\sqrt{\sqrt[3]{5}}\right) \cdot \left|\sqrt[3]{5}\right|\right)} + \mathsf{fma}\left(-\sqrt{\sqrt[3]{5}}, \sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}}, \sqrt{\sqrt[3]{5}} \cdot \sqrt{\sqrt[3]{5} \cdot \sqrt[3]{5}}\right)}{2} \cdot \cos y\right)}\]
  8. 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{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, \left(-\sqrt{\sqrt[3]{5}}\right) \cdot \left|\sqrt[3]{5}\right|\right) + \color{blue}{\sqrt{\sqrt[3]{5}} \cdot \left(\left(-\left|\sqrt[3]{5}\right|\right) + \left|\sqrt[3]{5}\right|\right)}}{2} \cdot \cos y\right)}\]
  9. Using strategy rm
  10. Applied log1p-expm1-u0.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 \color{blue}{\mathsf{log1p}\left(\mathsf{expm1}\left(\cos x - \cos y\right)\right)}}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, \left(-\sqrt{\sqrt[3]{5}}\right) \cdot \left|\sqrt[3]{5}\right|\right) + \sqrt{\sqrt[3]{5}} \cdot \left(\left(-\left|\sqrt[3]{5}\right|\right) + \left|\sqrt[3]{5}\right|\right)}{2} \cdot \cos y\right)}\]
  11. Final simplification0.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 \mathsf{log1p}\left(\mathsf{expm1}\left(\cos x - \cos y\right)\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\mathsf{fma}\left(\sqrt[3]{3} \cdot \sqrt[3]{3}, \sqrt[3]{3}, \left(-\sqrt{\sqrt[3]{5}}\right) \cdot \left|\sqrt[3]{5}\right|\right) + \sqrt{\sqrt[3]{5}} \cdot \left(\left(-\left|\sqrt[3]{5}\right|\right) + \left|\sqrt[3]{5}\right|\right)}{2} \cdot \cos y\right)}\]

Reproduce

herbie shell --seed 2019235 +o rules:numerics
(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))))))