\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[3]{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)} \cdot \sqrt[3]{\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)}\right) \cdot \sqrt[3]{\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[3]{\cos x - \cos y} \cdot \sqrt[3]{\cos x - \cos y}\right) \cdot \sqrt[3]{\cos x - \cos y}\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 + \left(-5\right)}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}double f(double x, double y) {
double r240315 = 2.0;
double r240316 = sqrt(r240315);
double r240317 = x;
double r240318 = sin(r240317);
double r240319 = y;
double r240320 = sin(r240319);
double r240321 = 16.0;
double r240322 = r240320 / r240321;
double r240323 = r240318 - r240322;
double r240324 = r240316 * r240323;
double r240325 = r240318 / r240321;
double r240326 = r240320 - r240325;
double r240327 = r240324 * r240326;
double r240328 = cos(r240317);
double r240329 = cos(r240319);
double r240330 = r240328 - r240329;
double r240331 = r240327 * r240330;
double r240332 = r240315 + r240331;
double r240333 = 3.0;
double r240334 = 1.0;
double r240335 = 5.0;
double r240336 = sqrt(r240335);
double r240337 = r240336 - r240334;
double r240338 = r240337 / r240315;
double r240339 = r240338 * r240328;
double r240340 = r240334 + r240339;
double r240341 = r240333 - r240336;
double r240342 = r240341 / r240315;
double r240343 = r240342 * r240329;
double r240344 = r240340 + r240343;
double r240345 = r240333 * r240344;
double r240346 = r240332 / r240345;
return r240346;
}
double f(double x, double y) {
double r240347 = 2.0;
double r240348 = sqrt(r240347);
double r240349 = x;
double r240350 = sin(r240349);
double r240351 = y;
double r240352 = sin(r240351);
double r240353 = 16.0;
double r240354 = r240352 / r240353;
double r240355 = r240350 - r240354;
double r240356 = r240348 * r240355;
double r240357 = r240350 / r240353;
double r240358 = r240352 - r240357;
double r240359 = r240356 * r240358;
double r240360 = cbrt(r240359);
double r240361 = r240360 * r240360;
double r240362 = r240361 * r240360;
double r240363 = cos(r240349);
double r240364 = cos(r240351);
double r240365 = r240363 - r240364;
double r240366 = cbrt(r240365);
double r240367 = r240366 * r240366;
double r240368 = r240367 * r240366;
double r240369 = r240362 * r240368;
double r240370 = r240347 + r240369;
double r240371 = 3.0;
double r240372 = 1.0;
double r240373 = 5.0;
double r240374 = sqrt(r240373);
double r240375 = r240374 - r240372;
double r240376 = r240375 / r240347;
double r240377 = r240376 * r240363;
double r240378 = r240372 + r240377;
double r240379 = r240371 * r240371;
double r240380 = -r240373;
double r240381 = r240379 + r240380;
double r240382 = r240371 + r240374;
double r240383 = r240381 / r240382;
double r240384 = r240383 / r240347;
double r240385 = r240384 * r240364;
double r240386 = r240378 + r240385;
double r240387 = r240371 * r240386;
double r240388 = r240370 / r240387;
return r240388;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip--0.5
Simplified0.4
rmApplied add-cube-cbrt0.5
rmApplied add-cube-cbrt0.5
Final simplification0.5
herbie shell --seed 2020021
(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))))))