


Bits error versus k



Bits error versus n
Initial program 0.4
Initial simplification0.3
Taylor expanded around inf 17.9
Simplified0.5
rmApplied add-sqr-sqrt0.5
Applied associate-*l*0.4
rmApplied clear-num0.4
Final simplification0.4
herbie shell --seed 2018365 +o rules:numerics
(FPCore (k n)
:name "Migdal et al, Equation (51)"
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))
Time bar (total: 26.6s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.4b
Found 3 expressions with local error:
| 0.9b | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 0.2b | (* PI (* n 2)) |
| 0.2b | (/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k)) |
3 calls. Slowest were:
| 8.0ms | (/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k)) |
| 2.0ms | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 1.0ms | (* PI (* n 2)) |
3 calls. Slowest were:
| 278.0ms | (/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k)) |
| 162.0ms | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 85.0ms | (* PI (* n 2)) |
67 calls. Slowest were:
| 368.0ms | (* (log (* PI (* n 2))) (- 1/2 (/ k 2))) |
| 312.0ms | (/ (* (* (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (pow (* PI (* n 2)) (- 1/2 (/ k 2)))) (pow (* PI (* n 2)) (- 1/2 (/ k 2)))) (* (* (sqrt k) (sqrt k)) (sqrt k))) |
| 304.0ms | (- (+ (* 1/4 (* (log (* 2 PI)) (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (* (log n) (pow k 2))))) (+ (* 1/8 (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (* (pow (log n) 2) (pow k 2)))) (+ (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (* 1/8 (* (pow (log (* 2 PI)) 2) (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (pow k 2))))))) (+ (* 1/2 (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (* (log n) k))) (* 1/2 (* (log (* 2 PI)) (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) k))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.6b | (pow n (fma -1/2 k 1/2)) |
| 0.5b | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 0.2b | (* (pow (* 2 PI) (fma -1/2 k 1/2)) (pow n (fma -1/2 k 1/2))) |
| 0.2b | (/ (* (pow (* 2 PI) (fma -1/2 k 1/2)) (pow n (fma -1/2 k 1/2))) (sqrt k)) |
4 calls. Slowest were:
| 13.0ms | (/ (* (pow (* 2 PI) (fma -1/2 k 1/2)) (pow n (fma -1/2 k 1/2))) (sqrt k)) |
| 6.0ms | (* (pow (* 2 PI) (fma -1/2 k 1/2)) (pow n (fma -1/2 k 1/2))) |
| 1.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
4 calls. Slowest were:
| 294.0ms | (/ (* (pow (* 2 PI) (fma -1/2 k 1/2)) (pow n (fma -1/2 k 1/2))) (sqrt k)) |
| 163.0ms | (* (pow (* 2 PI) (fma -1/2 k 1/2)) (pow n (fma -1/2 k 1/2))) |
| 89.0ms | (pow n (fma -1/2 k 1/2)) |
| 42.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
59 calls. Slowest were:
| 1.0s | (exp (* (- 1/2 (* 1/2 k)) (- (log -1) (log (/ -1 n))))) |
| 839.0ms | (* (exp (* (- 1/2 (* 1/2 k)) (- (log -1) (log (/ -1 n))))) (pow (* 2 PI) (- 1/2 (* 1/2 k)))) |
| 624.0ms | (- (+ (log (pow (* 2 PI) (fma -1/2 k 1/2))) (* (log n) (fma -1/2 k 1/2))) (log (sqrt k))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.6b | (pow n (fma -1/2 k 1/2)) |
| 0.5b | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 0.5b | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 0.2b | (/ (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2)))) (sqrt k)) |
4 calls. Slowest were:
| 31.0ms | (/ (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2)))) (sqrt k)) |
| 2.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 2.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
4 calls. Slowest were:
| 294.0ms | (/ (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2)))) (sqrt k)) |
| 75.0ms | (pow n (fma -1/2 k 1/2)) |
| 53.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 44.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
47 calls. Slowest were:
| 907.0ms | (exp (* (- 1/2 (* 1/2 k)) (- (log -1) (log (/ -1 n))))) |
| 358.0ms | (- (+ (log (sqrt (pow (* 2 PI) (fma -1/2 k 1/2)))) (+ (log (sqrt (pow (* 2 PI) (fma -1/2 k 1/2)))) (* (log n) (fma -1/2 k 1/2)))) (log (sqrt k))) |
| 228.0ms | (- (+ (pow n 1/2) (* 1/8 (* (sqrt n) (* (pow (log n) 2) (pow k 2))))) (* 1/2 (* (sqrt n) (* (log n) k)))) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.6b | (pow n (fma -1/2 k 1/2)) |
| 0.5b | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 0.5b | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 0.2b | (/ (sqrt k) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2))))) |
4 calls. Slowest were:
| 25.0ms | (/ (sqrt k) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2))))) |
| 3.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 3.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
4 calls. Slowest were:
| 252.0ms | (/ (sqrt k) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2))))) |
| 63.0ms | (pow n (fma -1/2 k 1/2)) |
| 57.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
| 52.0ms | (pow (* 2 PI) (fma -1/2 k 1/2)) |
46 calls. Slowest were:
| 861.0ms | (exp (* (- 1/2 (* 1/2 k)) (- (log -1) (log (/ -1 n))))) |
| 614.0ms | (- (log (sqrt k)) (+ (log (sqrt (pow (* 2 PI) (fma -1/2 k 1/2)))) (log (* (sqrt (pow (* 2 PI) (fma -1/2 k 1/2))) (pow n (fma -1/2 k 1/2)))))) |
| 291.0ms | (- (+ (pow n 1/2) (* 1/8 (* (sqrt n) (* (pow (log n) 2) (pow k 2))))) (* 1/2 (* (sqrt n) (* (log n) k)))) |
8 alts after pruning (6 fresh and 2 done)
Merged error: 0b
0% (0.4b remaining)
Error of 0.4b against oracle of 0.0b and baseline of 0.4b