Average Error: 31.6 → 17.6
Time: 21.1s
Precision: 64
\[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
\[\begin{array}{l} \mathbf{if}\;re \le -6.070696817770049897362818226450973536409 \cdot 10^{119}:\\ \;\;\;\;\left(\log \left(\frac{-1}{re}\right) \cdot \sqrt{\frac{1}{\log 10}}\right) \cdot \frac{-1}{\sqrt{\log 10}}\\ \mathbf{elif}\;re \le 7.239744803523932456345417905652411262743 \cdot 10^{115}:\\ \;\;\;\;\frac{1}{\sqrt{\log 10}} \cdot \left(\frac{1}{\sqrt[3]{\log 10}} \cdot \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\sqrt[3]{\sqrt{\log 10}}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\sqrt{\log 10}} \cdot \left(\log re \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 -6.070696817770049897362818226450973536409 \cdot 10^{119}:\\
\;\;\;\;\left(\log \left(\frac{-1}{re}\right) \cdot \sqrt{\frac{1}{\log 10}}\right) \cdot \frac{-1}{\sqrt{\log 10}}\\

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

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

\end{array}
double f(double re, double im) {
        double r38117 = re;
        double r38118 = r38117 * r38117;
        double r38119 = im;
        double r38120 = r38119 * r38119;
        double r38121 = r38118 + r38120;
        double r38122 = sqrt(r38121);
        double r38123 = log(r38122);
        double r38124 = 10.0;
        double r38125 = log(r38124);
        double r38126 = r38123 / r38125;
        return r38126;
}

double f(double re, double im) {
        double r38127 = re;
        double r38128 = -6.07069681777005e+119;
        bool r38129 = r38127 <= r38128;
        double r38130 = -1.0;
        double r38131 = r38130 / r38127;
        double r38132 = log(r38131);
        double r38133 = 1.0;
        double r38134 = 10.0;
        double r38135 = log(r38134);
        double r38136 = r38133 / r38135;
        double r38137 = sqrt(r38136);
        double r38138 = r38132 * r38137;
        double r38139 = sqrt(r38135);
        double r38140 = r38130 / r38139;
        double r38141 = r38138 * r38140;
        double r38142 = 7.2397448035239325e+115;
        bool r38143 = r38127 <= r38142;
        double r38144 = r38133 / r38139;
        double r38145 = cbrt(r38135);
        double r38146 = r38133 / r38145;
        double r38147 = r38127 * r38127;
        double r38148 = im;
        double r38149 = r38148 * r38148;
        double r38150 = r38147 + r38149;
        double r38151 = sqrt(r38150);
        double r38152 = log(r38151);
        double r38153 = cbrt(r38139);
        double r38154 = r38152 / r38153;
        double r38155 = r38146 * r38154;
        double r38156 = r38144 * r38155;
        double r38157 = log(r38127);
        double r38158 = r38157 * r38137;
        double r38159 = r38144 * r38158;
        double r38160 = r38143 ? r38156 : r38159;
        double r38161 = r38129 ? r38141 : r38160;
        return r38161;
}

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 < -6.07069681777005e+119

    1. Initial program 55.7

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

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

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

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

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

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

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

    if -6.07069681777005e+119 < re < 7.2397448035239325e+115

    1. Initial program 21.7

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

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

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

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

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

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

      \[\leadsto \frac{1}{\sqrt{\log 10}} \cdot \frac{\color{blue}{\sqrt[3]{\left(\log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot \log \left(\sqrt{re \cdot re + im \cdot im}\right)\right) \cdot \log \left(\sqrt{re \cdot re + im \cdot im}\right)}}}{\sqrt[3]{\left(\sqrt{\log 10} \cdot \sqrt{\log 10}\right) \cdot \sqrt{\log 10}}}\]
    10. Applied cbrt-undiv21.7

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

      \[\leadsto \frac{1}{\sqrt{\log 10}} \cdot \sqrt[3]{\color{blue}{{\left(\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\sqrt{\log 10}}\right)}^{3}}}\]
    12. Using strategy rm
    13. Applied add-cube-cbrt22.5

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

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

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

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

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

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

      \[\leadsto \frac{1}{\sqrt{\log 10}} \cdot \left(\color{blue}{\frac{1}{\sqrt[3]{\log 10}}} \cdot \sqrt[3]{{\left(\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\sqrt[3]{\sqrt{\log 10}}}\right)}^{3}}\right)\]
    20. Simplified21.6

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

    if 7.2397448035239325e+115 < re

    1. Initial program 53.4

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

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

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

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

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

      \[\leadsto \frac{1}{\sqrt{\log 10}} \cdot \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\color{blue}{\sqrt[3]{\left(\sqrt{\log 10} \cdot \sqrt{\log 10}\right) \cdot \sqrt{\log 10}}}}\]
    9. Applied add-cbrt-cube53.4

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

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

      \[\leadsto \frac{1}{\sqrt{\log 10}} \cdot \sqrt[3]{\color{blue}{{\left(\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\sqrt{\log 10}}\right)}^{3}}}\]
    12. Taylor expanded around inf 8.2

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;re \le -6.070696817770049897362818226450973536409 \cdot 10^{119}:\\ \;\;\;\;\left(\log \left(\frac{-1}{re}\right) \cdot \sqrt{\frac{1}{\log 10}}\right) \cdot \frac{-1}{\sqrt{\log 10}}\\ \mathbf{elif}\;re \le 7.239744803523932456345417905652411262743 \cdot 10^{115}:\\ \;\;\;\;\frac{1}{\sqrt{\log 10}} \cdot \left(\frac{1}{\sqrt[3]{\log 10}} \cdot \frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\sqrt[3]{\sqrt{\log 10}}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\sqrt{\log 10}} \cdot \left(\log re \cdot \sqrt{\frac{1}{\log 10}}\right)\\ \end{array}\]

Reproduce

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