double f(double re, double im) {
double r290857 = re;
double r290858 = r290857 * r290857;
double r290859 = im;
double r290860 = r290859 * r290859;
double r290861 = r290858 + r290860;
double r290862 = sqrt(r290861);
double r290863 = log(r290862);
return r290863;
}
double f(double re, double im) {
double r290864 = re;
double r290865 = im;
double r290866 = hypot(r290864, r290865);
double r290867 = log(r290866);
return r290867;
}
\log \left(\sqrt{re \cdot re + im \cdot im}\right)\log \left(\sqrt{re^2 + im^2}^*\right)


Bits error versus re



Bits error versus im
Initial program 30.2
Simplified0.0
Final simplification0.0
herbie shell --seed 2019101 +o rules:numerics
(FPCore (re im)
:name "math.log/1 on complex, real part"
(log (sqrt (+ (* re re) (* im im)))))