\frac{\log \left(\sqrt{re \cdot re + im \cdot im}\right) \cdot \log base + \tan^{-1}_* \frac{im}{re} \cdot 0.0}{\log base \cdot \log base + 0.0 \cdot 0.0}double f(double re, double im, double base) {
double r51969 = re;
double r51970 = r51969 * r51969;
double r51971 = im;
double r51972 = r51971 * r51971;
double r51973 = r51970 + r51972;
double r51974 = sqrt(r51973);
double r51975 = log(r51974);
double r51976 = base;
double r51977 = log(r51976);
double r51978 = r51975 * r51977;
double r51979 = atan2(r51971, r51969);
double r51980 = 0.0;
double r51981 = r51979 * r51980;
double r51982 = r51978 + r51981;
double r51983 = r51977 * r51977;
double r51984 = r51980 * r51980;
double r51985 = r51983 + r51984;
double r51986 = r51982 / r51985;
return r51986;
}
Please include this information when filing a bug report:
herbie shell --seed 2019323 +o rules:numerics
(FPCore (re im base)
:name "math.log/2 on complex, real part"
:precision binary64
(/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0.0)) (+ (* (log base) (log base)) (* 0.0 0.0))))
| get-representation: Unknown representation real | L | C | |
|---|---|---|---|
| (unnamed) | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/regimes.rkt | 65 | 3 |
| filter | /opt/racket-7.2/collects/racket/private/list.rkt | 256 | 2 |
| infer-splitpoints | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/regimes.rkt | 34 | 0 |
| get-final-combination | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 369 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 261 | 28 |
| run | /opt/racket-7.2/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.2/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 261 | 28 |