\frac{\tan^{-1}_* \frac{im}{re}}{\log 10}\frac{\frac{\sqrt[3]{\tan^{-1}_* \frac{im}{re}}}{\sqrt[3]{\sqrt{\log 10}} \cdot \sqrt[3]{\sqrt{\log 10}}}}{\frac{\sqrt{\log 10}}{\sqrt[3]{\tan^{-1}_* \frac{im}{re}}}} \cdot \frac{\sqrt[3]{\tan^{-1}_* \frac{im}{re}}}{\sqrt[3]{\sqrt{\log 10}}}double code(double re, double im) {
return (((double) atan2(im, re)) / ((double) log(10.0)));
}
double code(double re, double im) {
return ((double) (((((double) cbrt(((double) atan2(im, re)))) / ((double) (((double) cbrt(((double) sqrt(((double) log(10.0)))))) * ((double) cbrt(((double) sqrt(((double) log(10.0))))))))) / (((double) sqrt(((double) log(10.0)))) / ((double) cbrt(((double) atan2(im, re)))))) * (((double) cbrt(((double) atan2(im, re)))) / ((double) cbrt(((double) sqrt(((double) log(10.0)))))))));
}



Bits error versus re



Bits error versus im
Results
Initial program 0.9
rmApplied add-sqr-sqrt0.9
Applied *-un-lft-identity0.9
Applied times-frac0.8
rmApplied add-cube-cbrt1.5
Applied add-cube-cbrt0.8
Applied times-frac1.0
Applied associate-*r*1.0
Simplified0.8
Final simplification0.8
herbie shell --seed 2020182
(FPCore (re im)
:name "math.log10 on complex, imaginary part"
:precision binary64
(/ (atan2 im re) (log 10.0)))