


Bits error versus a



Bits error versus k



Bits error versus m
if k < 9.306854636214154e+115Initial program 0.1
rmApplied add-sqr-sqrt0.1
Applied associate-*r*0.1
rmApplied add-sqr-sqrt0.1
Applied associate-/r*0.1
Simplified0.1
rmApplied add-sqr-sqrt0.1
Applied rem-sqrt-square0.1
Simplified0.1
if 9.306854636214154e+115 < k Initial program 9.6
Taylor expanded around -inf 63.0
Simplified0.6
Final simplification0.2
herbie shell --seed 2018365 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))
Time bar (total: 54.3s)Debug log
1 alts after pruning (1 fresh and 0 done)
Merged error: 3.3b
Found 4 expressions with local error:
| 3.3b | (/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))) |
| 0.0b | (* a (pow k m)) |
| 0.0b | (+ (+ 1 (* 10 k)) (* k k)) |
| 0.0b | (+ 1 (* 10 k)) |
4 calls. Slowest were:
| 6.0ms | (/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))) |
| 3.0ms | (+ (+ 1 (* 10 k)) (* k k)) |
| 1.0ms | (* a (pow k m)) |
4 calls. Slowest were:
| 140.0ms | (/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))) |
| 77.0ms | (* a (pow k m)) |
| 22.0ms | (+ 1 (* 10 k)) |
| 13.0ms | (+ (+ 1 (* 10 k)) (* k k)) |
31 calls. Slowest were:
| 720.0ms | (+ (* (+ 1 (* 10 k)) (+ 1 (* 10 k))) (- (* (* k k) (* k k)) (* (+ 1 (* 10 k)) (* k k)))) |
| 602.0ms | (- (+ (* 99 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 4))) (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 2))) (* 10 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 3)))) |
| 357.0ms | (- (+ (* 99 (/ (* a (exp (* m (- (log -1) (log (/ -1 k)))))) (pow k 4))) (/ (* a (exp (* m (- (log -1) (log (/ -1 k)))))) (pow k 2))) (* 10 (/ (* a (exp (* m (- (log -1) (log (/ -1 k)))))) (pow k 3)))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0.1b
Found 4 expressions with local error:
| 3.3b | (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (+ (+ 1 (* 10 k)) (* k k))) |
| 0.0b | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 0.0b | (+ (+ 1 (* 10 k)) (* k k)) |
| 0.0b | (* a (sqrt (pow k m))) |
4 calls. Slowest were:
| 13.0ms | (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (+ (+ 1 (* 10 k)) (* k k))) |
| 6.0ms | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 3.0ms | (+ (+ 1 (* 10 k)) (* k k)) |
4 calls. Slowest were:
| 134.0ms | (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (+ (+ 1 (* 10 k)) (* k k))) |
| 83.0ms | (* a (sqrt (pow k m))) |
| 71.0ms | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 9.0ms | (+ (+ 1 (* 10 k)) (* k k)) |
46 calls. Slowest were:
| 758.0ms | (+ (* (+ 1 (* 10 k)) (+ 1 (* 10 k))) (- (* (* k k) (* k k)) (* (+ 1 (* 10 k)) (* k k)))) |
| 607.0ms | (- (+ (* 99 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 4))) (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 2))) (* 10 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (pow k 3)))) |
| 351.0ms | (* (* (* (* a (sqrt (pow k m))) (* a (sqrt (pow k m)))) (* a (sqrt (pow k m)))) (* (* (sqrt (pow k m)) (sqrt (pow k m))) (sqrt (pow k m)))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.1b
Found 4 expressions with local error:
| 17.2b | (sqrt (+ (+ 1 (* 10 k)) (* k k))) |
| 17.2b | (sqrt (fma k (+ 10 k) 1)) |
| 0.1b | (/ (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (sqrt (+ (+ 1 (* 10 k)) (* k k)))) (sqrt (fma k (+ 10 k) 1))) |
| 0.0b | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
4 calls. Slowest were:
| 30.0ms | (/ (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (sqrt (+ (+ 1 (* 10 k)) (* k k)))) (sqrt (fma k (+ 10 k) 1))) |
| 13.0ms | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 7.0ms | (sqrt (+ (+ 1 (* 10 k)) (* k k))) |
4 calls. Slowest were:
| 155.0ms | (/ (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (sqrt (+ (+ 1 (* 10 k)) (* k k)))) (sqrt (fma k (+ 10 k) 1))) |
| 65.0ms | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 16.0ms | (sqrt (+ (+ 1 (* 10 k)) (* k k))) |
| 16.0ms | (sqrt (fma k (+ 10 k) 1)) |
200 calls. Slowest were:
| 816.0ms | (/ (sqrt (+ (* (+ 1 (* 10 k)) (+ 1 (* 10 k))) (- (* (* k k) (* k k)) (* (+ 1 (* 10 k)) (* k k))))) (sqrt (fma k (+ 10 k) 1))) |
| 814.0ms | (/ (sqrt (+ (* (+ 1 (* 10 k)) (+ 1 (* 10 k))) (- (* (* k k) (* k k)) (* (+ 1 (* 10 k)) (* k k))))) (cbrt (sqrt (fma k (+ 10 k) 1)))) |
| 770.0ms | (/ (sqrt (+ (* (+ 1 (* 10 k)) (+ 1 (* 10 k))) (- (* (* k k) (* k k)) (* (+ 1 (* 10 k)) (* k k))))) (sqrt (sqrt (fma k (+ 10 k) 1)))) |
4 alts after pruning (4 fresh and 0 done)
Merged error: 0.1b
Found 4 expressions with local error:
| 17.2b | (sqrt (fma k (+ 10 k) 1)) |
| 17.2b | (sqrt (fma k (+ 10 k) 1)) |
| 0.1b | (/ (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (fabs (sqrt (fma k (+ 10 k) 1)))) (sqrt (fma k (+ 10 k) 1))) |
| 0.0b | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
4 calls. Slowest were:
| 12.0ms | (/ (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (fabs (sqrt (fma k (+ 10 k) 1)))) (sqrt (fma k (+ 10 k) 1))) |
| 6.0ms | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 2.0ms | (sqrt (fma k (+ 10 k) 1)) |
4 calls. Slowest were:
| 147.0ms | (/ (/ (* (* a (sqrt (pow k m))) (sqrt (pow k m))) (fabs (sqrt (fma k (+ 10 k) 1)))) (sqrt (fma k (+ 10 k) 1))) |
| 84.0ms | (* (* a (sqrt (pow k m))) (sqrt (pow k m))) |
| 24.0ms | (sqrt (fma k (+ 10 k) 1)) |
| 16.0ms | (sqrt (fma k (+ 10 k) 1)) |
132 calls. Slowest were:
| 603.0ms | (- (+ (* 37 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (* (fabs (sqrt (fma k (+ 10 k) 1))) (pow k 3)))) (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (* (fabs (sqrt (fma k (+ 10 k) 1))) k))) (* 5 (/ (* (exp (* -1 (* (log (/ 1 k)) m))) a) (* (fabs (sqrt (fma k (+ 10 k) 1))) (pow k 2))))) |
| 310.0ms | (* (* (* (* a (sqrt (pow k m))) (* a (sqrt (pow k m)))) (* a (sqrt (pow k m)))) (* (* (sqrt (pow k m)) (sqrt (pow k m))) (sqrt (pow k m)))) |
| 299.0ms | (- (+ (/ a (fabs (sqrt (fma k (+ 10 k) 1)))) (/ (* (log k) (* m a)) (fabs (sqrt (fma k (+ 10 k) 1))))) (* 5 (/ (* a k) (fabs (sqrt (fma k (+ 10 k) 1)))))) |
4 alts after pruning (3 fresh and 1 done)
Merged error: 0.1b
96.2% (0.1b remaining)
Error of 0.2b against oracle of 0.2b and baseline of 2.3b