Average Error: 0.5 → 0.5
Time: 36.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{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \mathsf{fma}\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}, \sqrt[3]{\sin x}, -\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right) + \sqrt{2} \cdot \left(\left(-\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right) + \frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\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{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \mathsf{fma}\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}, \sqrt[3]{\sin x}, -\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right) + \sqrt{2} \cdot \left(\left(-\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right) + \frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}
double f(double x, double y) {
        double r159270 = 2.0;
        double r159271 = sqrt(r159270);
        double r159272 = x;
        double r159273 = sin(r159272);
        double r159274 = y;
        double r159275 = sin(r159274);
        double r159276 = 16.0;
        double r159277 = r159275 / r159276;
        double r159278 = r159273 - r159277;
        double r159279 = r159271 * r159278;
        double r159280 = r159273 / r159276;
        double r159281 = r159275 - r159280;
        double r159282 = r159279 * r159281;
        double r159283 = cos(r159272);
        double r159284 = cos(r159274);
        double r159285 = r159283 - r159284;
        double r159286 = r159282 * r159285;
        double r159287 = r159270 + r159286;
        double r159288 = 3.0;
        double r159289 = 1.0;
        double r159290 = 5.0;
        double r159291 = sqrt(r159290);
        double r159292 = r159291 - r159289;
        double r159293 = r159292 / r159270;
        double r159294 = r159293 * r159283;
        double r159295 = r159289 + r159294;
        double r159296 = r159288 - r159291;
        double r159297 = r159296 / r159270;
        double r159298 = r159297 * r159284;
        double r159299 = r159295 + r159298;
        double r159300 = r159288 * r159299;
        double r159301 = r159287 / r159300;
        return r159301;
}

double f(double x, double y) {
        double r159302 = 2.0;
        double r159303 = sqrt(r159302);
        double r159304 = x;
        double r159305 = sin(r159304);
        double r159306 = cbrt(r159305);
        double r159307 = r159306 * r159306;
        double r159308 = y;
        double r159309 = sin(r159308);
        double r159310 = cbrt(r159309);
        double r159311 = 3.0;
        double r159312 = pow(r159310, r159311);
        double r159313 = 16.0;
        double r159314 = r159312 / r159313;
        double r159315 = -r159314;
        double r159316 = fma(r159307, r159306, r159315);
        double r159317 = r159303 * r159316;
        double r159318 = r159315 + r159314;
        double r159319 = r159303 * r159318;
        double r159320 = r159317 + r159319;
        double r159321 = r159305 / r159313;
        double r159322 = r159309 - r159321;
        double r159323 = cos(r159304);
        double r159324 = cos(r159308);
        double r159325 = r159323 - r159324;
        double r159326 = r159322 * r159325;
        double r159327 = fma(r159320, r159326, r159302);
        double r159328 = 3.0;
        double r159329 = r159327 / r159328;
        double r159330 = 5.0;
        double r159331 = sqrt(r159330);
        double r159332 = r159328 - r159331;
        double r159333 = r159332 / r159302;
        double r159334 = 1.0;
        double r159335 = r159331 - r159334;
        double r159336 = r159335 / r159302;
        double r159337 = fma(r159323, r159336, r159334);
        double r159338 = fma(r159324, r159333, r159337);
        double r159339 = r159329 / r159338;
        return r159339;
}

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. Simplified0.4

    \[\leadsto \color{blue}{\frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}}\]
  3. Using strategy rm
  4. Applied *-un-lft-identity0.4

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{\color{blue}{1 \cdot 16}}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  5. Applied add-cube-cbrt0.4

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \left(\sin x - \frac{\color{blue}{\left(\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}\right) \cdot \sqrt[3]{\sin y}}}{1 \cdot 16}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  6. Applied times-frac0.4

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \left(\sin x - \color{blue}{\frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1} \cdot \frac{\sqrt[3]{\sin y}}{16}}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  7. Applied add-cube-cbrt0.5

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \left(\color{blue}{\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}\right) \cdot \sqrt[3]{\sin x}} - \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1} \cdot \frac{\sqrt[3]{\sin y}}{16}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  8. Applied prod-diff0.5

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \color{blue}{\left(\mathsf{fma}\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}, \sqrt[3]{\sin x}, -\frac{\sqrt[3]{\sin y}}{16} \cdot \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}\right) + \mathsf{fma}\left(-\frac{\sqrt[3]{\sin y}}{16}, \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}, \frac{\sqrt[3]{\sin y}}{16} \cdot \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}\right)\right)}, \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  9. Applied distribute-lft-in0.5

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\color{blue}{\sqrt{2} \cdot \mathsf{fma}\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}, \sqrt[3]{\sin x}, -\frac{\sqrt[3]{\sin y}}{16} \cdot \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}\right) + \sqrt{2} \cdot \mathsf{fma}\left(-\frac{\sqrt[3]{\sin y}}{16}, \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}, \frac{\sqrt[3]{\sin y}}{16} \cdot \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}\right)}, \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  10. Simplified0.5

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\color{blue}{\sqrt{2} \cdot \mathsf{fma}\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}, \sqrt[3]{\sin x}, -\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right)} + \sqrt{2} \cdot \mathsf{fma}\left(-\frac{\sqrt[3]{\sin y}}{16}, \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}, \frac{\sqrt[3]{\sin y}}{16} \cdot \frac{\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}}{1}\right), \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  11. Simplified0.5

    \[\leadsto \frac{\frac{\mathsf{fma}\left(\sqrt{2} \cdot \mathsf{fma}\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}, \sqrt[3]{\sin x}, -\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right) + \color{blue}{\sqrt{2} \cdot \left(\left(-\frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right) + \frac{{\left(\sqrt[3]{\sin y}\right)}^{3}}{16}\right)}, \left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\cos x - \cos y\right), 2\right)}{3}}{\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)}\]
  12. Final simplification0.5

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

Reproduce

herbie shell --seed 2019323 +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))))))