\left(x \cdot x + \left(x \cdot 2\right) \cdot y\right) + y \cdot y
\left(x \cdot x + \left(x \cdot 2\right) \cdot y\right) + y \cdot y
double f(double x, double y) {
double r625223 = x;
double r625224 = r625223 * r625223;
double r625225 = 2.0;
double r625226 = r625223 * r625225;
double r625227 = y;
double r625228 = r625226 * r625227;
double r625229 = r625224 + r625228;
double r625230 = r625227 * r625227;
double r625231 = r625229 + r625230;
return r625231;
}
double f(double x, double y) {
double r625232 = x;
double r625233 = r625232 * r625232;
double r625234 = 2.0;
double r625235 = r625232 * r625234;
double r625236 = y;
double r625237 = r625235 * r625236;
double r625238 = r625233 + r625237;
double r625239 = r625236 * r625236;
double r625240 = r625238 + r625239;
return r625240;
}




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 2020047 +o rules:numerics
(FPCore (x y)
:name "Examples.Basics.ProofTests:f4 from sbv-4.4"
:precision binary64
:herbie-target
(+ (* x x) (+ (* y y) (* (* x y) 2)))
(+ (+ (* x x) (* (* x 2) y)) (* y y)))