\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\begin{array}{l}
\mathbf{if}\;re \le -1.7109531485520302 \cdot 10^{+90}:\\
\;\;\;\;\left(\left(\log \left(\frac{-1}{re}\right) \cdot -2\right) \cdot \frac{1}{\sqrt{\log 10}}\right) \cdot \frac{\frac{1}{2}}{\sqrt{\log 10}}\\
\mathbf{elif}\;re \le -5.7290891404837934 \cdot 10^{-198}:\\
\;\;\;\;\left(\frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10}}} \cdot \frac{\log \left(re \cdot re + im \cdot im\right)}{\sqrt{\log 10}}\right) \cdot \frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}}\\
\mathbf{elif}\;re \le -6.376038522303672 \cdot 10^{-268}:\\
\;\;\;\;\left(\frac{\log im + \log im}{\sqrt{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10}}}\right) \cdot \frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}}\\
\mathbf{elif}\;re \le 1.7061266383920343 \cdot 10^{+78}:\\
\;\;\;\;\left(\frac{1}{\sqrt{\log 10}} \cdot \log \left(re \cdot re + im \cdot im\right)\right) \cdot \frac{\frac{1}{2}}{\sqrt{\log 10}}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\log re + \log re}{\sqrt{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10}}}\right) \cdot \frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}}\\
\end{array}double f(double re, double im) {
double r1229900 = re;
double r1229901 = r1229900 * r1229900;
double r1229902 = im;
double r1229903 = r1229902 * r1229902;
double r1229904 = r1229901 + r1229903;
double r1229905 = sqrt(r1229904);
double r1229906 = log(r1229905);
double r1229907 = 10.0;
double r1229908 = log(r1229907);
double r1229909 = r1229906 / r1229908;
return r1229909;
}
double f(double re, double im) {
double r1229910 = re;
double r1229911 = -1.7109531485520302e+90;
bool r1229912 = r1229910 <= r1229911;
double r1229913 = -1.0;
double r1229914 = r1229913 / r1229910;
double r1229915 = log(r1229914);
double r1229916 = -2.0;
double r1229917 = r1229915 * r1229916;
double r1229918 = 1.0;
double r1229919 = 10.0;
double r1229920 = log(r1229919);
double r1229921 = sqrt(r1229920);
double r1229922 = r1229918 / r1229921;
double r1229923 = r1229917 * r1229922;
double r1229924 = 0.5;
double r1229925 = r1229924 / r1229921;
double r1229926 = r1229923 * r1229925;
double r1229927 = -5.7290891404837934e-198;
bool r1229928 = r1229910 <= r1229927;
double r1229929 = cbrt(r1229924);
double r1229930 = cbrt(r1229920);
double r1229931 = sqrt(r1229930);
double r1229932 = r1229929 / r1229931;
double r1229933 = r1229910 * r1229910;
double r1229934 = im;
double r1229935 = r1229934 * r1229934;
double r1229936 = r1229933 + r1229935;
double r1229937 = log(r1229936);
double r1229938 = r1229937 / r1229921;
double r1229939 = r1229932 * r1229938;
double r1229940 = r1229929 * r1229929;
double r1229941 = r1229930 * r1229930;
double r1229942 = sqrt(r1229941);
double r1229943 = r1229940 / r1229942;
double r1229944 = r1229939 * r1229943;
double r1229945 = -6.376038522303672e-268;
bool r1229946 = r1229910 <= r1229945;
double r1229947 = log(r1229934);
double r1229948 = r1229947 + r1229947;
double r1229949 = r1229948 / r1229921;
double r1229950 = r1229949 * r1229932;
double r1229951 = r1229950 * r1229943;
double r1229952 = 1.7061266383920343e+78;
bool r1229953 = r1229910 <= r1229952;
double r1229954 = r1229922 * r1229937;
double r1229955 = r1229954 * r1229925;
double r1229956 = log(r1229910);
double r1229957 = r1229956 + r1229956;
double r1229958 = r1229957 / r1229921;
double r1229959 = r1229958 * r1229932;
double r1229960 = r1229959 * r1229943;
double r1229961 = r1229953 ? r1229955 : r1229960;
double r1229962 = r1229946 ? r1229951 : r1229961;
double r1229963 = r1229928 ? r1229944 : r1229962;
double r1229964 = r1229912 ? r1229926 : r1229963;
return r1229964;
}



Bits error versus re



Bits error versus im
Results
if re < -1.7109531485520302e+90Initial program 48.4
rmApplied add-sqr-sqrt48.4
Applied pow1/248.4
Applied log-pow48.4
Applied times-frac48.4
rmApplied div-inv48.3
Taylor expanded around -inf 8.9
Simplified8.9
if -1.7109531485520302e+90 < re < -5.7290891404837934e-198Initial program 18.0
rmApplied add-sqr-sqrt18.0
Applied pow1/218.0
Applied log-pow18.0
Applied times-frac17.9
rmApplied add-cube-cbrt18.5
Applied sqrt-prod18.5
Applied add-cube-cbrt17.9
Applied times-frac18.0
Applied associate-*l*17.9
if -5.7290891404837934e-198 < re < -6.376038522303672e-268Initial program 29.7
rmApplied add-sqr-sqrt29.7
Applied pow1/229.7
Applied log-pow29.7
Applied times-frac29.7
rmApplied add-cube-cbrt30.1
Applied sqrt-prod30.1
Applied add-cube-cbrt29.7
Applied times-frac29.7
Applied associate-*l*29.6
Taylor expanded around 0 34.9
Simplified34.9
if -6.376038522303672e-268 < re < 1.7061266383920343e+78Initial program 22.5
rmApplied add-sqr-sqrt22.5
Applied pow1/222.5
Applied log-pow22.5
Applied times-frac22.5
rmApplied div-inv22.4
if 1.7061266383920343e+78 < re Initial program 46.5
rmApplied add-sqr-sqrt46.5
Applied pow1/246.5
Applied log-pow46.5
Applied times-frac46.4
rmApplied add-cube-cbrt46.6
Applied sqrt-prod46.6
Applied add-cube-cbrt46.4
Applied times-frac46.5
Applied associate-*l*46.4
Taylor expanded around inf 10.7
Simplified10.7
Final simplification17.4
herbie shell --seed 2019162
(FPCore (re im)
:name "math.log10 on complex, real part"
(/ (log (sqrt (+ (* re re) (* im im)))) (log 10)))