


Bits error versus x



Bits error versus n
Results
if (/ 1 n) < -8.938998699431754e-05Initial program 0.3
rmApplied add-log-exp0.4
Applied add-log-exp0.4
Applied diff-log0.4
Simplified0.4
rmApplied add-sqr-sqrt0.4
Applied log-prod0.4
rmApplied exp-diff0.4
Applied sqrt-div0.4
Applied log-div0.4
rmApplied add-cube-cbrt0.4
Applied log-prod0.4
if -8.938998699431754e-05 < (/ 1 n) < 1.0591236119246845e-05Initial program 44.2
Taylor expanded around inf 32.6
Simplified32.5
if 1.0591236119246845e-05 < (/ 1 n) Initial program 24.2
rmApplied add-log-exp24.2
Applied add-log-exp24.2
Applied diff-log24.2
Simplified24.2
rmApplied add-sqr-sqrt24.2
Applied log-prod24.2
rmApplied exp-diff24.2
Applied sqrt-div24.2
Applied log-div24.2
rmApplied add-sqr-sqrt24.3
Applied log-prod24.2
Applied associate--r+24.3
Final simplification22.3
herbie shell --seed 2019007
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))
Time bar (total: 28.3s)Debug log
1 calls. Slowest were:
| 5.0ms | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 30.0b
Found 3 expressions with local error:
| 1.5b | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
| 1.0b | (pow (+ x 1) (/ 1 n)) |
| 0.3b | (pow x (/ 1 n)) |
3 calls. Slowest were:
| 14.0ms | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
| 1.0ms | (pow (+ x 1) (/ 1 n)) |
| 1.0ms | (pow x (/ 1 n)) |
3 calls. Slowest were:
| 197.0ms | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
| 79.0ms | (pow (+ x 1) (/ 1 n)) |
| 72.0ms | (pow x (/ 1 n)) |
28 calls. Slowest were:
| 598.0ms | (- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n)) |
| 326.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 269.0ms | (- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n))))) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 20.4b
Found 4 expressions with local error:
| 1.5b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.5b | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 1.0b | (pow (+ 1 x) (/ 1 n)) |
| 0.3b | (pow x (/ 1 n)) |
4 calls. Slowest were:
| 35.0ms | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 17.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 3.0ms | (pow (+ 1 x) (/ 1 n)) |
4 calls. Slowest were:
| 223.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 183.0ms | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 83.0ms | (pow x (/ 1 n)) |
| 79.0ms | (pow (+ 1 x) (/ 1 n)) |
44 calls. Slowest were:
| 513.0ms | (- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n)) |
| 245.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 235.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 20.4b
Found 4 expressions with local error:
| 1.5b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.5b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.5b | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
| 1.5b | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
4 calls. Slowest were:
| 15.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 8.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 7.0ms | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
4 calls. Slowest were:
| 320.0ms | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
| 275.0ms | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
| 218.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 174.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
44 calls. Slowest were:
| 355.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 334.0ms | (- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n))))) |
| 312.0ms | (- (+ (* 1/2 (/ (log -1) (* x (pow n 2)))) (* 1/2 (/ 1 (* x n)))) (+ (* 1/4 (/ 1 (* (pow x 2) n))) (* 1/2 (/ (log (/ -1 x)) (* x (pow n 2)))))) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 20.3b
Found 4 expressions with local error:
| 1.5b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.5b | (- (log (sqrt (exp (pow (+ 1 x) (/ 1 n))))) (log (sqrt (exp (pow x (/ 1 n)))))) |
| 1.5b | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
| 1.0b | (pow (+ 1 x) (/ 1 n)) |
4 calls. Slowest were:
| 10.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 9.0ms | (- (log (sqrt (exp (pow (+ 1 x) (/ 1 n))))) (log (sqrt (exp (pow x (/ 1 n)))))) |
| 7.0ms | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
4 calls. Slowest were:
| 392.0ms | (- (log (sqrt (exp (pow (+ 1 x) (/ 1 n))))) (log (sqrt (exp (pow x (/ 1 n)))))) |
| 320.0ms | (log (sqrt (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))))) |
| 188.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 60.0ms | (pow (+ 1 x) (/ 1 n)) |
57 calls. Slowest were:
| 556.0ms | (- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n)) |
| 331.0ms | (- (+ (* 1/2 (/ (log -1) (* x (pow n 2)))) (* 1/2 (/ 1 (* x n)))) (+ (* 1/4 (/ 1 (* (pow x 2) n))) (* 1/2 (/ (log (/ -1 x)) (* x (pow n 2)))))) |
| 279.0ms | (- (+ (* 1/2 (/ (log -1) (* x (pow n 2)))) (* 1/2 (/ 1 (* x n)))) (+ (* 1/4 (/ 1 (* (pow x 2) n))) (* 1/2 (/ (log (/ -1 x)) (* x (pow n 2)))))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 20.1b
83.1% (1.4b remaining)
Error of 22.3b against oracle of 20.9b and baseline of 29.3b