\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 r27826 = im;
double r27827 = re;
double r27828 = atan2(r27826, r27827);
double r27829 = 10.0;
double r27830 = log(r27829);
double r27831 = r27828 / r27830;
return r27831;
}
double f(double re, double im) {
double r27832 = 1.0;
double r27833 = 10.0;
double r27834 = log(r27833);
double r27835 = sqrt(r27834);
double r27836 = r27832 / r27835;
double r27837 = im;
double r27838 = re;
double r27839 = atan2(r27837, r27838);
double r27840 = sqrt(r27836);
double r27841 = r27839 * r27840;
double r27842 = sqrt(r27840);
double r27843 = r27841 * r27842;
double r27844 = r27843 * r27842;
double r27845 = r27836 * r27844;
return r27845;
}



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
Taylor expanded around 0 0.8
rmApplied add-sqr-sqrt0.8
Applied *-un-lft-identity0.8
Applied times-frac0.8
Applied sqrt-prod0.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 2020035 +o rules:numerics
(FPCore (re im)
:name "math.log10 on complex, imaginary part"
:precision binary64
(/ (atan2 im re) (log 10)))