\frac{\tan^{-1}_* \frac{im}{re}}{\log 10}\frac{1}{\sqrt{\log 10}} \cdot \left(\left(\left(\tan^{-1}_* \frac{im}{re} \cdot \sqrt{\frac{1}{\sqrt{\log 10}}}\right) \cdot \sqrt{\sqrt{\frac{1}{\sqrt{\log 10}}}}\right) \cdot \sqrt{\sqrt{\frac{1}{\sqrt{\log 10}}}}\right)double f(double re, double im) {
double r30416 = im;
double r30417 = re;
double r30418 = atan2(r30416, r30417);
double r30419 = 10.0;
double r30420 = log(r30419);
double r30421 = r30418 / r30420;
return r30421;
}
double f(double re, double im) {
double r30422 = 1.0;
double r30423 = 10.0;
double r30424 = log(r30423);
double r30425 = sqrt(r30424);
double r30426 = r30422 / r30425;
double r30427 = im;
double r30428 = re;
double r30429 = atan2(r30427, r30428);
double r30430 = sqrt(r30426);
double r30431 = r30429 * r30430;
double r30432 = sqrt(r30430);
double r30433 = r30431 * r30432;
double r30434 = r30433 * r30432;
double r30435 = r30426 * r30434;
return r30435;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.8
rmApplied add-sqr-sqrt0.8
Applied *-un-lft-identity0.8
Applied times-frac0.8
rmApplied div-inv0.8
rmApplied add-sqr-sqrt0.8
Applied associate-*r*0.8
rmApplied add-sqr-sqrt0.8
Applied sqrt-prod0.1
Applied associate-*r*0.1
Final simplification0.1
herbie shell --seed 2020047
(FPCore (re im)
:name "math.log10 on complex, imaginary part"
:precision binary64
(/ (atan2 im re) (log 10)))