\frac{\left(x - y\right) \cdot \left(x + y\right)}{x \cdot x + y \cdot y}double f(double x, double y) {
double r8479 = x;
double r8480 = y;
double r8481 = r8479 - r8480;
double r8482 = r8479 + r8480;
double r8483 = r8481 * r8482;
double r8484 = r8479 * r8479;
double r8485 = r8480 * r8480;
double r8486 = r8484 + r8485;
double r8487 = r8483 / r8486;
return r8487;
}
Please include this information when filing a bug report:
herbie shell --seed 2019305
(FPCore (x y)
:name "Kahan p9 Example"
:precision binary64
:pre (and (< 0.0 x 1) (< y 1))
:herbie-target
(if (< 0.5 (fabs (/ x y)) 2) (/ (* (- x y) (+ x y)) (+ (* x x) (* y y))) (- 1 (/ 2 (+ 1 (* (/ x y) (/ x y))))))
(/ (* (- x y) (+ x y)) (+ (* x x) (* y y))))
| exact?: contract violation expected: number? given: 'h1 | L | C | |
|---|---|---|---|
| egg-parsed->expr | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 65 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 70 | 6 |
| egg-parsed->expr | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 65 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 70 | 6 |
| egg-parsed->expr | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 65 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 70 | 6 |
| egg-parsed->expr | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 65 | 0 |
| (unnamed) | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/simplify.rkt | 49 | 8 |
| egraph-add-exprs | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 122 | 0 |
| egraph-run | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt | 55 | 0 |
| (unnamed) | /data/pavpan/nightlies/herbie/eggmath-testversion/src/core/simplify.rkt | 38 | 0 |
| simplify! | /data/pavpan/nightlies/herbie/eggmath-testversion/src/mainloop.rkt | 223 | 0 |
| run-improve47 | /data/pavpan/nightlies/herbie/eggmath-testversion/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 |