re \cdot re - im \cdot im
re \cdot re - im \cdot im
double f(double re, double im) {
double r651821 = re;
double r651822 = r651821 * r651821;
double r651823 = im;
double r651824 = r651823 * r651823;
double r651825 = r651822 - r651824;
return r651825;
}
double f(double re, double im) {
double r651826 = re;
double r651827 = r651826 * r651826;
double r651828 = im;
double r651829 = r651828 * r651828;
double r651830 = r651827 - r651829;
return r651830;
}



Bits error versus re



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