\left(x.re \cdot x.re - x.im \cdot x.im\right) \cdot x.im + \left(x.re \cdot x.im + x.im \cdot x.re\right) \cdot x.re
double f(double x_re, double x_im) {
double r8928 = x_re;
double r8929 = r8928 * r8928;
double r8930 = x_im;
double r8931 = r8930 * r8930;
double r8932 = r8929 - r8931;
double r8933 = r8932 * r8930;
double r8934 = r8928 * r8930;
double r8935 = r8930 * r8928;
double r8936 = r8934 + r8935;
double r8937 = r8936 * r8928;
double r8938 = r8933 + r8937;
return r8938;
}
Please include this information when filing a bug report:
herbie shell --seed 2019191 +o rules:numerics
(FPCore (x.re x.im)
:name "math.cube on complex, imaginary part"
:herbie-target
(+ (* (* x.re x.im) (* 2.0 x.re)) (* (* x.im (- x.re x.im)) (+ x.re x.im)))
(+ (* (- (* x.re x.re) (* x.im x.im)) x.im) (* (+ (* x.re x.im) (* x.im x.re)) x.re)))
| get-representation: Unknown representation #f | L | C | |
|---|---|---|---|
| loop | /data/pavpan/nightlies/herbie/interface2/src/points.rkt | 122 | 4 |
| prepare-points | /data/pavpan/nightlies/herbie/interface2/src/points.rkt | 146 | 0 |
| setup-prog!34 | /data/pavpan/nightlies/herbie/interface2/src/mainloop.rkt | 67 | 0 |
| run-improve43 | /data/pavpan/nightlies/herbie/interface2/src/mainloop.rkt | 339 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |
| run | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |