Average Error: 0.5 → 0.5
Time: 33.4s
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{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\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 \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{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\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)}
double f(double x, double y) {
        double r184293 = 2.0;
        double r184294 = sqrt(r184293);
        double r184295 = x;
        double r184296 = sin(r184295);
        double r184297 = y;
        double r184298 = sin(r184297);
        double r184299 = 16.0;
        double r184300 = r184298 / r184299;
        double r184301 = r184296 - r184300;
        double r184302 = r184294 * r184301;
        double r184303 = r184296 / r184299;
        double r184304 = r184298 - r184303;
        double r184305 = r184302 * r184304;
        double r184306 = cos(r184295);
        double r184307 = cos(r184297);
        double r184308 = r184306 - r184307;
        double r184309 = r184305 * r184308;
        double r184310 = r184293 + r184309;
        double r184311 = 3.0;
        double r184312 = 1.0;
        double r184313 = 5.0;
        double r184314 = sqrt(r184313);
        double r184315 = r184314 - r184312;
        double r184316 = r184315 / r184293;
        double r184317 = r184316 * r184306;
        double r184318 = r184312 + r184317;
        double r184319 = r184311 - r184314;
        double r184320 = r184319 / r184293;
        double r184321 = r184320 * r184307;
        double r184322 = r184318 + r184321;
        double r184323 = r184311 * r184322;
        double r184324 = r184310 / r184323;
        return r184324;
}

double f(double x, double y) {
        double r184325 = 2.0;
        double r184326 = sqrt(r184325);
        double r184327 = sqrt(r184326);
        double r184328 = x;
        double r184329 = sin(r184328);
        double r184330 = y;
        double r184331 = sin(r184330);
        double r184332 = 16.0;
        double r184333 = r184331 / r184332;
        double r184334 = r184329 - r184333;
        double r184335 = r184327 * r184334;
        double r184336 = r184327 * r184335;
        double r184337 = r184329 / r184332;
        double r184338 = r184331 - r184337;
        double r184339 = r184336 * r184338;
        double r184340 = cos(r184328);
        double r184341 = cos(r184330);
        double r184342 = r184340 - r184341;
        double r184343 = r184339 * r184342;
        double r184344 = r184325 + r184343;
        double r184345 = 3.0;
        double r184346 = 1.0;
        double r184347 = 5.0;
        double r184348 = sqrt(r184347);
        double r184349 = r184348 - r184346;
        double r184350 = r184349 / r184325;
        double r184351 = r184350 * r184340;
        double r184352 = r184346 + r184351;
        double r184353 = r184345 - r184348;
        double r184354 = r184353 / r184325;
        double r184355 = r184354 * r184341;
        double r184356 = r184352 + r184355;
        double r184357 = r184345 * r184356;
        double r184358 = r184344 / r184357;
        return r184358;
}

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 add-sqr-sqrt0.5

    \[\leadsto \frac{2 + \left(\left(\sqrt{\color{blue}{\sqrt{2} \cdot \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. Applied sqrt-prod0.5

    \[\leadsto \frac{2 + \left(\left(\color{blue}{\left(\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}\right)} \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)}\]
  5. Applied associate-*l*0.5

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

    \[\leadsto \frac{2 + \left(\left(\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\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)}\]

Reproduce

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