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



Bits error versus x
Results
Initial program 39.0
Simplified0.0
rmApplied distribute-rgt-in_binary640.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020253
(FPCore (x)
:name "Expanding a square"
:precision binary64
(- (* (+ x 1.0) (+ x 1.0)) 1.0))