\frac{\tan \left(\frac{x}{y \cdot 2}\right)}{\sin \left(\frac{x}{y \cdot 2}\right)}(FPCore (x y) :precision binary64 (/ (tan (/ x (* y 2.0))) (sin (/ x (* y 2.0)))))
double code(double x, double y) {
return (((double) tan((x / ((double) (y * 2.0))))) / ((double) sin((x / ((double) (y * 2.0))))));
}
Please include this information when filing a bug report:
herbie shell --seed 2020203
(FPCore (x y)
:name "Diagrams.TwoD.Layout.CirclePacking:approxRadius from diagrams-contrib-1.3.0.5"
:precision binary64
:herbie-target
(if (< y -1.2303690911306994e+114) 1.0 (if (< y -9.102852406811914e-222) (/ (sin (/ x (* y 2.0))) (* (sin (/ x (* y 2.0))) (log (exp (cos (/ x (* y 2.0))))))) 1.0))
(/ (tan (/ x (* y 2.0))) (sin (/ x (* y 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 "Diagrams.TwoD.Layout.CirclePacking:approxRadius from diagrams-contrib-1.3.0.5"
:precision binary64
:herbie-target
(if (< y -1.2303690911306994e+114) 1.0 (if (< y -9.102852406811914e-222) (/ (sin (/ x (* y 2.0))) (* (sin (/ x (* y 2.0))) (log (exp (cos (/ x (* y 2.0))))))) 1.0))
(/ (tan (/ x (* y 2.0))) (sin (/ x (* y 2.0)))))