Details

Time bar (total: 15.1s)

analyze823.0ms (5.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%50%50%2
0%50%50%3
0%50%50%4
0%50%50%5
3.1%43.7%53.2%6
3.1%40.6%56.3%7
4.7%35.9%59.4%8
4.7%33.6%61.8%9
5.5%30.8%63.7%10
5.5%29.5%65.1%11
5.9%28%66.1%12
5.9%27.3%66.9%13
6%26.5%67.4%14
Compiler

Compiled 19 to 16 computations (15.8% saved)

sample9.1s (60.5%)

Results
5.6s2813×body8192exit
1.5s8256×body128valid
1.2s1407×body1024invalid
440.0ms723×body512invalid
169.0ms915×body128invalid
139.0ms362×body256invalid
Compiler

Compiled 37 to 31 computations (16.2% saved)

simplify46.0ms (0.3%)

Algorithm
egg-herbie
Rules
672×associate-/l*_binary64
625×associate-/r*_binary64
461×div-sub_binary64
445×distribute-frac-neg_binary64
288×distribute-rgt-neg-out_binary64
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01425
13222
26522
312922
428022
563420
6133220
7312120
8491420
9455020

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (/.f64 (-.f64 1 k) 2)))
0.5b
(/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2)) (sqrt.f64 k))
Compiler

Compiled 97 to 77 computations (20.6% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2)) (sqrt.f64 k))
0.3b
(*.f64 (*.f64 2 (PI.f64)) n)
0.4b
(pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2))

series589.0ms (3.9%)

Counts
3 → 48
Calls

3 calls:

303.0ms
(/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2)) (sqrt.f64 k))
282.0ms
(pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2))
3.0ms
(*.f64 (*.f64 2 (PI.f64)) n)

rewrite26.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
36×times-frac_binary64
26×add-exp-log_binary64
26×*-un-lft-identity_binary64
26×add-sqr-sqrt_binary64
26×add-cube-cbrt_binary64
Counts
3 → 108
Calls

3 calls:

7.0ms
(/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2)) (sqrt.f64 k))
7.0ms
(pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2))
5.0ms
(*.f64 (*.f64 2 (PI.f64)) n)

simplify128.0ms (0.8%)

Algorithm
egg-herbie
Rules
405×distribute-rgt-in_binary64
399×distribute-lft-in_binary64
243×fma-neg_binary64
211×associate-/l*_binary64
162×associate-*l*_binary64
Counts
156 → 168
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02134057
14283712
213903636
345063636
449603636

prune208.0ms (1.4%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1617168
Fresh101
Picked101
Done000
Total1637170
Error
0.0b
Counts
170 → 7
Alt Table
StatusErrorProgram
0.3b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))
0.7b
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2)) (sqrt.f64 k))) (sqrt.f64 (/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (fma.f64 k -1/2 1/2)) (sqrt.f64 k))))
20.5b
(/.f64 (-.f64 (+.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.f64 1/8 (*.f64 (*.f64 (pow.f64 k 2) (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.f64)))))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 k (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.f64))))) (*.f64 1/48 (*.f64 (*.f64 (pow.f64 k 3) (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.f64))))))) (sqrt.f64 k))
0.5b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (fma.f64 k -1/2 1/2)) (sqrt.f64 (/.f64 1 k)))
0.6b
(*.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (cbrt.f64 k))))
0.4b
(*.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (sqrt.f64 (sqrt.f64 k))) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k))))
0.8b
(*.f64 (/.f64 (pow.f64 (*.f64 2 (PI.f64)) (fma.f64 k -1/2 1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (pow.f64 n (fma.f64 k -1/2 1/2)) (sqrt.f64 (cbrt.f64 k))))
Compiler

Compiled 4351 to 2824 computations (35.1% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))
0.1b
(sqrt.f64 (*.f64 n (*.f64 2 (PI.f64))))
0.3b
(*.f64 n (*.f64 2 (PI.f64)))
0.4b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))

series161.0ms (1.1%)

Counts
4 → 12
Calls

4 calls:

91.0ms
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))
52.0ms
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))
14.0ms
(sqrt.f64 (*.f64 n (*.f64 2 (PI.f64))))
3.0ms
(*.f64 n (*.f64 2 (PI.f64)))

rewrite44.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
52×times-frac_binary64
51×add-sqr-sqrt_binary64
43×sqrt-prod_binary64
40×add-exp-log_binary64
38×*-un-lft-identity_binary64
Counts
4 → 145
Calls

4 calls:

15.0ms
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))
8.0ms
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))
5.0ms
(*.f64 n (*.f64 2 (PI.f64)))
4.0ms
(sqrt.f64 (*.f64 n (*.f64 2 (PI.f64))))

simplify180.0ms (1.2%)

Algorithm
egg-herbie
Rules
482×associate-/l*_binary64
441×*-commutative_binary64
366×fma-def_binary64
350×associate-*r/_binary64
319×associate-*l/_binary64
Counts
157 → 209
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01824123
13623862
213183834
336933834
444993834
549533834
649423834

prune296.0ms (2%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2363239
Fresh336
Picked101
Done000
Total2406246
Error
0.0b
Counts
246 → 6
Alt Table
StatusErrorProgram
0.5b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (fma.f64 k -1/2 1/2)) (sqrt.f64 (/.f64 1 k)))
0.4b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k))) (sqrt.f64 (sqrt.f64 k))))
0.6b
(*.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (cbrt.f64 k))))
0.4b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))) (sqrt.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))))
0.3b
(*.f64 (pow.f64 n (*.f64 k -1/2)) (*.f64 (pow.f64 (*.f64 2 (PI.f64)) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))))
0.8b
(*.f64 (/.f64 (pow.f64 (*.f64 2 (PI.f64)) (fma.f64 k -1/2 1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (pow.f64 n (fma.f64 k -1/2 1/2)) (sqrt.f64 (cbrt.f64 k))))
Compiler

Compiled 6976 to 4294 computations (38.4% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (*.f64 2 (PI.f64)) (*.f64 k -1/2))
0.1b
(sqrt.f64 (*.f64 n (*.f64 2 (PI.f64))))
0.3b
(*.f64 n (*.f64 2 (PI.f64)))
0.4b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))

series5.0ms (0%)

Counts
1 → 12
Calls

1 calls:

5.0ms
(pow.f64 (*.f64 2 (PI.f64)) (*.f64 k -1/2))

rewrite4.0ms (0%)

Algorithm
rewrite-expression-head
Rules
add-exp-log_binary64
pow1_binary64
pow-exp_binary64
pow-pow_binary64
sqr-pow_binary64
Counts
1 → 17
Calls

1 calls:

3.0ms
(pow.f64 (*.f64 2 (PI.f64)) (*.f64 k -1/2))

simplify73.0ms (0.5%)

Algorithm
egg-herbie
Rules
937×fma-neg_binary64
724×cancel-sign-sub-inv_binary64
380×unswap-sqr_binary64
361×exp-prod_binary64
286×distribute-rgt-neg-in_binary64
Counts
29 → 27
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
051472
1124423
2386411
31788404
44004400
54960400
64999400

prune188.0ms (1.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1490149
Fresh055
Picked011
Done000
Total1496155
Error
0.0b
Counts
155 → 6
Alt Table
StatusErrorProgram
0.5b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (fma.f64 k -1/2 1/2)) (sqrt.f64 (/.f64 1 k)))
0.4b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k))) (sqrt.f64 (sqrt.f64 k))))
0.6b
(*.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (cbrt.f64 k))))
0.4b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))) (sqrt.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))))
0.3b
(*.f64 (pow.f64 n (*.f64 k -1/2)) (*.f64 (pow.f64 (*.f64 2 (PI.f64)) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))))
0.8b
(*.f64 (/.f64 (pow.f64 (*.f64 2 (PI.f64)) (fma.f64 k -1/2 1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (pow.f64 n (fma.f64 k -1/2 1/2)) (sqrt.f64 (cbrt.f64 k))))
Compiler

Compiled 4791 to 3111 computations (35.1% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (*.f64 n (*.f64 2 (PI.f64))))
0.3b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k)))
0.3b
(*.f64 n (*.f64 2 (PI.f64)))
0.3b
(/.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k))) (sqrt.f64 (sqrt.f64 k)))

series104.0ms (0.7%)

Counts
2 → 8
Calls

2 calls:

53.0ms
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k)))
51.0ms
(/.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k))) (sqrt.f64 (sqrt.f64 k)))

rewrite130.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
874×sqrt-prod_binary64
756×times-frac_binary64
370×*-un-lft-identity_binary64
370×add-sqr-sqrt_binary64
370×add-cube-cbrt_binary64
Counts
2 → 491
Calls

2 calls:

19.0ms
(/.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k))) (sqrt.f64 (sqrt.f64 k)))
8.0ms
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (sqrt.f64 k)))

simplify859.0ms (5.7%)

Algorithm
egg-herbie
Rules
721×times-frac_binary64
538×sub-neg_binary64
510×associate-/l*_binary64
477×div-sub_binary64
465×associate-/l/_binary64
Counts
499 → 445
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
036623792
174922517
2126721005
3303120489
4319120462
5391517753
6432916583
7450716391
8525016391

prune689.0ms (4.6%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New5231524
Fresh044
Picked101
Done011
Total5246530
Error
0b
Counts
530 → 6
Alt Table
StatusErrorProgram
0.4b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (/.f64 (/.f64 1 (/.f64 (sqrt.f64 (sqrt.f64 k)) (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))))) (sqrt.f64 (sqrt.f64 k))))
0.5b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (fma.f64 k -1/2 1/2)) (sqrt.f64 (/.f64 1 k)))
0.6b
(*.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 (cbrt.f64 k))))
0.4b
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 k -1/2)) (*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))) (sqrt.f64 (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k)))))
0.3b
(*.f64 (pow.f64 n (*.f64 k -1/2)) (*.f64 (pow.f64 (*.f64 2 (PI.f64)) (*.f64 k -1/2)) (/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (PI.f64)))) (sqrt.f64 k))))
0.8b
(*.f64 (/.f64 (pow.f64 (*.f64 2 (PI.f64)) (fma.f64 k -1/2 1/2)) (fabs.f64 (cbrt.f64 k))) (/.f64 (pow.f64 n (fma.f64 k -1/2 1/2)) (sqrt.f64 (cbrt.f64 k))))
Compiler

Compiled 19576 to 10444 computations (46.6% saved)

regimes1.2s (8.1%)

Accuracy

Total 0.4b remaining (89.6%)

Threshold costs 0.4b (89.6%)

Counts
242 → 1
Compiler

Compiled 27410 to 20380 computations (25.6% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01631
12231
22231

end141.0ms (0.9%)

Compiler

Compiled 196 to 147 computations (25% saved)

Profiling

Loading profile data...