\left(x.re \cdot x.re - x.im \cdot x.im\right) \cdot x.re - \left(x.re \cdot x.im + x.im \cdot x.re\right) \cdot x.im
double f(double x_re, double x_im) {
double r39229 = x_re;
double r39230 = r39229 * r39229;
double r39231 = x_im;
double r39232 = r39231 * r39231;
double r39233 = r39230 - r39232;
double r39234 = r39233 * r39229;
double r39235 = r39229 * r39231;
double r39236 = r39231 * r39229;
double r39237 = r39235 + r39236;
double r39238 = r39237 * r39231;
double r39239 = r39234 - r39238;
return r39239;
}
Please include this information when filing a bug report:
herbie shell --seed 2019310 +o rules:numerics
(FPCore (x.re x.im)
:name "math.cube on complex, real part"
:precision binary64
:herbie-target
(+ (* (* x.re x.re) (- x.re x.im)) (* (* x.re x.im) (- x.re (* 3 x.im))))
(- (* (- (* x.re x.re) (* x.im x.im)) x.re) (* (+ (* x.re x.im) (* x.im x.re)) x.im)))
| 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 |
| simplify | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 16 | 0 |
| hash-ref! | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 376 | 2 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 304 | 27 |
| (unnamed) | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 301 | 23 |
| hash-ref! | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 376 | 2 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 291 | 52 |
| (unnamed) | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 291 | 26 |
| hash-ref! | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 376 | 2 |
| (unnamed) | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 45 | 15 |
| hash-ref! | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 376 | 2 |
| (unnamed) | /opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt | 360 | 33 |
| (unnamed) | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 68 | 15 |
| hash-ref! | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 376 | 2 |
| loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 87 | 4 |
| 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 |