\left(x \cdot 2 + x \cdot x\right) + y \cdot y
\left(x \cdot 2 + x \cdot x\right) + y \cdot y
double f(double x, double y) {
double r509237 = x;
double r509238 = 2.0;
double r509239 = r509237 * r509238;
double r509240 = r509237 * r509237;
double r509241 = r509239 + r509240;
double r509242 = y;
double r509243 = r509242 * r509242;
double r509244 = r509241 + r509243;
return r509244;
}
double f(double x, double y) {
double r509245 = x;
double r509246 = 2.0;
double r509247 = r509245 * r509246;
double r509248 = r509245 * r509245;
double r509249 = r509247 + r509248;
double r509250 = y;
double r509251 = r509250 * r509250;
double r509252 = r509249 + r509251;
return r509252;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019350
(FPCore (x y)
:name "Numeric.Log:$clog1p from log-domain-0.10.2.1, A"
:precision binary64
:herbie-target
(+ (* y y) (+ (* 2 x) (* x x)))
(+ (+ (* x 2) (* x x)) (* y y)))