\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 r316371 = x;
double r316372 = 2.0;
double r316373 = r316371 * r316372;
double r316374 = r316371 * r316371;
double r316375 = r316373 + r316374;
double r316376 = y;
double r316377 = r316376 * r316376;
double r316378 = r316375 + r316377;
return r316378;
}
double f(double x, double y) {
double r316379 = x;
double r316380 = 2.0;
double r316381 = r316379 * r316380;
double r316382 = r316379 * r316379;
double r316383 = r316381 + r316382;
double r316384 = y;
double r316385 = r316384 * r316384;
double r316386 = r316383 + r316385;
return r316386;
}




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 2019325
(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)))