


Bits error versus x



Bits error versus n
Results
if n < -964894.1011799229 or 7.586550074092197 < n Initial program 44.5
rmApplied add-log-exp44.5
Applied add-log-exp44.5
Applied diff-log44.5
Simplified44.5
Taylor expanded around inf 32.7
Simplified32.7
if -964894.1011799229 < n < 7.586550074092197Initial program 7.7
rmApplied add-log-exp7.9
Applied add-log-exp7.8
Applied diff-log7.8
Simplified7.8
rmApplied add-cube-cbrt7.8
Applied exp-prod7.8
Applied log-pow7.8
rmApplied add-log-exp7.8
rmApplied add-sqr-sqrt7.8
Applied log-prod7.8
Final simplification22.2
herbie shell --seed 2019022
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))
Time bar (total: 26.6s)Debug log
| 96.0ms | 93× | body | 1280 | valid |
| 50.0ms | 28× | body | 640 | nan |
| 46.0ms | 54× | body | 640 | valid |
| 34.0ms | 41× | body | 10240 | exit |
| 22.0ms | 146× | body | 80 | valid |
| 16.0ms | 14× | body | 1280 | nan |
| 16.0ms | 134× | body | 80 | nan |
| 15.0ms | 26× | body | 320 | valid |
| 7.0ms | 14× | body | 160 | valid |
| 7.0ms | 13× | body | 320 | nan |
| 2.0ms | 5× | body | 160 | nan |
| 6.0ms | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 32.4b
Found 3 expressions with local error:
| 2.4b | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
| 1.0b | (pow x (/ 1 n)) |
| 0.8b | (pow (+ x 1) (/ 1 n)) |
| 10× | add-sqr-sqrt |
| 8× | *-un-lft-identity |
| 8× | pow-unpow |
| 6× | add-cube-cbrt |
| 5× | add-log-exp |
| 4× | add-exp-log |
| 4× | unpow-prod-down |
| 4× | pow1 |
| 3× | add-cbrt-cube |
| 2× | difference-of-squares |
| 2× | div-inv |
| 2× | pow-to-exp |
| 1× | distribute-lft-out-- |
| 1× | flip-- |
| 1× | pow-exp |
| 1× | diff-log |
| 1× | flip3-- |
| 1× | pow-pow |
| 1× | sub-neg |
| 14.0ms | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
| 3.0ms | (pow (+ x 1) (/ 1 n)) |
| 1.0ms | (pow x (/ 1 n)) |
| 215.0ms | (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) |
| 81.0ms | (pow (+ x 1) (/ 1 n)) |
| 51.0ms | (pow x (/ 1 n)) |
| 504.0ms | (- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n)) |
| 260.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 246.0ms | (- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n))))) |
| 199.0ms | (- (+ (* 1/2 (/ (pow (log (/ 1 x)) 2) (pow n 2))) 1) (/ (log (/ 1 x)) n)) |
| 61.0ms | (- (+ (/ (log -1) n) (+ (* 1/2 (/ (pow (log -1) 2) (pow n 2))) (+ (* 1/2 (/ (pow (log (/ -1 x)) 2) (pow n 2))) 1))) (+ (/ (log (/ -1 x)) n) (/ (* (log (/ -1 x)) (log -1)) (pow n 2)))) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 22.2b
Found 4 expressions with local error:
| 2.4b | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.0b | (pow x (/ 1 n)) |
| 0.8b | (pow (+ 1 x) (/ 1 n)) |
| 17× | add-sqr-sqrt |
| 13× | *-un-lft-identity |
| 9× | add-cube-cbrt |
| 8× | pow-unpow |
| 7× | log-pow |
| 6× | add-log-exp |
| 6× | exp-prod |
| 6× | pow1 |
| 5× | add-exp-log |
| 5× | unpow-prod-down |
| 5× | log-prod |
| 4× | difference-of-squares |
| 4× | add-cbrt-cube |
| 2× | distribute-lft-out-- |
| 2× | div-inv |
| 2× | exp-sum |
| 2× | sub-neg |
| 2× | pow-to-exp |
| 1× | flip-- |
| 1× | pow-exp |
| 1× | rem-log-exp |
| 1× | diff-log |
| 1× | exp-diff |
| 1× | flip3-- |
| 1× | pow-pow |
| 1× | log-div |
| 17.0ms | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 8.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.0ms | (pow (+ 1 x) (/ 1 n)) |
| 1.0ms | (pow x (/ 1 n)) |
| 204.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 193.0ms | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 71.0ms | (pow (+ 1 x) (/ 1 n)) |
| 63.0ms | (pow x (/ 1 n)) |
| 552.0ms | (- (+ (/ (log -1) n) (+ 1 (/ 1 (* x n)))) (/ (log (/ -1 x)) n)) |
| 308.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 304.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 271.0ms | (- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n))))) |
| 224.0ms | (- (+ (* 1/2 (/ (pow (log (/ 1 x)) 2) (pow n 2))) 1) (/ (log (/ 1 x)) n)) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 22.2b
Found 4 expressions with local error:
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 1.9b | (log (exp (* (cbrt (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))) (cbrt (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))))) |
| 17× | add-sqr-sqrt |
| 11× | add-log-exp |
| 11× | *-un-lft-identity |
| 6× | difference-of-squares |
| 5× | add-cube-cbrt |
| 5× | pow1 |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 3× | distribute-lft-out-- |
| 3× | flip-- |
| 3× | log-pow |
| 3× | diff-log |
| 3× | flip3-- |
| 3× | unpow-prod-down |
| 3× | sub-neg |
| 3× | log-prod |
| 1× | rem-log-exp |
| 1× | exp-to-pow |
| 1× | exp-prod |
| 14.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 10.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 8.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 2.0ms | (log (exp (* (cbrt (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))) (cbrt (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))))) |
| 495.0ms | (log (exp (* (cbrt (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n)))) (cbrt (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))))) |
| 208.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 189.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 174.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 274.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 266.0ms | (- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n))))) |
| 263.0ms | (- (+ (* 2/3 (/ (* (exp (* 1/3 (+ (* 2 (log (/ -1 x))) (* 2 (log (/ -1 n)))))) (log -1)) n)) (exp (* 1/3 (+ (* 2 (log (/ -1 x))) (* 2 (log (/ -1 n))))))) (+ (* 2/3 (/ (* (log (/ -1 x)) (exp (* 1/3 (+ (* 2 (log (/ -1 x))) (* 2 (log (/ -1 n))))))) n)) (* 1/3 (/ (exp (* 1/3 (+ (* 2 (log (/ -1 x))) (* 2 (log (/ -1 n)))))) x)))) |
| 260.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 246.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 22.2b
Found 4 expressions with local error:
| 2.4b | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 2.4b | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 22× | add-sqr-sqrt |
| 14× | *-un-lft-identity |
| 10× | add-log-exp |
| 8× | difference-of-squares |
| 7× | log-pow |
| 6× | add-cube-cbrt |
| 6× | exp-prod |
| 5× | log-prod |
| 5× | pow1 |
| 4× | distribute-lft-out-- |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | unpow-prod-down |
| 4× | sub-neg |
| 3× | flip-- |
| 3× | diff-log |
| 3× | flip3-- |
| 2× | exp-sum |
| 1× | rem-log-exp |
| 1× | exp-diff |
| 1× | log-div |
| 23.0ms | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 16.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 9.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 8.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 233.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 217.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 213.0ms | (log (exp (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))))) |
| 182.0ms | (- (pow (+ 1 x) (/ 1 n)) (pow x (/ 1 n))) |
| 313.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 285.0ms | (- (+ (/ (log -1) (* x (pow n 2))) (/ 1 (* x n))) (+ (* 1/2 (/ 1 (* (pow x 2) n))) (/ (log (/ -1 x)) (* x (pow n 2))))) |
| 285.0ms | (- (/ 1 (* x n)) (+ (/ (log (/ 1 x)) (* x (pow n 2))) (* 1/2 (/ 1 (* (pow x 2) n))))) |
| 250.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))))) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 22.2b
82.9% (1.4b remaining)
Error of 22.2b against oracle of 20.8b and baseline of 29.0b
| 3.6s | 3133× | body | 1280 | valid |
| 1.3s | 1134× | body | 10240 | exit |
| 1.3s | 1543× | body | 640 | valid |
| 1.2s | 4787× | body | 80 | valid |
| 742.0ms | 640× | body | 1280 | nan |
| 599.0ms | 5030× | body | 80 | nan |
| 537.0ms | 661× | body | 640 | nan |
| 511.0ms | 831× | body | 320 | valid |
| 253.0ms | 377× | body | 320 | nan |
| 153.0ms | 473× | body | 160 | valid |
| 102.0ms | 166× | body | 160 | nan |