\frac{\tan^{-1}_* \frac{im}{re}}{\log 10}\left(\left(\sqrt{\frac{1}{\sqrt[3]{\sqrt{\log 10}}}} \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\sqrt{\log 10}}\right) \cdot \sqrt{\frac{1}{\sqrt[3]{\sqrt{\log 10}} \cdot \sqrt[3]{\sqrt{\log 10}}}}\right) \cdot \sqrt{\frac{1}{\sqrt{\log 10}}}double f(double re, double im) {
double r41526 = im;
double r41527 = re;
double r41528 = atan2(r41526, r41527);
double r41529 = 10.0;
double r41530 = log(r41529);
double r41531 = r41528 / r41530;
return r41531;
}
double f(double re, double im) {
double r41532 = 1.0;
double r41533 = 10.0;
double r41534 = log(r41533);
double r41535 = sqrt(r41534);
double r41536 = cbrt(r41535);
double r41537 = r41532 / r41536;
double r41538 = sqrt(r41537);
double r41539 = im;
double r41540 = re;
double r41541 = atan2(r41539, r41540);
double r41542 = r41541 / r41535;
double r41543 = r41538 * r41542;
double r41544 = r41536 * r41536;
double r41545 = r41532 / r41544;
double r41546 = sqrt(r41545);
double r41547 = r41543 * r41546;
double r41548 = r41532 / r41535;
double r41549 = sqrt(r41548);
double r41550 = r41547 * r41549;
return r41550;
}



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-sqr-sqrt0.8
Applied associate-*l*0.9
rmApplied add-cube-cbrt0.1
Applied add-sqr-sqrt0.1
Applied times-frac0.1
Applied sqrt-prod0.1
Applied associate-*l*0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019325
(FPCore (re im)
:name "math.log10 on complex, imaginary part"
:precision binary64
(/ (atan2 im re) (log 10)))