\left(x + y\right) \cdot \left(x + y\right)
\mathsf{fma}\left(x, x, y \cdot \left(2 \cdot x + y\right)\right)double f(double x, double y) {
double r597125 = x;
double r597126 = y;
double r597127 = r597125 + r597126;
double r597128 = r597127 * r597127;
return r597128;
}
double f(double x, double y) {
double r597129 = x;
double r597130 = y;
double r597131 = 2.0;
double r597132 = r597131 * r597129;
double r597133 = r597132 + r597130;
double r597134 = r597130 * r597133;
double r597135 = fma(r597129, r597129, r597134);
return r597135;
}




Bits error versus x




Bits error versus y
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
rmApplied flip-+0.0
Applied flip-+0.1
Applied frac-times34.1
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020045 +o rules:numerics
(FPCore (x y)
:name "Examples.Basics.BasicTests:f3 from sbv-4.4"
:precision binary64
:herbie-target
(+ (* x x) (+ (* y y) (* 2 (* y x))))
(* (+ x y) (+ x y)))