


Bits error versus k



Bits error versus n
Results
Initial program 0.4
Initial simplification0.3
rmApplied add-sqr-sqrt0.5
Final simplification0.5
herbie shell --seed 2018360
(FPCore (k n)
:name "Migdal et al, Equation (51)"
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))
Time bar (total: 26.0s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.3b
Found 3 expressions with local error:
| 0.7b | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 0.3b | (* PI (* n 2)) |
| 0.2b | (/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k)) |
3 calls. Slowest were:
| 9.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:
| 231.0ms | (/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k)) |
| 146.0ms | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 49.0ms | (* PI (* n 2)) |
67 calls. Slowest were:
| 575.0ms | (- (* (log (* PI (* n 2))) (- 1/2 (/ k 2))) (log (sqrt k))) |
| 565.0ms | (- (* (log (* PI (* n 2))) (- 1/2 (/ k 2))) (log (sqrt k))) |
| 348.0ms | (* (log (* PI (* n 2))) (- 1/2 (/ k 2))) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.7b | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 0.3b | (* PI (* n 2)) |
| 0.2b | (/ (sqrt k) (pow (* PI (* n 2)) (- 1/2 (/ k 2)))) |
| 0.1b | (/ 1 (/ (sqrt k) (pow (* PI (* n 2)) (- 1/2 (/ k 2))))) |
4 calls. Slowest were:
| 8.0ms | (/ (sqrt k) (pow (* PI (* n 2)) (- 1/2 (/ k 2)))) |
| 4.0ms | (/ 1 (/ (sqrt k) (pow (* PI (* n 2)) (- 1/2 (/ k 2))))) |
| 3.0ms | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
4 calls. Slowest were:
| 201.0ms | (/ (sqrt k) (pow (* PI (* n 2)) (- 1/2 (/ k 2)))) |
| 164.0ms | (pow (* PI (* n 2)) (- 1/2 (/ k 2))) |
| 150.0ms | (/ 1 (/ (sqrt k) (pow (* PI (* n 2)) (- 1/2 (/ k 2))))) |
| 84.0ms | (* PI (* n 2)) |
95 calls. Slowest were:
| 347.0ms | (- (log (sqrt k)) (* (log (* PI (* n 2))) (- 1/2 (/ k 2)))) |
| 297.0ms | (- (log (sqrt k)) (log (pow (* PI (* n 2)) (- 1/2 (/ k 2))))) |
| 290.0ms | (- (log (sqrt k)) (* (log (* PI (* n 2))) (- 1/2 (/ k 2)))) |
9 alts after pruning (8 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.6b | (pow (* n 2) (- 1/2 (/ k 2))) |
| 0.5b | (pow PI (- 1/2 (/ k 2))) |
| 0.2b | (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)) |
| 0.2b | (* (pow PI (- 1/2 (/ k 2))) (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k))) |
4 calls. Slowest were:
| 13.0ms | (* (pow PI (- 1/2 (/ k 2))) (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k))) |
| 9.0ms | (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)) |
| 3.0ms | (pow (* n 2) (- 1/2 (/ k 2))) |
4 calls. Slowest were:
| 275.0ms | (* (pow PI (- 1/2 (/ k 2))) (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k))) |
| 181.0ms | (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)) |
| 98.0ms | (pow (* n 2) (- 1/2 (/ k 2))) |
| 40.0ms | (pow PI (- 1/2 (/ k 2))) |
116 calls. Slowest were:
| 1.2s | (+ (log (pow PI (- 1/2 (/ k 2)))) (log (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))) |
| 492.0ms | (+ (* (log PI) (- 1/2 (/ k 2))) (- (log (pow (* n 2) (- 1/2 (/ k 2)))) (log (sqrt k)))) |
| 369.0ms | (+ (log (pow PI (- 1/2 (/ k 2)))) (- (log (pow (* n 2) (- 1/2 (/ k 2)))) (log (sqrt k)))) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.6b | (pow n (- 1/2 (/ k 2))) |
| 0.5b | (pow PI (- 1/2 (/ k 2))) |
| 0.2b | (/ (* (pow n (- 1/2 (/ k 2))) (pow 2 (- 1/2 (/ k 2)))) (sqrt k)) |
| 0.2b | (* (pow n (- 1/2 (/ k 2))) (pow 2 (- 1/2 (/ k 2)))) |
4 calls. Slowest were:
| 15.0ms | (/ (* (pow n (- 1/2 (/ k 2))) (pow 2 (- 1/2 (/ k 2)))) (sqrt k)) |
| 10.0ms | (* (pow n (- 1/2 (/ k 2))) (pow 2 (- 1/2 (/ k 2)))) |
| 1.0ms | (pow n (- 1/2 (/ k 2))) |
4 calls. Slowest were:
| 260.0ms | (/ (* (pow n (- 1/2 (/ k 2))) (pow 2 (- 1/2 (/ k 2)))) (sqrt k)) |
| 163.0ms | (* (pow n (- 1/2 (/ k 2))) (pow 2 (- 1/2 (/ k 2)))) |
| 85.0ms | (pow n (- 1/2 (/ k 2))) |
| 24.0ms | (pow PI (- 1/2 (/ k 2))) |
64 calls. Slowest were:
| 480.0ms | (exp (* (- 1/2 (* 1/2 k)) (- (log -1) (log (/ -1 n))))) |
| 420.0ms | (- (+ (* (log n) (- 1/2 (/ k 2))) (log (pow 2 (- 1/2 (/ k 2))))) (log (sqrt k))) |
| 395.0ms | (- (+ (log (pow n (- 1/2 (/ k 2)))) (log (pow 2 (- 1/2 (/ k 2))))) (log (sqrt k))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0b
0% (0.4b remaining)
Error of 0.5b against oracle of 0.0b and baseline of 0.5b