\left(\left(\left(\left(\left(\left(a \cdot {x}^{7} + b \cdot {x}^{6}\right) + c \cdot {x}^{5}\right) + d \cdot {x}^{4}\right) + e \cdot {x}^{3}\right) + f \cdot {x}^{2}\right) + g \cdot x\right) + h\left(\left(\left(\left(\left(\left(a \cdot {x}^{7} + b \cdot {x}^{6}\right) + c \cdot {x}^{5}\right) + d \cdot {x}^{4}\right) + e \cdot {x}^{3}\right) + f \cdot {x}^{2}\right) + g \cdot x\right) + hdouble code(double a, double x, double b, double c, double d, double e, double f, double g, double h) {
return ((double) (((double) (((double) (((double) (((double) (((double) (((double) (((double) (a * ((double) pow(x, 7.0)))) + ((double) (b * ((double) pow(x, 6.0)))))) + ((double) (c * ((double) pow(x, 5.0)))))) + ((double) (d * ((double) pow(x, 4.0)))))) + ((double) (e * ((double) pow(x, 3.0)))))) + ((double) (f * ((double) pow(x, 2.0)))))) + ((double) (g * x)))) + h));
}
double code(double a, double x, double b, double c, double d, double e, double f, double g, double h) {
return ((double) (((double) (((double) (((double) (((double) (((double) (((double) (((double) (a * ((double) pow(x, 7.0)))) + ((double) (b * ((double) pow(x, 6.0)))))) + ((double) (c * ((double) pow(x, 5.0)))))) + ((double) (d * ((double) pow(x, 4.0)))))) + ((double) (e * ((double) pow(x, 3.0)))))) + ((double) (f * ((double) pow(x, 2.0)))))) + ((double) (g * x)))) + h));
}



Bits error versus a



Bits error versus x



Bits error versus b



Bits error versus c



Bits error versus d



Bits error versus e



Bits error versus f



Bits error versus g



Bits error versus h
Results
Initial program 1.4
Final simplification1.4
herbie shell --seed 2020153
(FPCore (a x b c d e f g h)
:name "(+ (+ (+ (+ (+ (+ (+ (* a (pow x 7)) (* b (pow x 6))) (* c (pow x 5))) (* d (pow x 4))) (* e (pow x 3))) (* f (pow x 2))) (* g x)) h)"
:precision binary64
(+ (+ (+ (+ (+ (+ (+ (* a (pow x 7.0)) (* b (pow x 6.0))) (* c (pow x 5.0))) (* d (pow x 4.0))) (* e (pow x 3.0))) (* f (pow x 2.0))) (* g x)) h))