\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 \left(11 \cdot \left(\left(77617 \cdot 33096\right) \cdot \left(77617 \cdot 33096\right)\right) - \left({33096}^{6} - \mathsf{fma}\left(-121, {33096}^{4}, -2\right)\right)\right), 77617, \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 r4302926 = 333.75;
double r4302927 = 33096.0;
double r4302928 = 6.0;
double r4302929 = pow(r4302927, r4302928);
double r4302930 = r4302926 * r4302929;
double r4302931 = 77617.0;
double r4302932 = r4302931 * r4302931;
double r4302933 = 11.0;
double r4302934 = r4302933 * r4302932;
double r4302935 = r4302927 * r4302927;
double r4302936 = r4302934 * r4302935;
double r4302937 = -r4302929;
double r4302938 = r4302936 + r4302937;
double r4302939 = -121.0;
double r4302940 = 4.0;
double r4302941 = pow(r4302927, r4302940);
double r4302942 = r4302939 * r4302941;
double r4302943 = r4302938 + r4302942;
double r4302944 = -2.0;
double r4302945 = r4302943 + r4302944;
double r4302946 = r4302932 * r4302945;
double r4302947 = r4302930 + r4302946;
double r4302948 = 5.5;
double r4302949 = 8.0;
double r4302950 = pow(r4302927, r4302949);
double r4302951 = r4302948 * r4302950;
double r4302952 = r4302947 + r4302951;
double r4302953 = 2.0;
double r4302954 = r4302953 * r4302927;
double r4302955 = r4302931 / r4302954;
double r4302956 = r4302952 + r4302955;
return r4302956;
}
double f() {
double r4302957 = 77617.0;
double r4302958 = 11.0;
double r4302959 = 33096.0;
double r4302960 = r4302957 * r4302959;
double r4302961 = r4302960 * r4302960;
double r4302962 = r4302958 * r4302961;
double r4302963 = 6.0;
double r4302964 = pow(r4302959, r4302963);
double r4302965 = -121.0;
double r4302966 = 4.0;
double r4302967 = pow(r4302959, r4302966);
double r4302968 = -2.0;
double r4302969 = fma(r4302965, r4302967, r4302968);
double r4302970 = r4302964 - r4302969;
double r4302971 = r4302962 - r4302970;
double r4302972 = r4302957 * r4302971;
double r4302973 = 333.75;
double r4302974 = 5.5;
double r4302975 = 8.0;
double r4302976 = pow(r4302959, r4302975);
double r4302977 = 2.0;
double r4302978 = r4302977 * r4302959;
double r4302979 = r4302957 / r4302978;
double r4302980 = fma(r4302974, r4302976, r4302979);
double r4302981 = fma(r4302964, r4302973, r4302980);
double r4302982 = fma(r4302972, r4302957, r4302981);
return r4302982;
}
Initial program 58.1
Simplified58.1
Final simplification58.1
herbie shell --seed 2019174 +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))))