\left(x + 1\right) \cdot \left(x + 1\right) - 1
\mathsf{fma}\left(x, x, x \cdot 2\right)double f(double x) {
double r281536 = x;
double r281537 = 1.0;
double r281538 = r281536 + r281537;
double r281539 = r281538 * r281538;
double r281540 = r281539 - r281537;
return r281540;
}
double f(double x) {
double r281541 = x;
double r281542 = 2.0;
double r281543 = r281541 * r281542;
double r281544 = fma(r281541, r281541, r281543);
return r281544;
}



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