\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 r11254 = 333.75;
double r11255 = y;
double r11256 = 6.0;
double r11257 = pow(r11255, r11256);
double r11258 = r11254 * r11257;
double r11259 = x;
double r11260 = r11259 * r11259;
double r11261 = 11.0;
double r11262 = r11261 * r11259;
double r11263 = r11262 * r11259;
double r11264 = r11263 * r11255;
double r11265 = r11264 * r11255;
double r11266 = r11265 - r11257;
double r11267 = 121.0;
double r11268 = 4.0;
double r11269 = pow(r11255, r11268);
double r11270 = r11267 * r11269;
double r11271 = r11266 - r11270;
double r11272 = 2.0;
double r11273 = r11271 - r11272;
double r11274 = r11260 * r11273;
double r11275 = r11258 + r11274;
double r11276 = 5.5;
double r11277 = 8.0;
double r11278 = pow(r11255, r11277);
double r11279 = r11276 * r11278;
double r11280 = r11275 + r11279;
double r11281 = r11272 * r11255;
double r11282 = r11259 / r11281;
double r11283 = r11280 + r11282;
return r11283;
}
double f(double x, double y) {
double r11284 = 0.5;
double r11285 = x;
double r11286 = y;
double r11287 = r11285 / r11286;
double r11288 = r11284 * r11287;
double r11289 = 2.0;
double r11290 = 2.0;
double r11291 = pow(r11285, r11290);
double r11292 = r11289 * r11291;
double r11293 = r11288 - r11292;
return r11293;
}
Results
Initial program 58.1
Simplified58.1
Taylor expanded around 0 57.1
Final simplification57.1
herbie shell --seed 2020043 +o rules:numerics
(FPCore (x y)
:name "Rump's expression from Stadtherr's award speech"
:precision binary64
:pre (and (== x 77617) (== y 33096))
(+ (+ (+ (* 333.75 (pow y 6)) (* (* x x) (- (- (- (* (* (* (* 11 x) x) y) y) (pow y 6)) (* 121 (pow y 4))) 2))) (* 5.5 (pow y 8))) (/ x (* 2 y))))