Average Error: 32.7 → 18.2
Time: 10.7s
Precision: 64
\[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
\[\begin{array}{l} \mathbf{if}\;re \le -4.75759962206180014 \cdot 10^{138}:\\ \;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(-2 \cdot \left(\log \left(\frac{-1}{re}\right) \cdot \sqrt{\frac{1}{\log 10}}\right)\right)\\ \mathbf{elif}\;re \le -1.97156786943007107 \cdot 10^{-177}:\\ \;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}} \cdot \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)\\ \mathbf{elif}\;re \le 8.2045700377319277 \cdot 10^{-249}:\\ \;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(2 \cdot \left(\log im \cdot \sqrt{\frac{1}{\log 10}}\right)\right)\\ \mathbf{elif}\;re \le 3.6267478666816686 \cdot 10^{95}:\\ \;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \left(\frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \frac{\log \left(re \cdot re + im \cdot im\right)}{\sqrt{\log 10}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(\left(2 \cdot \log re\right) \cdot \sqrt{\frac{1}{\log 10}}\right)\\ \end{array}\]
\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}
\begin{array}{l}
\mathbf{if}\;re \le -4.75759962206180014 \cdot 10^{138}:\\
\;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(-2 \cdot \left(\log \left(\frac{-1}{re}\right) \cdot \sqrt{\frac{1}{\log 10}}\right)\right)\\

\mathbf{elif}\;re \le -1.97156786943007107 \cdot 10^{-177}:\\
\;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}} \cdot \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)\\

\mathbf{elif}\;re \le 8.2045700377319277 \cdot 10^{-249}:\\
\;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(2 \cdot \left(\log im \cdot \sqrt{\frac{1}{\log 10}}\right)\right)\\

\mathbf{elif}\;re \le 3.6267478666816686 \cdot 10^{95}:\\
\;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \left(\frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \frac{\log \left(re \cdot re + im \cdot im\right)}{\sqrt{\log 10}}\right)\\

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

\end{array}
double f(double re, double im) {
        double r31751 = re;
        double r31752 = r31751 * r31751;
        double r31753 = im;
        double r31754 = r31753 * r31753;
        double r31755 = r31752 + r31754;
        double r31756 = sqrt(r31755);
        double r31757 = log(r31756);
        double r31758 = 10.0;
        double r31759 = log(r31758);
        double r31760 = r31757 / r31759;
        return r31760;
}

double f(double re, double im) {
        double r31761 = re;
        double r31762 = -4.7575996220618e+138;
        bool r31763 = r31761 <= r31762;
        double r31764 = 0.5;
        double r31765 = 10.0;
        double r31766 = log(r31765);
        double r31767 = sqrt(r31766);
        double r31768 = r31764 / r31767;
        double r31769 = -2.0;
        double r31770 = -1.0;
        double r31771 = r31770 / r31761;
        double r31772 = log(r31771);
        double r31773 = 1.0;
        double r31774 = r31773 / r31766;
        double r31775 = sqrt(r31774);
        double r31776 = r31772 * r31775;
        double r31777 = r31769 * r31776;
        double r31778 = r31768 * r31777;
        double r31779 = -1.971567869430071e-177;
        bool r31780 = r31761 <= r31779;
        double r31781 = cbrt(r31764);
        double r31782 = r31781 * r31781;
        double r31783 = cbrt(r31766);
        double r31784 = r31783 * r31783;
        double r31785 = sqrt(r31784);
        double r31786 = r31782 / r31785;
        double r31787 = sqrt(r31783);
        double r31788 = r31781 / r31787;
        double r31789 = r31761 * r31761;
        double r31790 = im;
        double r31791 = r31790 * r31790;
        double r31792 = r31789 + r31791;
        double r31793 = log(r31792);
        double r31794 = r31793 / r31767;
        double r31795 = r31788 * r31794;
        double r31796 = r31786 * r31795;
        double r31797 = 8.204570037731928e-249;
        bool r31798 = r31761 <= r31797;
        double r31799 = 2.0;
        double r31800 = log(r31790);
        double r31801 = r31800 * r31775;
        double r31802 = r31799 * r31801;
        double r31803 = r31768 * r31802;
        double r31804 = 3.6267478666816686e+95;
        bool r31805 = r31761 <= r31804;
        double r31806 = sqrt(r31767);
        double r31807 = r31782 / r31806;
        double r31808 = r31781 / r31806;
        double r31809 = r31808 * r31794;
        double r31810 = r31807 * r31809;
        double r31811 = log(r31761);
        double r31812 = r31799 * r31811;
        double r31813 = r31812 * r31775;
        double r31814 = r31768 * r31813;
        double r31815 = r31805 ? r31810 : r31814;
        double r31816 = r31798 ? r31803 : r31815;
        double r31817 = r31780 ? r31796 : r31816;
        double r31818 = r31763 ? r31778 : r31817;
        return r31818;
}

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 5 regimes
  2. if re < -4.7575996220618e+138

    1. Initial program 59.2

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

      \[\leadsto \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\color{blue}{\sqrt{\log 10} \cdot \sqrt{\log 10}}}\]
    4. Applied pow1/259.2

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

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

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

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

    if -4.7575996220618e+138 < re < -1.971567869430071e-177

    1. Initial program 18.3

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

      \[\leadsto \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\color{blue}{\sqrt{\log 10} \cdot \sqrt{\log 10}}}\]
    4. Applied pow1/218.3

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

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

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

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

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

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

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

      \[\leadsto \color{blue}{\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}} \cdot \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)}\]

    if -1.971567869430071e-177 < re < 8.204570037731928e-249

    1. Initial program 33.4

      \[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
    2. Using strategy rm
    3. Applied add-sqr-sqrt33.4

      \[\leadsto \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\color{blue}{\sqrt{\log 10} \cdot \sqrt{\log 10}}}\]
    4. Applied pow1/233.4

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

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

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

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

    if 8.204570037731928e-249 < re < 3.6267478666816686e+95

    1. Initial program 21.1

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

      \[\leadsto \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\color{blue}{\sqrt{\log 10} \cdot \sqrt{\log 10}}}\]
    4. Applied pow1/221.1

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

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

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

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

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

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

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

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

    if 3.6267478666816686e+95 < re

    1. Initial program 51.2

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

      \[\leadsto \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\color{blue}{\sqrt{\log 10} \cdot \sqrt{\log 10}}}\]
    4. Applied pow1/251.2

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

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

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;re \le -4.75759962206180014 \cdot 10^{138}:\\ \;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(-2 \cdot \left(\log \left(\frac{-1}{re}\right) \cdot \sqrt{\frac{1}{\log 10}}\right)\right)\\ \mathbf{elif}\;re \le -1.97156786943007107 \cdot 10^{-177}:\\ \;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt[3]{\log 10} \cdot \sqrt[3]{\log 10}}} \cdot \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)\\ \mathbf{elif}\;re \le 8.2045700377319277 \cdot 10^{-249}:\\ \;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(2 \cdot \left(\log im \cdot \sqrt{\frac{1}{\log 10}}\right)\right)\\ \mathbf{elif}\;re \le 3.6267478666816686 \cdot 10^{95}:\\ \;\;\;\;\frac{\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \left(\frac{\sqrt[3]{\frac{1}{2}}}{\sqrt{\sqrt{\log 10}}} \cdot \frac{\log \left(re \cdot re + im \cdot im\right)}{\sqrt{\log 10}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{2}}{\sqrt{\log 10}} \cdot \left(\left(2 \cdot \log re\right) \cdot \sqrt{\frac{1}{\log 10}}\right)\\ \end{array}\]

Reproduce

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