


Bits error versus a



Bits error versus b



Bits error versus c
Results
if (if (>= b 0) (/ (/ (* c (* a 4)) (- (sqrt (- (* b b) (* (* 4 c) a))) b)) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))) < -3.537802341368214e-246 or 3.624347587788428e-216 < (if (>= b 0) (/ (/ (* c (* a 4)) (- (sqrt (- (* b b) (* (* 4 c) a))) b)) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))) < 1.957585607018184e+284Initial program 1.8
rmApplied add-sqr-sqrt1.8
Applied sqrt-prod2.0
if -3.537802341368214e-246 < (if (>= b 0) (/ (/ (* c (* a 4)) (- (sqrt (- (* b b) (* (* 4 c) a))) b)) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))) < 3.624347587788428e-216 or 1.957585607018184e+284 < (if (>= b 0) (/ (/ (* c (* a 4)) (- (sqrt (- (* b b) (* (* 4 c) a))) b)) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))) Initial program 35.3
Taylor expanded around -inf 25.6
Applied simplify23.8
Taylor expanded around inf 13.4
Applied simplify11.5
Time bar (total: 1.6m)Debug logProfile
herbie shell --seed 2018198
(FPCore (a b c)
:name "jeff quadratic root 1"
(if (>= b 0) (/ (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))))