



Bits error versus a




Bits error versus b




Bits error versus c
| Original | 34.1 |
|---|---|
| Target | 20.9 |
| Herbie | 17.8 |
if (/ (* (* 4 (- c)) (/ 1 2)) (+ (sqrt (fma (- c) (* 4 a) (* b b))) b)) < -6.670411562750579e-19 or 1.1153022622116495e+178 < (/ (* (* 4 (- c)) (/ 1 2)) (+ (sqrt (fma (- c) (* 4 a) (* b b))) b)) Initial program 7.4
Applied simplify7.4
rmApplied add-sqr-sqrt7.4
Applied sqrt-prod7.7
Applied fma-neg7.5
if -6.670411562750579e-19 < (/ (* (* 4 (- c)) (/ 1 2)) (+ (sqrt (fma (- c) (* 4 a) (* b b))) b)) < -5.921110323430334e-261Initial program 28.0
Applied simplify28.0
rmApplied flip--28.6
Applied simplify12.0
rmApplied expm1-log1p-u12.0
Applied simplify2.9
if -5.921110323430334e-261 < (/ (* (* 4 (- c)) (/ 1 2)) (+ (sqrt (fma (- c) (* 4 a) (* b b))) b)) < 4.944749094820385e-292Initial program 58.5
Applied simplify58.5
rmApplied flip--59.1
Applied simplify46.7
Taylor expanded around 0 36.0
if 4.944749094820385e-292 < (/ (* (* 4 (- c)) (/ 1 2)) (+ (sqrt (fma (- c) (* 4 a) (* b b))) b)) < 1.1153022622116495e+178Initial program 24.7
Applied simplify24.7
rmApplied flip--25.3
Applied simplify10.0
rmApplied add-sqr-sqrt10.2
Applied simplify10.1
Applied simplify4.5
Time bar (total: 3.4m)Debug logProfile
herbie shell --seed '#(1072107073 2127697367 3936270018 2300570620 2134894798 4023771849)' +o rules:numerics
(FPCore (a b c)
:name "The quadratic formula (r1)"
:herbie-target
(if (< b 0) (/ (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ c (* a (/ (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)))))
(/ (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)))