\sqrt{x \cdot x + y \cdot y}(FPCore (x y) :precision binary64 (sqrt (+ (* x x) (* y y))))
double code(double x, double y) {
return ((double) sqrt(((double) (((double) (x * x)) + ((double) (y * y))))));
}
Please include this information when filing a bug report:
herbie shell --seed 2020203
(FPCore (x y)
:name "Data.Octree.Internal:octantDistance from Octree-0.5.4.2"
:precision binary64
:herbie-target
(if (< x -1.1236950826599826e+145) (- x) (if (< x 1.116557621183362e+93) (sqrt (+ (* x x) (* y y))) x))
(sqrt (+ (* x x) (* y y))))
| first: contract violation expected: (and/c list? (not/c empty?)) given: '() | L | C | |
|---|---|---|---|
| batch-eval-progs | /data/pavpan/nightlies/herbie/cleanup/src/programs.rkt | 107 | 0 |
| batch-errors | /data/pavpan/nightlies/herbie/cleanup/src/points.rkt | 169 | 0 |
| atab-add-altns | /data/pavpan/nightlies/herbie/cleanup/src/core/alt-table.rkt | 194 | 0 |
| (unnamed) | /opt/racket-7.5/collects/racket/contract/private/arrow-val-first.rkt | 486 | 18 |
| finalize-iter! | /data/pavpan/nightlies/herbie/cleanup/src/mainloop.rkt | 273 | 0 |
| run-iter! | /data/pavpan/nightlies/herbie/cleanup/src/mainloop.rkt | 341 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/cleanup/src/mainloop.rkt | 379 | 4 |
| run-improve41 | /data/pavpan/nightlies/herbie/cleanup/src/mainloop.rkt | 360 | 0 |
| .../more-scheme.rkt:261:28 | unknown | ||
| run | /opt/racket-7.5/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.5/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.5/collects/racket/private/more-scheme.rkt | 261 | 28 |
herbie shell --seed 2020203
(FPCore (x y)
:name "Data.Octree.Internal:octantDistance from Octree-0.5.4.2"
:precision binary64
:herbie-target
(if (< x -1.1236950826599826e+145) (- x) (if (< x 1.116557621183362e+93) (sqrt (+ (* x x) (* y y))) x))
(sqrt (+ (* x x) (* y y))))