\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 r28802 = x_re;
double r28803 = r28802 * r28802;
double r28804 = x_im;
double r28805 = r28804 * r28804;
double r28806 = r28803 - r28805;
double r28807 = r28806 * r28804;
double r28808 = r28802 * r28804;
double r28809 = r28804 * r28802;
double r28810 = r28808 + r28809;
double r28811 = r28810 * r28802;
double r28812 = r28807 + r28811;
return r28812;
}
Please include this information when filing a bug report:
herbie shell --seed 2019315 +o rules:numerics
(FPCore (x.re x.im)
:name "math.cube on complex, imaginary part"
:precision binary64
:herbie-target
(+ (* (* x.re x.im) (* 2 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)))
| match: no matching clause for 'binary64 | L | C | |
|---|---|---|---|
| match:error | /opt/racket-7.2/collects/racket/match/runtime.rkt | 24 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 246 | 3 |
| make-multiplication-subnode | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 244 | 0 |
| make-multiplication-node | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 234 | 0 |
| parse-loop373 | /opt/racket-7.2/collects/racket/match/compiler.rkt | 418 | 15 |
| gather-additive-terms6 | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 70 | 0 |
| simplify-node | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 48 | 0 |
| parse-loop54 | /opt/racket-7.2/collects/racket/match/compiler.rkt | 418 | 15 |
| simplify | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 16 | 0 |
| approximate9 | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 12 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt | 360 | 33 |
| location-do | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/programs.rkt | 64 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt | 360 | 33 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 151 | 6 |
| taylor-alt | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 145 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 166 | 7 |
| gen-series! | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 159 | 0 |
| run-iter! | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 326 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 364 | 4 |
| run-improve47 | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 345 | 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 |