re \cdot re - im \cdot im
re \cdot re - im \cdot im
double f(double re, double im) {
double r9616 = re;
double r9617 = r9616 * r9616;
double r9618 = im;
double r9619 = r9618 * r9618;
double r9620 = r9617 - r9619;
return r9620;
}
double f(double re, double im) {
double r9621 = re;
double r9622 = r9621 * r9621;
double r9623 = im;
double r9624 = r9623 * r9623;
double r9625 = r9622 - r9624;
return r9625;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019128
(FPCore (re im)
:name "math.square on complex, real part"
(- (* re re) (* im im)))