Average Error: 30.7 → 0.3
Time: 23.6s
Precision: 64
\[\frac{\tan^{-1}_* \frac{im}{re} \cdot \log base - \log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot 0}{\log base \cdot \log base + 0 \cdot 0}\]
\[\frac{\tan^{-1}_* \frac{im}{re}}{\log base}\]
\frac{\tan^{-1}_* \frac{im}{re} \cdot \log base - \log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot 0}{\log base \cdot \log base + 0 \cdot 0}
\frac{\tan^{-1}_* \frac{im}{re}}{\log base}
double f(double re, double im, double base) {
        double r1979377 = im;
        double r1979378 = re;
        double r1979379 = atan2(r1979377, r1979378);
        double r1979380 = base;
        double r1979381 = log(r1979380);
        double r1979382 = r1979379 * r1979381;
        double r1979383 = r1979378 * r1979378;
        double r1979384 = r1979377 * r1979377;
        double r1979385 = r1979383 + r1979384;
        double r1979386 = sqrt(r1979385);
        double r1979387 = log(r1979386);
        double r1979388 = 0.0;
        double r1979389 = r1979387 * r1979388;
        double r1979390 = r1979382 - r1979389;
        double r1979391 = r1979381 * r1979381;
        double r1979392 = r1979388 * r1979388;
        double r1979393 = r1979391 + r1979392;
        double r1979394 = r1979390 / r1979393;
        return r1979394;
}

double f(double re, double im, double base) {
        double r1979395 = im;
        double r1979396 = re;
        double r1979397 = atan2(r1979395, r1979396);
        double r1979398 = base;
        double r1979399 = log(r1979398);
        double r1979400 = r1979397 / r1979399;
        return r1979400;
}

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 30.7

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

    \[\leadsto \color{blue}{\frac{\tan^{-1}_* \frac{im}{re}}{\log base}}\]
  3. Final simplification0.3

    \[\leadsto \frac{\tan^{-1}_* \frac{im}{re}}{\log base}\]

Reproduce

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