\frac{\left(x - y\right) \cdot \left(x + y\right)}{x \cdot x + y \cdot y}double f(double x, double y) {
double r1599890 = x;
double r1599891 = y;
double r1599892 = r1599890 - r1599891;
double r1599893 = r1599890 + r1599891;
double r1599894 = r1599892 * r1599893;
double r1599895 = r1599890 * r1599890;
double r1599896 = r1599891 * r1599891;
double r1599897 = r1599895 + r1599896;
double r1599898 = r1599894 / r1599897;
return r1599898;
}
Please include this information when filing a bug report:
herbie shell --seed 2019139 +o rules:numerics
(FPCore (x y)
:name "Kahan p9 Example"
:pre (and (< 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))))
| argmin: contract violation expected: (and/c list? (not/c empty?)) given: '() argument position: 2nd other arguments...: #<procedure:composed> | L | C | |
|---|---|---|---|
| argmin | /opt/racket-7.0/collects/racket/list.rkt | 765 | 0 |
| infer-splitpoints | /data/pavpan/nightlies/herbie/develop/src/core/regimes.rkt | 34 | 0 |
| get-final-combination | /data/pavpan/nightlies/herbie/develop/src/mainloop.rkt | 361 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |
| run | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |