Average Error: 0.5 → 0.5
Time: 14.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(\cos x - \cos y, \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right), 2\right)}{\mathsf{fma}\left(\frac{3 - \sqrt{5}}{2}, \cos y, \mathsf{fma}\left(\frac{\sqrt{5} - 1}{2}, \cos x, 1\right)\right)}}{3}\]
\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(\cos x - \cos y, \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right), 2\right)}{\mathsf{fma}\left(\frac{3 - \sqrt{5}}{2}, \cos y, \mathsf{fma}\left(\frac{\sqrt{5} - 1}{2}, \cos x, 1\right)\right)}}{3}
double f(double x, double y) {
        double r200211 = 2.0;
        double r200212 = sqrt(r200211);
        double r200213 = x;
        double r200214 = sin(r200213);
        double r200215 = y;
        double r200216 = sin(r200215);
        double r200217 = 16.0;
        double r200218 = r200216 / r200217;
        double r200219 = r200214 - r200218;
        double r200220 = r200212 * r200219;
        double r200221 = r200214 / r200217;
        double r200222 = r200216 - r200221;
        double r200223 = r200220 * r200222;
        double r200224 = cos(r200213);
        double r200225 = cos(r200215);
        double r200226 = r200224 - r200225;
        double r200227 = r200223 * r200226;
        double r200228 = r200211 + r200227;
        double r200229 = 3.0;
        double r200230 = 1.0;
        double r200231 = 5.0;
        double r200232 = sqrt(r200231);
        double r200233 = r200232 - r200230;
        double r200234 = r200233 / r200211;
        double r200235 = r200234 * r200224;
        double r200236 = r200230 + r200235;
        double r200237 = r200229 - r200232;
        double r200238 = r200237 / r200211;
        double r200239 = r200238 * r200225;
        double r200240 = r200236 + r200239;
        double r200241 = r200229 * r200240;
        double r200242 = r200228 / r200241;
        return r200242;
}

double f(double x, double y) {
        double r200243 = x;
        double r200244 = cos(r200243);
        double r200245 = y;
        double r200246 = cos(r200245);
        double r200247 = r200244 - r200246;
        double r200248 = 2.0;
        double r200249 = sqrt(r200248);
        double r200250 = sin(r200243);
        double r200251 = sin(r200245);
        double r200252 = 16.0;
        double r200253 = r200251 / r200252;
        double r200254 = r200250 - r200253;
        double r200255 = r200249 * r200254;
        double r200256 = r200250 / r200252;
        double r200257 = r200251 - r200256;
        double r200258 = r200255 * r200257;
        double r200259 = fma(r200247, r200258, r200248);
        double r200260 = 3.0;
        double r200261 = 5.0;
        double r200262 = sqrt(r200261);
        double r200263 = r200260 - r200262;
        double r200264 = r200263 / r200248;
        double r200265 = 1.0;
        double r200266 = r200262 - r200265;
        double r200267 = r200266 / r200248;
        double r200268 = fma(r200267, r200244, r200265);
        double r200269 = fma(r200264, r200246, r200268);
        double r200270 = r200259 / r200269;
        double r200271 = r200270 / r200260;
        return r200271;
}

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-cbrt-cube0.5

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

    \[\leadsto \frac{2 + \sqrt[3]{\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)}^{3}}} \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. Simplified0.5

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

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

Reproduce

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