\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 r59600 = 333.75;
double r59601 = 33096.0;
double r59602 = 6.0;
double r59603 = pow(r59601, r59602);
double r59604 = r59600 * r59603;
double r59605 = 77617.0;
double r59606 = r59605 * r59605;
double r59607 = 11.0;
double r59608 = r59607 * r59606;
double r59609 = r59601 * r59601;
double r59610 = r59608 * r59609;
double r59611 = -r59603;
double r59612 = r59610 + r59611;
double r59613 = -121.0;
double r59614 = 4.0;
double r59615 = pow(r59601, r59614);
double r59616 = r59613 * r59615;
double r59617 = r59612 + r59616;
double r59618 = -2.0;
double r59619 = r59617 + r59618;
double r59620 = r59606 * r59619;
double r59621 = r59604 + r59620;
double r59622 = 5.5;
double r59623 = 8.0;
double r59624 = pow(r59601, r59623);
double r59625 = r59622 * r59624;
double r59626 = r59621 + r59625;
double r59627 = 2.0;
double r59628 = r59627 * r59601;
double r59629 = r59605 / r59628;
double r59630 = r59626 + r59629;
return r59630;
}
double f() {
double r59631 = 77617.0;
double r59632 = r59631 * r59631;
double r59633 = 11.0;
double r59634 = r59633 * r59632;
double r59635 = 33096.0;
double r59636 = r59635 * r59635;
double r59637 = r59634 * r59636;
double r59638 = 6.0;
double r59639 = pow(r59635, r59638);
double r59640 = r59637 - r59639;
double r59641 = 4.0;
double r59642 = pow(r59635, r59641);
double r59643 = -121.0;
double r59644 = -2.0;
double r59645 = fma(r59642, r59643, r59644);
double r59646 = r59640 + r59645;
double r59647 = 333.75;
double r59648 = 5.5;
double r59649 = 8.0;
double r59650 = pow(r59635, r59649);
double r59651 = 2.0;
double r59652 = r59651 * r59635;
double r59653 = r59631 / r59652;
double r59654 = fma(r59648, r59650, r59653);
double r59655 = fma(r59639, r59647, r59654);
double r59656 = fma(r59632, r59646, r59655);
return r59656;
}
Initial program 58.1
Simplified58.1
Final simplification58.1
herbie shell --seed 2019235 +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))))