re \cdot re - im \cdot im
re \cdot re - im \cdot im
double f(double re, double im) {
double r1200696 = re;
double r1200697 = r1200696 * r1200696;
double r1200698 = im;
double r1200699 = r1200698 * r1200698;
double r1200700 = r1200697 - r1200699;
return r1200700;
}
double f(double re, double im) {
double r1200701 = re;
double r1200702 = r1200701 * r1200701;
double r1200703 = im;
double r1200704 = r1200703 * r1200703;
double r1200705 = r1200702 - r1200704;
return r1200705;
}



Bits error versus re



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