a \cdot a - b \cdot b
\left(b + a\right) \cdot \left(a - b\right)
double f(double a, double b) {
double r4523660 = a;
double r4523661 = r4523660 * r4523660;
double r4523662 = b;
double r4523663 = r4523662 * r4523662;
double r4523664 = r4523661 - r4523663;
return r4523664;
}
double f(double a, double b) {
double r4523665 = b;
double r4523666 = a;
double r4523667 = r4523665 + r4523666;
double r4523668 = r4523666 - r4523665;
double r4523669 = r4523667 * r4523668;
return r4523669;
}




Bits error versus a




Bits error versus b
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
rmApplied difference-of-squares0.0
Final simplification0.0
herbie shell --seed 2019146
(FPCore (a b)
:name "Difference of squares"
:herbie-target
(* (+ a b) (- a b))
(- (* a a) (* b b)))