\begin{array}{l}
\mathbf{if}\;b \ge 0.0:\\
\;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\
\mathbf{else}:\\
\;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\
\end{array}double f(double a, double b, double c) {
double r8375 = b;
double r8376 = 0.0;
bool r8377 = r8375 >= r8376;
double r8378 = -r8375;
double r8379 = r8375 * r8375;
double r8380 = 4.0;
double r8381 = a;
double r8382 = r8380 * r8381;
double r8383 = c;
double r8384 = r8382 * r8383;
double r8385 = r8379 - r8384;
double r8386 = sqrt(r8385);
double r8387 = r8378 - r8386;
double r8388 = 2.0;
double r8389 = r8388 * r8381;
double r8390 = r8387 / r8389;
double r8391 = r8388 * r8383;
double r8392 = r8378 + r8386;
double r8393 = r8391 / r8392;
double r8394 = r8377 ? r8390 : r8393;
return r8394;
}
Please include this information when filing a bug report:
herbie shell --seed 2019305
(FPCore (a b c)
:name "jeff quadratic root 1"
:precision binary64
(if (>= b 0.0) (/ (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))))
| exact?: contract violation expected: number? given: 'h2 | 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 |
| (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 |