\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, 77617 \cdot \left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - \left({33096}^{6} - \mathsf{fma}\left({33096}^{4}, -121, -2\right)\right)\right), \mathsf{fma}\left(333.75, {33096}^{6}, \mathsf{fma}\left({33096}^{8}, 5.5, \frac{77617}{2 \cdot 33096}\right)\right)\right)double f() {
double r61649 = 333.75;
double r61650 = 33096.0;
double r61651 = 6.0;
double r61652 = pow(r61650, r61651);
double r61653 = r61649 * r61652;
double r61654 = 77617.0;
double r61655 = r61654 * r61654;
double r61656 = 11.0;
double r61657 = r61656 * r61655;
double r61658 = r61650 * r61650;
double r61659 = r61657 * r61658;
double r61660 = -r61652;
double r61661 = r61659 + r61660;
double r61662 = -121.0;
double r61663 = 4.0;
double r61664 = pow(r61650, r61663);
double r61665 = r61662 * r61664;
double r61666 = r61661 + r61665;
double r61667 = -2.0;
double r61668 = r61666 + r61667;
double r61669 = r61655 * r61668;
double r61670 = r61653 + r61669;
double r61671 = 5.5;
double r61672 = 8.0;
double r61673 = pow(r61650, r61672);
double r61674 = r61671 * r61673;
double r61675 = r61670 + r61674;
double r61676 = 2.0;
double r61677 = r61676 * r61650;
double r61678 = r61654 / r61677;
double r61679 = r61675 + r61678;
return r61679;
}
double f() {
double r61680 = 77617.0;
double r61681 = 11.0;
double r61682 = r61680 * r61680;
double r61683 = r61681 * r61682;
double r61684 = 33096.0;
double r61685 = r61684 * r61684;
double r61686 = r61683 * r61685;
double r61687 = 6.0;
double r61688 = pow(r61684, r61687);
double r61689 = 4.0;
double r61690 = pow(r61684, r61689);
double r61691 = -121.0;
double r61692 = -2.0;
double r61693 = fma(r61690, r61691, r61692);
double r61694 = r61688 - r61693;
double r61695 = r61686 - r61694;
double r61696 = r61680 * r61695;
double r61697 = 333.75;
double r61698 = 8.0;
double r61699 = pow(r61684, r61698);
double r61700 = 5.5;
double r61701 = 2.0;
double r61702 = r61701 * r61684;
double r61703 = r61680 / r61702;
double r61704 = fma(r61699, r61700, r61703);
double r61705 = fma(r61697, r61688, r61704);
double r61706 = fma(r61680, r61696, r61705);
return r61706;
}
Initial program 58.1
Simplified58.1
Simplified58.1
Final simplification58.1
herbie shell --seed 2019356 +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))))