\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\begin{array}{l}
\mathbf{if}\;re \le -6.435791861848148 \cdot 10^{+153}:\\
\;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(\left(\sqrt{\frac{1}{\log 10}} \cdot \log \left(\frac{-1}{re}\right)\right) \cdot -2\right)\\
\mathbf{elif}\;re \le 2.3927596347897605 \cdot 10^{-264}:\\
\;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \left(\frac{\log \left(re \cdot re + im \cdot im\right)}{\sqrt{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}}\right)\\
\mathbf{elif}\;re \le 3.6038808942744265 \cdot 10^{-158}:\\
\;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(2 \cdot \left(\sqrt{\frac{1}{\log 10}} \cdot \log im\right)\right)\\
\mathbf{elif}\;re \le 2.5731787747213785 \cdot 10^{+101}:\\
\;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \left(\frac{\log \left(re \cdot re + im \cdot im\right)}{\sqrt{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(\sqrt{\frac{1}{\log 10}} \cdot \log re\right) \cdot 2\right) \cdot \frac{\frac{1}{2}}{\sqrt{\log 10}}\\
\end{array}double f(double re, double im) {
double r1975302 = re;
double r1975303 = r1975302 * r1975302;
double r1975304 = im;
double r1975305 = r1975304 * r1975304;
double r1975306 = r1975303 + r1975305;
double r1975307 = sqrt(r1975306);
double r1975308 = log(r1975307);
double r1975309 = 10.0;
double r1975310 = log(r1975309);
double r1975311 = r1975308 / r1975310;
return r1975311;
}
double f(double re, double im) {
double r1975312 = re;
double r1975313 = -6.435791861848148e+153;
bool r1975314 = r1975312 <= r1975313;
double r1975315 = 0.5;
double r1975316 = 10.0;
double r1975317 = log(r1975316);
double r1975318 = sqrt(r1975317);
double r1975319 = r1975315 / r1975318;
double r1975320 = 1.0;
double r1975321 = r1975320 / r1975317;
double r1975322 = sqrt(r1975321);
double r1975323 = -1.0;
double r1975324 = r1975323 / r1975312;
double r1975325 = log(r1975324);
double r1975326 = r1975322 * r1975325;
double r1975327 = -2.0;
double r1975328 = r1975326 * r1975327;
double r1975329 = r1975319 * r1975328;
double r1975330 = 2.3927596347897605e-264;
bool r1975331 = r1975312 <= r1975330;
double r1975332 = cbrt(r1975315);
double r1975333 = r1975332 * r1975332;
double r1975334 = sqrt(r1975318);
double r1975335 = r1975333 / r1975334;
double r1975336 = r1975312 * r1975312;
double r1975337 = im;
double r1975338 = r1975337 * r1975337;
double r1975339 = r1975336 + r1975338;
double r1975340 = log(r1975339);
double r1975341 = r1975340 / r1975318;
double r1975342 = r1975332 / r1975334;
double r1975343 = r1975341 * r1975342;
double r1975344 = r1975335 * r1975343;
double r1975345 = 3.6038808942744265e-158;
bool r1975346 = r1975312 <= r1975345;
double r1975347 = 2.0;
double r1975348 = log(r1975337);
double r1975349 = r1975322 * r1975348;
double r1975350 = r1975347 * r1975349;
double r1975351 = r1975319 * r1975350;
double r1975352 = 2.5731787747213785e+101;
bool r1975353 = r1975312 <= r1975352;
double r1975354 = log(r1975312);
double r1975355 = r1975322 * r1975354;
double r1975356 = r1975355 * r1975347;
double r1975357 = r1975356 * r1975319;
double r1975358 = r1975353 ? r1975344 : r1975357;
double r1975359 = r1975346 ? r1975351 : r1975358;
double r1975360 = r1975331 ? r1975344 : r1975359;
double r1975361 = r1975314 ? r1975329 : r1975360;
return r1975361;
}



Bits error versus re



Bits error versus im
Results
if re < -6.435791861848148e+153Initial program 61.9
rmApplied add-sqr-sqrt61.9
Applied pow1/261.9
Applied log-pow61.9
Applied times-frac61.9
Taylor expanded around -inf 6.9
if -6.435791861848148e+153 < re < 2.3927596347897605e-264 or 3.6038808942744265e-158 < re < 2.5731787747213785e+101Initial program 19.1
rmApplied add-sqr-sqrt19.1
Applied pow1/219.1
Applied log-pow19.1
Applied times-frac19.1
rmApplied add-sqr-sqrt19.1
Applied sqrt-prod19.6
Applied add-cube-cbrt19.1
Applied times-frac19.1
Applied associate-*l*19.0
if 2.3927596347897605e-264 < re < 3.6038808942744265e-158Initial program 30.2
rmApplied add-sqr-sqrt30.2
Applied pow1/230.2
Applied log-pow30.2
Applied times-frac30.2
Taylor expanded around 0 35.3
if 2.5731787747213785e+101 < re Initial program 50.7
rmApplied add-sqr-sqrt50.7
Applied pow1/250.7
Applied log-pow50.7
Applied times-frac50.7
Taylor expanded around inf 9.7
Simplified9.7
Final simplification17.3
herbie shell --seed 2019128
(FPCore (re im)
:name "math.log10 on complex, real part"
(/ (log (sqrt (+ (* re re) (* im im)))) (log 10)))