\left(x + 1\right) \cdot \left(x + 1\right) - 1
\mathsf{fma}\left(x, x, x \cdot 2\right)double f(double x) {
double r307308 = x;
double r307309 = 1.0;
double r307310 = r307308 + r307309;
double r307311 = r307310 * r307310;
double r307312 = r307311 - r307309;
return r307312;
}
double f(double x) {
double r307313 = x;
double r307314 = 2.0;
double r307315 = r307313 * r307314;
double r307316 = fma(r307313, r307313, r307315);
return r307316;
}



Bits error versus x
Initial program 39.0
Simplified0.0
Taylor expanded around 0 0.0
Simplified0
Final simplification0
herbie shell --seed 2019163 +o rules:numerics
(FPCore (x)
:name "Expanding a square"
(- (* (+ x 1) (+ x 1)) 1))