


Bits error versus a



Bits error versus b_2



Bits error versus c
if b_2 < -5.919576201611295e+146Initial program 57.6
Initial simplification57.6
Taylor expanded around -inf 2.2
Simplified2.2
if -5.919576201611295e+146 < b_2 < -1.347277676039659e-308Initial program 8.3
Initial simplification8.3
rmApplied div-sub8.3
if -1.347277676039659e-308 < b_2 < 4.331216038455128e+110Initial program 33.8
Initial simplification33.8
rmApplied flip--33.9
Applied associate-/l/38.2
Simplified21.4
rmApplied distribute-frac-neg21.4
Simplified8.9
if 4.331216038455128e+110 < b_2 Initial program 59.2
Initial simplification59.2
Taylor expanded around inf 1.8
Final simplification6.3
herbie shell --seed 2018360 +o rules:numerics
(FPCore (a b_2 c)
:name "quad2p (problem 3.2.1, positive)"
(/ (+ (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))
Time bar (total: 19.2s)Debug log
1 alts after pruning (1 fresh and 0 done)
Merged error: 34.7b
Found 4 expressions with local error:
| 22.5b | (sqrt (- (* b_2 b_2) (* a c))) |
| 1.0b | (- (sqrt (- (* b_2 b_2) (* a c))) b_2) |
| 0.4b | (- (* b_2 b_2) (* a c)) |
| 0.1b | (/ (- (sqrt (- (* b_2 b_2) (* a c))) b_2) a) |
4 calls. Slowest were:
| 22.0ms | (/ (- (sqrt (- (* b_2 b_2) (* a c))) b_2) a) |
| 12.0ms | (- (sqrt (- (* b_2 b_2) (* a c))) b_2) |
| 5.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
4 calls. Slowest were:
| 66.0ms | (/ (- (sqrt (- (* b_2 b_2) (* a c))) b_2) a) |
| 55.0ms | (- (sqrt (- (* b_2 b_2) (* a c))) b_2) |
| 53.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
| 26.0ms | (- (* b_2 b_2) (* a c)) |
31 calls. Slowest were:
| 441.0ms | (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c)))) |
| 344.0ms | (sqrt (- (pow (* b_2 b_2) 3) (pow (* a c) 3))) |
| 235.0ms | (- (* (sqrt (- (* b_2 b_2) (* a c))) (sqrt (- (* b_2 b_2) (* a c)))) (* b_2 b_2)) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 4.8b
Found 4 expressions with local error:
| 22.5b | (sqrt (- (* b_2 b_2) (* a c))) |
| 13.3b | (/ (- (* a c)) (* a (+ (sqrt (- (* b_2 b_2) (* a c))) b_2))) |
| 0.8b | (+ (sqrt (- (* b_2 b_2) (* a c))) b_2) |
| 0.4b | (- (* b_2 b_2) (* a c)) |
4 calls. Slowest were:
| 21.0ms | (+ (sqrt (- (* b_2 b_2) (* a c))) b_2) |
| 17.0ms | (/ (- (* a c)) (* a (+ (sqrt (- (* b_2 b_2) (* a c))) b_2))) |
| 6.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
4 calls. Slowest were:
| 131.0ms | (/ (- (* a c)) (* a (+ (sqrt (- (* b_2 b_2) (* a c))) b_2))) |
| 59.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
| 53.0ms | (+ (sqrt (- (* b_2 b_2) (* a c))) b_2) |
| 21.0ms | (- (* b_2 b_2) (* a c)) |
48 calls. Slowest were:
| 646.0ms | (sqrt (- (pow (* b_2 b_2) 3) (pow (* a c) 3))) |
| 621.0ms | (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c)))) |
| 583.0ms | (/ (* (* (- (* a c)) (- (* a c))) (- (* a c))) (* (* (* a (+ (sqrt (- (* b_2 b_2) (* a c))) b_2)) (* a (+ (sqrt (- (* b_2 b_2) (* a c))) b_2))) (* a (+ (sqrt (- (* b_2 b_2) (* a c))) b_2)))) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 4.7b
Found 4 expressions with local error:
| 22.5b | (sqrt (- (* b_2 b_2) (* a c))) |
| 0.8b | (+ b_2 (sqrt (- (* b_2 b_2) (* a c)))) |
| 0.4b | (- (* b_2 b_2) (* a c)) |
| 0.1b | (/ c (+ b_2 (sqrt (- (* b_2 b_2) (* a c))))) |
4 calls. Slowest were:
| 3.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
| 2.0ms | (- (* b_2 b_2) (* a c)) |
| 1.0ms | (+ b_2 (sqrt (- (* b_2 b_2) (* a c)))) |
4 calls. Slowest were:
| 110.0ms | (/ c (+ b_2 (sqrt (- (* b_2 b_2) (* a c))))) |
| 46.0ms | (+ b_2 (sqrt (- (* b_2 b_2) (* a c)))) |
| 46.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
| 25.0ms | (- (* b_2 b_2) (* a c)) |
26 calls. Slowest were:
| 465.0ms | (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c)))) |
| 310.0ms | (sqrt (- (pow (* b_2 b_2) 3) (pow (* a c) 3))) |
| 227.0ms | (+ (* b_2 b_2) (- (* (sqrt (- (* b_2 b_2) (* a c))) (sqrt (- (* b_2 b_2) (* a c)))) (* b_2 (sqrt (- (* b_2 b_2) (* a c)))))) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 4.7b
Found 4 expressions with local error:
| 22.5b | (sqrt (- (* b_2 b_2) (* a c))) |
| 22.5b | (sqrt (- (* b_2 b_2) (* a c))) |
| 8.6b | (+ b_2 (* (sqrt (sqrt (- (* b_2 b_2) (* a c)))) (sqrt (sqrt (- (* b_2 b_2) (* a c)))))) |
| 0.5b | (* (sqrt (sqrt (- (* b_2 b_2) (* a c)))) (sqrt (sqrt (- (* b_2 b_2) (* a c))))) |
4 calls. Slowest were:
| 13.0ms | (* (sqrt (sqrt (- (* b_2 b_2) (* a c)))) (sqrt (sqrt (- (* b_2 b_2) (* a c))))) |
| 6.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
| 5.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
4 calls. Slowest were:
| 58.0ms | (+ b_2 (* (sqrt (sqrt (- (* b_2 b_2) (* a c)))) (sqrt (sqrt (- (* b_2 b_2) (* a c)))))) |
| 50.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
| 43.0ms | (* (sqrt (sqrt (- (* b_2 b_2) (* a c)))) (sqrt (sqrt (- (* b_2 b_2) (* a c))))) |
| 36.0ms | (sqrt (- (* b_2 b_2) (* a c))) |
64 calls. Slowest were:
| 564.0ms | (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c)))) |
| 519.0ms | (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c)))) |
| 513.0ms | (* (sqrt (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c))))) (sqrt (sqrt (- (* (* b_2 b_2) (* b_2 b_2)) (* (* a c) (* a c)))))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 4.7b
96.6% (0.8b remaining)
Error of 6.3b against oracle of 5.4b and baseline of 29.7b