Average Error: 31.9 → 0.4
Time: 5.9s
Precision: 64
\[\frac{\tan^{-1}_* \frac{im}{re} \cdot \log base - \log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot 0.0}{\log base \cdot \log base + 0.0 \cdot 0.0}\]
\[-\frac{\frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\sqrt[3]{base}\right)}}{\left(-2\right) + -1}\]
\frac{\tan^{-1}_* \frac{im}{re} \cdot \log base - \log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot 0.0}{\log base \cdot \log base + 0.0 \cdot 0.0}
-\frac{\frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\sqrt[3]{base}\right)}}{\left(-2\right) + -1}
double f(double re, double im, double base) {
        double r39808 = im;
        double r39809 = re;
        double r39810 = atan2(r39808, r39809);
        double r39811 = base;
        double r39812 = log(r39811);
        double r39813 = r39810 * r39812;
        double r39814 = r39809 * r39809;
        double r39815 = r39808 * r39808;
        double r39816 = r39814 + r39815;
        double r39817 = sqrt(r39816);
        double r39818 = log(r39817);
        double r39819 = 0.0;
        double r39820 = r39818 * r39819;
        double r39821 = r39813 - r39820;
        double r39822 = r39812 * r39812;
        double r39823 = r39819 * r39819;
        double r39824 = r39822 + r39823;
        double r39825 = r39821 / r39824;
        return r39825;
}

double f(double re, double im, double base) {
        double r39826 = im;
        double r39827 = re;
        double r39828 = atan2(r39826, r39827);
        double r39829 = base;
        double r39830 = cbrt(r39829);
        double r39831 = log(r39830);
        double r39832 = r39828 / r39831;
        double r39833 = 2.0;
        double r39834 = -r39833;
        double r39835 = -1.0;
        double r39836 = r39834 + r39835;
        double r39837 = r39832 / r39836;
        double r39838 = -r39837;
        return r39838;
}

Error

Bits error versus re

Bits error versus im

Bits error versus base

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 31.9

    \[\frac{\tan^{-1}_* \frac{im}{re} \cdot \log base - \log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot 0.0}{\log base \cdot \log base + 0.0 \cdot 0.0}\]
  2. Taylor expanded around inf 0.3

    \[\leadsto \color{blue}{-1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\frac{1}{base}\right)}}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt0.3

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\frac{1}{\color{blue}{\left(\sqrt[3]{base} \cdot \sqrt[3]{base}\right) \cdot \sqrt[3]{base}}}\right)}\]
  5. Applied add-cube-cbrt0.3

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\frac{\color{blue}{\left(\sqrt[3]{1} \cdot \sqrt[3]{1}\right) \cdot \sqrt[3]{1}}}{\left(\sqrt[3]{base} \cdot \sqrt[3]{base}\right) \cdot \sqrt[3]{base}}\right)}\]
  6. Applied times-frac0.3

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\log \color{blue}{\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt[3]{base} \cdot \sqrt[3]{base}} \cdot \frac{\sqrt[3]{1}}{\sqrt[3]{base}}\right)}}\]
  7. Applied log-prod0.4

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\color{blue}{\log \left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt[3]{base} \cdot \sqrt[3]{base}}\right) + \log \left(\frac{\sqrt[3]{1}}{\sqrt[3]{base}}\right)}}\]
  8. Simplified0.4

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\color{blue}{\left(-2\right) \cdot \log \left(\sqrt[3]{base}\right)} + \log \left(\frac{\sqrt[3]{1}}{\sqrt[3]{base}}\right)}\]
  9. Simplified0.4

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\left(-2\right) \cdot \log \left(\sqrt[3]{base}\right) + \color{blue}{\log \left(\frac{1}{\sqrt[3]{base}}\right)}}\]
  10. Using strategy rm
  11. Applied inv-pow0.4

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\left(-2\right) \cdot \log \left(\sqrt[3]{base}\right) + \log \color{blue}{\left({\left(\sqrt[3]{base}\right)}^{-1}\right)}}\]
  12. Applied log-pow0.4

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\left(-2\right) \cdot \log \left(\sqrt[3]{base}\right) + \color{blue}{-1 \cdot \log \left(\sqrt[3]{base}\right)}}\]
  13. Applied distribute-rgt-out0.4

    \[\leadsto -1 \cdot \frac{\tan^{-1}_* \frac{im}{re}}{\color{blue}{\log \left(\sqrt[3]{base}\right) \cdot \left(\left(-2\right) + -1\right)}}\]
  14. Applied associate-/r*0.4

    \[\leadsto -1 \cdot \color{blue}{\frac{\frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\sqrt[3]{base}\right)}}{\left(-2\right) + -1}}\]
  15. Using strategy rm
  16. Applied *-un-lft-identity0.4

    \[\leadsto -1 \cdot \color{blue}{\left(1 \cdot \frac{\frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\sqrt[3]{base}\right)}}{\left(-2\right) + -1}\right)}\]
  17. Final simplification0.4

    \[\leadsto -\frac{\frac{\tan^{-1}_* \frac{im}{re}}{\log \left(\sqrt[3]{base}\right)}}{\left(-2\right) + -1}\]

Reproduce

herbie shell --seed 2020024 
(FPCore (re im base)
  :name "math.log/2 on complex, imaginary part"
  :precision binary64
  (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0.0)) (+ (* (log base) (log base)) (* 0.0 0.0))))