\left(\left(333.75 \cdot {33096}^{6} + \left(77617 \cdot 77617\right) \cdot \left(\left(\left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) + \left(-{33096}^{6}\right)\right) + -121 \cdot {33096}^{4}\right) + -2\right)\right) + 5.5 \cdot {33096}^{8}\right) + \frac{77617}{2 \cdot 33096}\mathsf{fma}\left(77617 \cdot 77617, \left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - {33096}^{6}\right) + \mathsf{fma}\left({33096}^{4}, -121, -2\right), \mathsf{fma}\left({33096}^{6}, 333.75, \mathsf{fma}\left(5.5, {33096}^{8}, \frac{77617}{2 \cdot 33096}\right)\right)\right)double f() {
double r71253 = 333.75;
double r71254 = 33096.0;
double r71255 = 6.0;
double r71256 = pow(r71254, r71255);
double r71257 = r71253 * r71256;
double r71258 = 77617.0;
double r71259 = r71258 * r71258;
double r71260 = 11.0;
double r71261 = r71260 * r71259;
double r71262 = r71254 * r71254;
double r71263 = r71261 * r71262;
double r71264 = -r71256;
double r71265 = r71263 + r71264;
double r71266 = -121.0;
double r71267 = 4.0;
double r71268 = pow(r71254, r71267);
double r71269 = r71266 * r71268;
double r71270 = r71265 + r71269;
double r71271 = -2.0;
double r71272 = r71270 + r71271;
double r71273 = r71259 * r71272;
double r71274 = r71257 + r71273;
double r71275 = 5.5;
double r71276 = 8.0;
double r71277 = pow(r71254, r71276);
double r71278 = r71275 * r71277;
double r71279 = r71274 + r71278;
double r71280 = 2.0;
double r71281 = r71280 * r71254;
double r71282 = r71258 / r71281;
double r71283 = r71279 + r71282;
return r71283;
}
double f() {
double r71284 = 77617.0;
double r71285 = r71284 * r71284;
double r71286 = 11.0;
double r71287 = r71286 * r71285;
double r71288 = 33096.0;
double r71289 = r71288 * r71288;
double r71290 = r71287 * r71289;
double r71291 = 6.0;
double r71292 = pow(r71288, r71291);
double r71293 = r71290 - r71292;
double r71294 = 4.0;
double r71295 = pow(r71288, r71294);
double r71296 = -121.0;
double r71297 = -2.0;
double r71298 = fma(r71295, r71296, r71297);
double r71299 = r71293 + r71298;
double r71300 = 333.75;
double r71301 = 5.5;
double r71302 = 8.0;
double r71303 = pow(r71288, r71302);
double r71304 = 2.0;
double r71305 = r71304 * r71288;
double r71306 = r71284 / r71305;
double r71307 = fma(r71301, r71303, r71306);
double r71308 = fma(r71292, r71300, r71307);
double r71309 = fma(r71285, r71299, r71308);
return r71309;
}
Initial program 58.1
Simplified58.1
Final simplification58.1
herbie shell --seed 2019208 +o rules:numerics
(FPCore ()
:name "From Warwick Tucker's Validated Numerics"
:precision binary64
(+ (+ (+ (* 333.75 (pow 33096 6)) (* (* 77617 77617) (+ (+ (+ (* (* 11 (* 77617 77617)) (* 33096 33096)) (- (pow 33096 6))) (* -121 (pow 33096 4))) -2))) (* 5.5 (pow 33096 8))) (/ 77617 (* 2 33096))))