\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 r504131 = x;
double r504132 = 2.0;
double r504133 = r504131 * r504132;
double r504134 = r504131 * r504131;
double r504135 = r504133 + r504134;
double r504136 = y;
double r504137 = r504136 * r504136;
double r504138 = r504135 + r504137;
return r504138;
}
double f(double x, double y) {
double r504139 = x;
double r504140 = 2.0;
double r504141 = r504139 * r504140;
double r504142 = r504139 * r504139;
double r504143 = r504141 + r504142;
double r504144 = y;
double r504145 = r504144 * r504144;
double r504146 = r504143 + r504145;
return r504146;
}




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