\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} - \left(x \cdot x\right) \cdot 2double f(double x, double y) {
double r1936255 = 333.75;
double r1936256 = y;
double r1936257 = 6.0;
double r1936258 = pow(r1936256, r1936257);
double r1936259 = r1936255 * r1936258;
double r1936260 = x;
double r1936261 = r1936260 * r1936260;
double r1936262 = 11.0;
double r1936263 = r1936262 * r1936260;
double r1936264 = r1936263 * r1936260;
double r1936265 = r1936264 * r1936256;
double r1936266 = r1936265 * r1936256;
double r1936267 = r1936266 - r1936258;
double r1936268 = 121.0;
double r1936269 = 4.0;
double r1936270 = pow(r1936256, r1936269);
double r1936271 = r1936268 * r1936270;
double r1936272 = r1936267 - r1936271;
double r1936273 = 2.0;
double r1936274 = r1936272 - r1936273;
double r1936275 = r1936261 * r1936274;
double r1936276 = r1936259 + r1936275;
double r1936277 = 5.5;
double r1936278 = 8.0;
double r1936279 = pow(r1936256, r1936278);
double r1936280 = r1936277 * r1936279;
double r1936281 = r1936276 + r1936280;
double r1936282 = r1936273 * r1936256;
double r1936283 = r1936260 / r1936282;
double r1936284 = r1936281 + r1936283;
return r1936284;
}
double f(double x, double y) {
double r1936285 = 0.5;
double r1936286 = x;
double r1936287 = y;
double r1936288 = r1936286 / r1936287;
double r1936289 = r1936285 * r1936288;
double r1936290 = r1936286 * r1936286;
double r1936291 = 2.0;
double r1936292 = r1936290 * r1936291;
double r1936293 = r1936289 - r1936292;
return r1936293;
}
Results
Initial program 58.1
Simplified58.1
Taylor expanded around 0 57.1
Simplified57.1
Final simplification57.1
herbie shell --seed 2019173
(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))))