Average Error: 0.5 → 0.5
Time: 48.5s
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}^{3} + {\left(\left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)\right)}^{3}}{\left(\mathsf{fma}\left(\left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right), \left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right) - 2.0, 2.0 \cdot 2.0\right) \cdot \mathsf{fma}\left(\frac{\frac{3.0 \cdot 3.0 - 5.0}{3.0 + \sqrt{5.0}}}{2.0}, \cos y, \mathsf{fma}\left(\cos x, \frac{\sqrt{5.0} - 1.0}{2.0}, 1.0\right)\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)}
\frac{{2.0}^{3} + {\left(\left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)\right)}^{3}}{\left(\mathsf{fma}\left(\left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right), \left(\left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right) - 2.0, 2.0 \cdot 2.0\right) \cdot \mathsf{fma}\left(\frac{\frac{3.0 \cdot 3.0 - 5.0}{3.0 + \sqrt{5.0}}}{2.0}, \cos y, \mathsf{fma}\left(\cos x, \frac{\sqrt{5.0} - 1.0}{2.0}, 1.0\right)\right)\right) \cdot 3.0}
double f(double x, double y) {
        double r8948438 = 2.0;
        double r8948439 = sqrt(r8948438);
        double r8948440 = x;
        double r8948441 = sin(r8948440);
        double r8948442 = y;
        double r8948443 = sin(r8948442);
        double r8948444 = 16.0;
        double r8948445 = r8948443 / r8948444;
        double r8948446 = r8948441 - r8948445;
        double r8948447 = r8948439 * r8948446;
        double r8948448 = r8948441 / r8948444;
        double r8948449 = r8948443 - r8948448;
        double r8948450 = r8948447 * r8948449;
        double r8948451 = cos(r8948440);
        double r8948452 = cos(r8948442);
        double r8948453 = r8948451 - r8948452;
        double r8948454 = r8948450 * r8948453;
        double r8948455 = r8948438 + r8948454;
        double r8948456 = 3.0;
        double r8948457 = 1.0;
        double r8948458 = 5.0;
        double r8948459 = sqrt(r8948458);
        double r8948460 = r8948459 - r8948457;
        double r8948461 = r8948460 / r8948438;
        double r8948462 = r8948461 * r8948451;
        double r8948463 = r8948457 + r8948462;
        double r8948464 = r8948456 - r8948459;
        double r8948465 = r8948464 / r8948438;
        double r8948466 = r8948465 * r8948452;
        double r8948467 = r8948463 + r8948466;
        double r8948468 = r8948456 * r8948467;
        double r8948469 = r8948455 / r8948468;
        return r8948469;
}

double f(double x, double y) {
        double r8948470 = 2.0;
        double r8948471 = 3.0;
        double r8948472 = pow(r8948470, r8948471);
        double r8948473 = x;
        double r8948474 = sin(r8948473);
        double r8948475 = y;
        double r8948476 = sin(r8948475);
        double r8948477 = 16.0;
        double r8948478 = r8948476 / r8948477;
        double r8948479 = r8948474 - r8948478;
        double r8948480 = sqrt(r8948470);
        double r8948481 = r8948479 * r8948480;
        double r8948482 = r8948474 / r8948477;
        double r8948483 = r8948476 - r8948482;
        double r8948484 = r8948481 * r8948483;
        double r8948485 = cos(r8948473);
        double r8948486 = cos(r8948475);
        double r8948487 = r8948485 - r8948486;
        double r8948488 = r8948484 * r8948487;
        double r8948489 = pow(r8948488, r8948471);
        double r8948490 = r8948472 + r8948489;
        double r8948491 = r8948481 * r8948487;
        double r8948492 = r8948491 * r8948483;
        double r8948493 = r8948492 - r8948470;
        double r8948494 = r8948470 * r8948470;
        double r8948495 = fma(r8948492, r8948493, r8948494);
        double r8948496 = 3.0;
        double r8948497 = r8948496 * r8948496;
        double r8948498 = 5.0;
        double r8948499 = r8948497 - r8948498;
        double r8948500 = sqrt(r8948498);
        double r8948501 = r8948496 + r8948500;
        double r8948502 = r8948499 / r8948501;
        double r8948503 = r8948502 / r8948470;
        double r8948504 = 1.0;
        double r8948505 = r8948500 - r8948504;
        double r8948506 = r8948505 / r8948470;
        double r8948507 = fma(r8948485, r8948506, r8948504);
        double r8948508 = fma(r8948503, r8948486, r8948507);
        double r8948509 = r8948495 * r8948508;
        double r8948510 = r8948509 * r8948496;
        double r8948511 = r8948490 / r8948510;
        return r8948511;
}

Error

Bits error versus x

Bits error versus y

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 flip3-+0.5

    \[\leadsto \frac{\color{blue}{\frac{{2.0}^{3} + {\left(\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)}^{3}}{2.0 \cdot 2.0 + \left(\left(\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 \left(\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) - 2.0 \cdot \left(\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)\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. Applied associate-/l/0.5

    \[\leadsto \color{blue}{\frac{{2.0}^{3} + {\left(\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)}^{3}}{\left(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)\right) \cdot \left(2.0 \cdot 2.0 + \left(\left(\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 \left(\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) - 2.0 \cdot \left(\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)\right)\right)}}\]
  5. Simplified0.5

    \[\leadsto \frac{{2.0}^{3} + {\left(\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)}^{3}}{\color{blue}{3.0 \cdot \left(\mathsf{fma}\left(\frac{3.0 - \sqrt{5.0}}{2.0}, \cos y, \mathsf{fma}\left(\cos x, \frac{\sqrt{5.0} - 1.0}{2.0}, 1.0\right)\right) \cdot \mathsf{fma}\left(\left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sqrt{2.0} \cdot \left(\sin x - \frac{\sin y}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)\right), \left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sqrt{2.0} \cdot \left(\sin x - \frac{\sin y}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)\right) - 2.0, 2.0 \cdot 2.0\right)\right)}}\]
  6. Using strategy rm
  7. Applied flip--0.6

    \[\leadsto \frac{{2.0}^{3} + {\left(\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)}^{3}}{3.0 \cdot \left(\mathsf{fma}\left(\frac{\color{blue}{\frac{3.0 \cdot 3.0 - \sqrt{5.0} \cdot \sqrt{5.0}}{3.0 + \sqrt{5.0}}}}{2.0}, \cos y, \mathsf{fma}\left(\cos x, \frac{\sqrt{5.0} - 1.0}{2.0}, 1.0\right)\right) \cdot \mathsf{fma}\left(\left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sqrt{2.0} \cdot \left(\sin x - \frac{\sin y}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)\right), \left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sqrt{2.0} \cdot \left(\sin x - \frac{\sin y}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)\right) - 2.0, 2.0 \cdot 2.0\right)\right)}\]
  8. Simplified0.5

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

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

Reproduce

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