\[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
Test:
math.log10 on complex, real part
Bits:
128 bits
Bits error versus re
Bits error versus im
Time: 8.7 s
Input Error: 14.7
Output Error: 14.8
Log:
Profile: 🕒
\(\frac{3}{1} \cdot \frac{\log \left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}{\log 10}\)
  1. Started with
    \[\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}\]
    14.7
  2. Applied simplify to get
    \[\color{red}{\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right)}{\log 10}} \leadsto \color{blue}{\frac{\log \left(\sqrt{{re}^2 + im \cdot im}\right)}{\log 10}}\]
    14.7
  3. Using strategy rm
    14.7
  4. Applied add-cube-cbrt to get
    \[\frac{\log \color{red}{\left(\sqrt{{re}^2 + im \cdot im}\right)}}{\log 10} \leadsto \frac{\log \color{blue}{\left({\left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}^3\right)}}{\log 10}\]
    14.8
  5. Using strategy rm
    14.8
  6. Applied *-un-lft-identity to get
    \[\frac{\log \left({\left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}^3\right)}{\color{red}{\log 10}} \leadsto \frac{\log \left({\left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}^3\right)}{\color{blue}{1 \cdot \log 10}}\]
    14.8
  7. Applied pow3 to get
    \[\frac{\log \color{red}{\left({\left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}^3\right)}}{1 \cdot \log 10} \leadsto \frac{\log \color{blue}{\left({\left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}^{3}\right)}}{1 \cdot \log 10}\]
    14.8
  8. Applied log-pow to get
    \[\frac{\color{red}{\log \left({\left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}^{3}\right)}}{1 \cdot \log 10} \leadsto \frac{\color{blue}{3 \cdot \log \left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}}{1 \cdot \log 10}\]
    14.8
  9. Applied times-frac to get
    \[\color{red}{\frac{3 \cdot \log \left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}{1 \cdot \log 10}} \leadsto \color{blue}{\frac{3}{1} \cdot \frac{\log \left(\sqrt[3]{\sqrt{{re}^2 + im \cdot im}}\right)}{\log 10}}\]
    14.8

Original test:


(lambda ((re default) (im default))
  #:name "math.log10 on complex, real part"
  (/ (log (sqrt (+ (* re re) (* im im)))) (log 10)))