x + \frac{y - x}{2}(FPCore (x y) :precision binary64 (+ x (/ (- y x) 2.0)))
double code(double x, double y) {
return ((double) (x + (((double) (y - x)) / 2.0)));
}
Please include this information when filing a bug report:
herbie shell --seed 2020203
(FPCore (x y)
:name "Numeric.Interval.Internal:bisect from intervals-0.7.1, A"
:precision binary64
:herbie-target
(* 0.5 (+ x y))
(+ x (/ (- y x) 2.0)))
| 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 "Numeric.Interval.Internal:bisect from intervals-0.7.1, A"
:precision binary64
:herbie-target
(* 0.5 (+ x y))
(+ x (/ (- y x) 2.0)))