\left(\left(1 + x\right) \cdot \left(1 + x\right) - x\right) - 1
\left(\left(1 + x\right) \cdot \left(1 + x\right) - x\right) - 1
double code(double x) {
return ((double) (((double) (((double) (((double) (1.0 + x)) * ((double) (1.0 + x)))) - x)) - 1.0));
}
double code(double x) {
return ((double) (((double) (((double) (((double) (1.0 + x)) * ((double) (1.0 + x)))) - x)) - 1.0));
}



Bits error versus x
Results
Initial program 39.0
Final simplification39.0
herbie shell --seed 2020153
(FPCore (x)
:name "(- (- (* (+ 1 x) (+ 1 x)) x) 1)"
:precision binary64
(- (- (* (+ 1.0 x) (+ 1.0 x)) x) 1.0))