\frac{\tan^{-1}_* \frac{im}{re}}{\log 10}\sqrt{\frac{1}{\sqrt[3]{\sqrt{\log 10}}}} \cdot \left(\left(\sqrt{\frac{1}{\sqrt{\log 10}}} \cdot \left|\frac{1}{\sqrt[3]{\sqrt{\log 10}}}\right|\right) \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\sqrt{\log 10}}\right)double f(double re, double im) {
double r1267534 = im;
double r1267535 = re;
double r1267536 = atan2(r1267534, r1267535);
double r1267537 = 10.0;
double r1267538 = log(r1267537);
double r1267539 = r1267536 / r1267538;
return r1267539;
}
double f(double re, double im) {
double r1267540 = 1.0;
double r1267541 = 10.0;
double r1267542 = log(r1267541);
double r1267543 = sqrt(r1267542);
double r1267544 = cbrt(r1267543);
double r1267545 = r1267540 / r1267544;
double r1267546 = sqrt(r1267545);
double r1267547 = r1267540 / r1267543;
double r1267548 = sqrt(r1267547);
double r1267549 = fabs(r1267545);
double r1267550 = r1267548 * r1267549;
double r1267551 = im;
double r1267552 = re;
double r1267553 = atan2(r1267551, r1267552);
double r1267554 = r1267553 / r1267543;
double r1267555 = r1267550 * r1267554;
double r1267556 = r1267546 * r1267555;
return r1267556;
}



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
Applied associate-*r*0.8
rmApplied add-sqr-sqrt0.8
Applied associate-*r*0.8
rmApplied add-cube-cbrt0.1
Applied *-un-lft-identity0.1
Applied times-frac0.1
Applied sqrt-prod0.1
Applied associate-*r*0.2
Simplified0.1
Final simplification0.1
herbie shell --seed 2019172 +o rules:numerics
(FPCore (re im)
:name "math.log10 on complex, imaginary part"
(/ (atan2 im re) (log 10.0)))