\left(\left(333.75 \cdot {y}^{6} + \left(x \cdot x\right) \cdot \left(\left(\left(\left(\left(\left(11 \cdot x\right) \cdot x\right) \cdot y\right) \cdot y - {y}^{6}\right) - 121 \cdot {y}^{4}\right) - 2\right)\right) + 5.5 \cdot {y}^{8}\right) + \frac{x}{2 \cdot y}0.5 \cdot \frac{x}{y} - 2 \cdot {x}^{2}double f(double x, double y) {
double r15525 = 333.75;
double r15526 = y;
double r15527 = 6.0;
double r15528 = pow(r15526, r15527);
double r15529 = r15525 * r15528;
double r15530 = x;
double r15531 = r15530 * r15530;
double r15532 = 11.0;
double r15533 = r15532 * r15530;
double r15534 = r15533 * r15530;
double r15535 = r15534 * r15526;
double r15536 = r15535 * r15526;
double r15537 = r15536 - r15528;
double r15538 = 121.0;
double r15539 = 4.0;
double r15540 = pow(r15526, r15539);
double r15541 = r15538 * r15540;
double r15542 = r15537 - r15541;
double r15543 = 2.0;
double r15544 = r15542 - r15543;
double r15545 = r15531 * r15544;
double r15546 = r15529 + r15545;
double r15547 = 5.5;
double r15548 = 8.0;
double r15549 = pow(r15526, r15548);
double r15550 = r15547 * r15549;
double r15551 = r15546 + r15550;
double r15552 = r15543 * r15526;
double r15553 = r15530 / r15552;
double r15554 = r15551 + r15553;
return r15554;
}
double f(double x, double y) {
double r15555 = 0.5;
double r15556 = x;
double r15557 = y;
double r15558 = r15556 / r15557;
double r15559 = r15555 * r15558;
double r15560 = 2.0;
double r15561 = 2.0;
double r15562 = pow(r15556, r15561);
double r15563 = r15560 * r15562;
double r15564 = r15559 - r15563;
return r15564;
}
Results
Initial program 58.1
Simplified58.1
Taylor expanded around 0 57.1
Final simplification57.1
herbie shell --seed 2019195 +o rules:numerics
(FPCore (x y)
:name "Rump's expression from Stadtherr's award speech"
:pre (and (== x 77617.0) (== y 33096.0))
(+ (+ (+ (* 333.75 (pow y 6.0)) (* (* x x) (- (- (- (* (* (* (* 11.0 x) x) y) y) (pow y 6.0)) (* 121.0 (pow y 4.0))) 2.0))) (* 5.5 (pow y 8.0))) (/ x (* 2.0 y))))