\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 \mathsf{fma}\left(\left(33096 \cdot 77617\right) \cdot \left(33096 \cdot 77617\right), 11, \mathsf{fma}\left(-121, {33096}^{4}, -2 - {33096}^{6}\right)\right), 77617, \mathsf{fma}\left(5.5, {33096}^{8}, \mathsf{fma}\left({33096}^{6}, 333.75, \frac{77617}{2 \cdot 33096}\right)\right)\right)double f() {
double r3271015 = 333.75;
double r3271016 = 33096.0;
double r3271017 = 6.0;
double r3271018 = pow(r3271016, r3271017);
double r3271019 = r3271015 * r3271018;
double r3271020 = 77617.0;
double r3271021 = r3271020 * r3271020;
double r3271022 = 11.0;
double r3271023 = r3271022 * r3271021;
double r3271024 = r3271016 * r3271016;
double r3271025 = r3271023 * r3271024;
double r3271026 = -r3271018;
double r3271027 = r3271025 + r3271026;
double r3271028 = -121.0;
double r3271029 = 4.0;
double r3271030 = pow(r3271016, r3271029);
double r3271031 = r3271028 * r3271030;
double r3271032 = r3271027 + r3271031;
double r3271033 = -2.0;
double r3271034 = r3271032 + r3271033;
double r3271035 = r3271021 * r3271034;
double r3271036 = r3271019 + r3271035;
double r3271037 = 5.5;
double r3271038 = 8.0;
double r3271039 = pow(r3271016, r3271038);
double r3271040 = r3271037 * r3271039;
double r3271041 = r3271036 + r3271040;
double r3271042 = 2.0;
double r3271043 = r3271042 * r3271016;
double r3271044 = r3271020 / r3271043;
double r3271045 = r3271041 + r3271044;
return r3271045;
}
double f() {
double r3271046 = 77617.0;
double r3271047 = 33096.0;
double r3271048 = r3271047 * r3271046;
double r3271049 = r3271048 * r3271048;
double r3271050 = 11.0;
double r3271051 = -121.0;
double r3271052 = 4.0;
double r3271053 = pow(r3271047, r3271052);
double r3271054 = -2.0;
double r3271055 = 6.0;
double r3271056 = pow(r3271047, r3271055);
double r3271057 = r3271054 - r3271056;
double r3271058 = fma(r3271051, r3271053, r3271057);
double r3271059 = fma(r3271049, r3271050, r3271058);
double r3271060 = r3271046 * r3271059;
double r3271061 = 5.5;
double r3271062 = 8.0;
double r3271063 = pow(r3271047, r3271062);
double r3271064 = 333.75;
double r3271065 = 2.0;
double r3271066 = r3271065 * r3271047;
double r3271067 = r3271046 / r3271066;
double r3271068 = fma(r3271056, r3271064, r3271067);
double r3271069 = fma(r3271061, r3271063, r3271068);
double r3271070 = fma(r3271060, r3271046, r3271069);
return r3271070;
}
Initial program 58.1
Simplified58.1
Final simplification58.1
herbie shell --seed 2019200 +o rules:numerics
(FPCore ()
:name "From Warwick Tucker's Validated Numerics"
(+ (+ (+ (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (+ (+ (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (- (pow 33096.0 6.0))) (* -121.0 (pow 33096.0 4.0))) -2.0))) (* 5.5 (pow 33096.0 8.0))) (/ 77617.0 (* 2.0 33096.0))))