Average Error: 0.4 → 0.4
Time: 42.0s
Precision: 64
Internal Precision: 128
\[\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
\[\frac{\frac{{\left(\left(2 \cdot n\right) \cdot \pi\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\sqrt{\sqrt{k}}}}{\sqrt{\sqrt{k}}}\]

Error

Bits error versus k

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.4

    \[\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
  2. Initial simplification0.3

    \[\leadsto \frac{{\left(\pi \cdot \left(n \cdot 2\right)\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\sqrt{k}}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.5

    \[\leadsto \frac{{\left(\pi \cdot \left(n \cdot 2\right)\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\color{blue}{\sqrt{\sqrt{k}} \cdot \sqrt{\sqrt{k}}}}\]
  5. Applied associate-/r*0.4

    \[\leadsto \color{blue}{\frac{\frac{{\left(\pi \cdot \left(n \cdot 2\right)\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\sqrt{\sqrt{k}}}}{\sqrt{\sqrt{k}}}}\]
  6. Final simplification0.4

    \[\leadsto \frac{\frac{{\left(\left(2 \cdot n\right) \cdot \pi\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\sqrt{\sqrt{k}}}}{\sqrt{\sqrt{k}}}\]

Reproduce

herbie shell --seed 2018362 +o rules:numerics
(FPCore (k n)
  :name "Migdal et al, Equation (51)"
  (* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))

Details

Time bar (total: 27.5s)Debug log

start438.0ms

Algorithm
intervals

setup71.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.2b

localize50.0ms

Local error

Found 3 expressions with local error:

0.7b
(pow (* PI (* n 2)) (- 1/2 (/ k 2)))
0.2b
(* PI (* n 2))
0.1b
(/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k))

rewrite14.0ms

Algorithm
rewrite-expression-head
Counts
3 → 74
Calls

3 calls. Slowest were:

8.0ms
(/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k))
3.0ms
(pow (* PI (* n 2)) (- 1/2 (/ k 2)))
2.0ms
(* PI (* n 2))

series416.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

209.0ms
(/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt k))
140.0ms
(pow (* PI (* n 2)) (- 1/2 (/ k 2)))
67.0ms
(* PI (* n 2))

simplify2.7s

Counts
67 → 83
Calls

67 calls. Slowest were:

427.0ms
(* (log (* PI (* n 2))) (- 1/2 (/ k 2)))
341.0ms
(- (log (pow (* PI (* n 2)) (- 1/2 (/ k 2)))) (log (sqrt k)))
283.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)))))

prune1.1s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 0.0b

localize8.0ms

Local error

Found 4 expressions with local error:

0.7b
(pow (* PI (* n 2)) (- 1/2 (/ k 2)))
0.2b
(* PI (* n 2))
0.2b
(/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt (sqrt k)))
0.1b
(sqrt (sqrt k))

rewrite13.0ms

Algorithm
rewrite-expression-head
Counts
4 → 109
Calls

4 calls. Slowest were:

8.0ms
(/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt (sqrt k)))
2.0ms
(pow (* PI (* n 2)) (- 1/2 (/ k 2)))
1.0ms
(* PI (* n 2))

series617.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

192.0ms
(sqrt (sqrt k))
191.0ms
(/ (pow (* PI (* n 2)) (- 1/2 (/ k 2))) (sqrt (sqrt k)))
160.0ms
(pow (* PI (* n 2)) (- 1/2 (/ k 2)))
75.0ms
(* PI (* n 2))

simplify4.8s

Counts
113 → 121
Calls

113 calls. Slowest were:

672.0ms
(- (* (log (* PI (* n 2))) (- 1/2 (/ k 2))) (log (sqrt (sqrt k))))
627.0ms
(- (* (log (* PI (* n 2))) (- 1/2 (/ k 2))) (log (sqrt (sqrt k))))
379.0ms
(- (+ (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (pow (/ 1 k) 1/4)) (+ (* 1/8 (* (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (pow (log n) 2)) (pow (pow k 7) 1/4))) (+ (* 1/4 (* (* (log (* 2 PI)) (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (log n))) (pow (pow k 7) 1/4))) (* 1/8 (* (* (pow (log (* 2 PI)) 2) (exp (* 1/2 (+ (log n) (log (* 2 PI)))))) (pow (pow k 7) 1/4)))))) (+ (* 1/2 (* (* (log (* 2 PI)) (exp (* 1/2 (+ (log n) (log (* 2 PI)))))) (pow (pow k 3) 1/4))) (* 1/2 (* (* (exp (* 1/2 (+ (log n) (log (* 2 PI))))) (log n)) (pow (pow k 3) 1/4)))))

prune1.9s

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 0.0b

localize14.0ms

Local error

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.1b
(* (pow PI (- 1/2 (/ k 2))) (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))

rewrite14.0ms

Algorithm
rewrite-expression-head
Counts
4 → 129
Calls

4 calls. Slowest were:

6.0ms
(* (pow PI (- 1/2 (/ k 2))) (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))
4.0ms
(/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k))
1.0ms
(pow (* n 2) (- 1/2 (/ k 2)))

series535.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

265.0ms
(* (pow PI (- 1/2 (/ k 2))) (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))
148.0ms
(/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k))
92.0ms
(pow (* n 2) (- 1/2 (/ k 2)))
30.0ms
(pow PI (- 1/2 (/ k 2)))

simplify6.1s

Counts
116 → 141
Calls

116 calls. Slowest were:

614.0ms
(+ (* (log PI) (- 1/2 (/ k 2))) (- (log (pow (* n 2) (- 1/2 (/ k 2)))) (log (sqrt k))))
600.0ms
(exp (* (- (log 2) (log (/ 1 n))) (- 1/2 (* 1/2 k))))
501.0ms
(* (* (* (pow PI (- 1/2 (/ k 2))) (pow PI (- 1/2 (/ k 2)))) (pow PI (- 1/2 (/ k 2)))) (/ (* (* (pow (* n 2) (- 1/2 (/ k 2))) (pow (* n 2) (- 1/2 (/ k 2)))) (pow (* n 2) (- 1/2 (/ k 2)))) (* (* (sqrt k) (sqrt k)) (sqrt k))))

prune2.0s

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 0b

localize18.0ms

Local error

Found 4 expressions with local error:

0.6b
(pow (* n 2) (- 1/2 (/ k 2)))
0.6b
(pow (* n 2) (- 1/2 (/ k 2)))
0.5b
(pow PI (- 1/2 (/ k 2)))
0.3b
(sqrt (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))

rewrite12.0ms

Algorithm
rewrite-expression-head
Counts
4 → 89
Calls

4 calls. Slowest were:

4.0ms
(sqrt (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))
2.0ms
(pow (* n 2) (- 1/2 (/ k 2)))
2.0ms
(pow (* n 2) (- 1/2 (/ k 2)))

series476.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

223.0ms
(sqrt (/ (pow (* n 2) (- 1/2 (/ k 2))) (sqrt k)))
119.0ms
(pow (* n 2) (- 1/2 (/ k 2)))
105.0ms
(pow (* n 2) (- 1/2 (/ k 2)))
30.0ms
(pow PI (- 1/2 (/ k 2)))

simplify4.5s

Counts
61 → 101
Calls

61 calls. Slowest were:

980.0ms
(exp (* (- (log 2) (log (/ 1 n))) (- 1/2 (* 1/2 k))))
654.0ms
(exp (* (- (log 2) (log (/ 1 n))) (- 1/2 (* 1/2 k))))
578.0ms
(* (sqrt (exp (* (- (log 2) (log (/ 1 n))) (- 1/2 (* 1/2 k))))) (pow (/ 1 k) 1/4))

prune1.7s

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 0b

regimes115.0ms

Accuracy

0% (0.4b remaining)

Error of 0.4b against oracle of 0.0b and baseline of 0.4b

bsearch2.0ms