Average Error: 32.1 → 17.9
Time: 19.6s
Precision: 64
\[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
\[\begin{array}{l} \mathbf{if}\;re \le -1.156407601863717509012505141513837828653 \cdot 10^{112}:\\ \;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{-2 \cdot \log \left(\frac{-1}{re}\right)}}\\ \mathbf{elif}\;re \le 1.244988213884062755522549209945596691708 \cdot 10^{138}:\\ \;\;\;\;\frac{\sqrt{\frac{1}{2}}}{\log 10 \cdot \frac{\frac{1}{\log \left(re \cdot re + im \cdot im\right)}}{\sqrt{\frac{1}{2}}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{\frac{1}{2}}}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \left(\log re \cdot 2\right)}}\\ \end{array}\]
\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}
\begin{array}{l}
\mathbf{if}\;re \le -1.156407601863717509012505141513837828653 \cdot 10^{112}:\\
\;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{-2 \cdot \log \left(\frac{-1}{re}\right)}}\\

\mathbf{elif}\;re \le 1.244988213884062755522549209945596691708 \cdot 10^{138}:\\
\;\;\;\;\frac{\sqrt{\frac{1}{2}}}{\log 10 \cdot \frac{\frac{1}{\log \left(re \cdot re + im \cdot im\right)}}{\sqrt{\frac{1}{2}}}}\\

\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{\frac{1}{2}}}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \left(\log re \cdot 2\right)}}\\

\end{array}
double f(double re, double im) {
        double r29842 = re;
        double r29843 = r29842 * r29842;
        double r29844 = im;
        double r29845 = r29844 * r29844;
        double r29846 = r29843 + r29845;
        double r29847 = sqrt(r29846);
        double r29848 = log(r29847);
        double r29849 = 10.0;
        double r29850 = log(r29849);
        double r29851 = r29848 / r29850;
        return r29851;
}

double f(double re, double im) {
        double r29852 = re;
        double r29853 = -1.1564076018637175e+112;
        bool r29854 = r29852 <= r29853;
        double r29855 = 0.5;
        double r29856 = cbrt(r29855);
        double r29857 = r29856 * r29856;
        double r29858 = 10.0;
        double r29859 = log(r29858);
        double r29860 = cbrt(r29859);
        double r29861 = r29860 * r29860;
        double r29862 = r29857 / r29861;
        double r29863 = -2.0;
        double r29864 = -1.0;
        double r29865 = r29864 / r29852;
        double r29866 = log(r29865);
        double r29867 = r29863 * r29866;
        double r29868 = r29860 / r29867;
        double r29869 = r29856 / r29868;
        double r29870 = r29862 * r29869;
        double r29871 = 1.2449882138840628e+138;
        bool r29872 = r29852 <= r29871;
        double r29873 = sqrt(r29855);
        double r29874 = 1.0;
        double r29875 = r29852 * r29852;
        double r29876 = im;
        double r29877 = r29876 * r29876;
        double r29878 = r29875 + r29877;
        double r29879 = log(r29878);
        double r29880 = r29874 / r29879;
        double r29881 = r29880 / r29873;
        double r29882 = r29859 * r29881;
        double r29883 = r29873 / r29882;
        double r29884 = log(r29852);
        double r29885 = 2.0;
        double r29886 = r29884 * r29885;
        double r29887 = r29873 * r29886;
        double r29888 = r29859 / r29887;
        double r29889 = r29873 / r29888;
        double r29890 = r29872 ? r29883 : r29889;
        double r29891 = r29854 ? r29870 : r29890;
        return r29891;
}

Error

Bits error versus re

Bits error versus im

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if re < -1.1564076018637175e+112

    1. Initial program 52.8

      \[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
    2. Using strategy rm
    3. Applied pow152.8

      \[\leadsto \frac{\log \left(\sqrt{\color{blue}{{\left(re \cdot re + im \cdot im\right)}^{1}}}\right)}{\log 10}\]
    4. Applied sqrt-pow152.8

      \[\leadsto \frac{\log \color{blue}{\left({\left(re \cdot re + im \cdot im\right)}^{\left(\frac{1}{2}\right)}\right)}}{\log 10}\]
    5. Applied log-pow52.8

      \[\leadsto \frac{\color{blue}{\frac{1}{2} \cdot \log \left(re \cdot re + im \cdot im\right)}}{\log 10}\]
    6. Applied associate-/l*52.8

      \[\leadsto \color{blue}{\frac{\frac{1}{2}}{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}}\]
    7. Using strategy rm
    8. Applied pow152.8

      \[\leadsto \frac{\frac{1}{2}}{\frac{\log 10}{\log \color{blue}{\left({\left(re \cdot re + im \cdot im\right)}^{1}\right)}}}\]
    9. Applied log-pow52.8

      \[\leadsto \frac{\frac{1}{2}}{\frac{\log 10}{\color{blue}{1 \cdot \log \left(re \cdot re + im \cdot im\right)}}}\]
    10. Applied add-cube-cbrt53.0

      \[\leadsto \frac{\frac{1}{2}}{\frac{\color{blue}{\left(\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}\right) \cdot \sqrt[3]{\log 10}}}{1 \cdot \log \left(re \cdot re + im \cdot im\right)}}\]
    11. Applied times-frac53.0

      \[\leadsto \frac{\frac{1}{2}}{\color{blue}{\frac{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}{1} \cdot \frac{\sqrt[3]{\log 10}}{\log \left(re \cdot re + im \cdot im\right)}}}\]
    12. Applied add-cube-cbrt52.8

      \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}\right) \cdot \sqrt[3]{\frac{1}{2}}}}{\frac{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}{1} \cdot \frac{\sqrt[3]{\log 10}}{\log \left(re \cdot re + im \cdot im\right)}}\]
    13. Applied times-frac52.8

      \[\leadsto \color{blue}{\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}{1}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{\log \left(re \cdot re + im \cdot im\right)}}}\]
    14. Simplified52.8

      \[\leadsto \color{blue}{\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{\log \left(re \cdot re + im \cdot im\right)}}\]
    15. Simplified52.8

      \[\leadsto \frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}} \cdot \color{blue}{\frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{\log \left(re \cdot re + im \cdot im\right)}}}\]
    16. Taylor expanded around -inf 8.5

      \[\leadsto \frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{\color{blue}{-2 \cdot \log \left(\frac{-1}{re}\right)}}}\]
    17. Simplified8.5

      \[\leadsto \frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{\color{blue}{-2 \cdot \log \left(\frac{-1}{re}\right)}}}\]

    if -1.1564076018637175e+112 < re < 1.2449882138840628e+138

    1. Initial program 22.1

      \[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
    2. Using strategy rm
    3. Applied pow122.1

      \[\leadsto \frac{\log \left(\sqrt{\color{blue}{{\left(re \cdot re + im \cdot im\right)}^{1}}}\right)}{\log 10}\]
    4. Applied sqrt-pow122.1

      \[\leadsto \frac{\log \color{blue}{\left({\left(re \cdot re + im \cdot im\right)}^{\left(\frac{1}{2}\right)}\right)}}{\log 10}\]
    5. Applied log-pow22.1

      \[\leadsto \frac{\color{blue}{\frac{1}{2} \cdot \log \left(re \cdot re + im \cdot im\right)}}{\log 10}\]
    6. Applied associate-/l*22.1

      \[\leadsto \color{blue}{\frac{\frac{1}{2}}{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}}\]
    7. Using strategy rm
    8. Applied add-sqr-sqrt22.2

      \[\leadsto \frac{\color{blue}{\sqrt{\frac{1}{2}} \cdot \sqrt{\frac{1}{2}}}}{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}\]
    9. Applied associate-/l*22.0

      \[\leadsto \color{blue}{\frac{\sqrt{\frac{1}{2}}}{\frac{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}{\sqrt{\frac{1}{2}}}}}\]
    10. Simplified22.0

      \[\leadsto \frac{\sqrt{\frac{1}{2}}}{\color{blue}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \log \left(re \cdot re + im \cdot im\right)}}}\]
    11. Using strategy rm
    12. Applied div-inv22.0

      \[\leadsto \frac{\sqrt{\frac{1}{2}}}{\color{blue}{\log 10 \cdot \frac{1}{\sqrt{\frac{1}{2}} \cdot \log \left(re \cdot re + im \cdot im\right)}}}\]
    13. Simplified22.0

      \[\leadsto \frac{\sqrt{\frac{1}{2}}}{\log 10 \cdot \color{blue}{\frac{\frac{1}{\log \left(re \cdot re + im \cdot im\right)}}{\sqrt{\frac{1}{2}}}}}\]

    if 1.2449882138840628e+138 < re

    1. Initial program 58.8

      \[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
    2. Using strategy rm
    3. Applied pow158.8

      \[\leadsto \frac{\log \left(\sqrt{\color{blue}{{\left(re \cdot re + im \cdot im\right)}^{1}}}\right)}{\log 10}\]
    4. Applied sqrt-pow158.8

      \[\leadsto \frac{\log \color{blue}{\left({\left(re \cdot re + im \cdot im\right)}^{\left(\frac{1}{2}\right)}\right)}}{\log 10}\]
    5. Applied log-pow58.8

      \[\leadsto \frac{\color{blue}{\frac{1}{2} \cdot \log \left(re \cdot re + im \cdot im\right)}}{\log 10}\]
    6. Applied associate-/l*58.8

      \[\leadsto \color{blue}{\frac{\frac{1}{2}}{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}}\]
    7. Using strategy rm
    8. Applied add-sqr-sqrt58.8

      \[\leadsto \frac{\color{blue}{\sqrt{\frac{1}{2}} \cdot \sqrt{\frac{1}{2}}}}{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}\]
    9. Applied associate-/l*58.8

      \[\leadsto \color{blue}{\frac{\sqrt{\frac{1}{2}}}{\frac{\frac{\log 10}{\log \left(re \cdot re + im \cdot im\right)}}{\sqrt{\frac{1}{2}}}}}\]
    10. Simplified58.8

      \[\leadsto \frac{\sqrt{\frac{1}{2}}}{\color{blue}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \log \left(re \cdot re + im \cdot im\right)}}}\]
    11. Taylor expanded around inf 8.0

      \[\leadsto \frac{\sqrt{\frac{1}{2}}}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \color{blue}{\left(-2 \cdot \log \left(\frac{1}{re}\right)\right)}}}\]
    12. Simplified8.0

      \[\leadsto \frac{\sqrt{\frac{1}{2}}}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \color{blue}{\left(\log re \cdot 2\right)}}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification17.9

    \[\leadsto \begin{array}{l} \mathbf{if}\;re \le -1.156407601863717509012505141513837828653 \cdot 10^{112}:\\ \;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}} \cdot \frac{\sqrt[3]{\frac{1}{2}}}{\frac{\sqrt[3]{\log 10}}{-2 \cdot \log \left(\frac{-1}{re}\right)}}\\ \mathbf{elif}\;re \le 1.244988213884062755522549209945596691708 \cdot 10^{138}:\\ \;\;\;\;\frac{\sqrt{\frac{1}{2}}}{\log 10 \cdot \frac{\frac{1}{\log \left(re \cdot re + im \cdot im\right)}}{\sqrt{\frac{1}{2}}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{\frac{1}{2}}}{\frac{\log 10}{\sqrt{\frac{1}{2}} \cdot \left(\log re \cdot 2\right)}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019323 
(FPCore (re im)
  :name "math.log10 on complex, real part"
  :precision binary64
  (/ (log (sqrt (+ (* re re) (* im im)))) (log 10)))