Details

Time bar (total: 7.3s)

analyze339.0ms (4.7%)

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
12.5%37.5%50%5
15.6%31.2%53.2%6
17.2%25%57.9%7
18%20.3%61.8%8
18.3%16.4%65.3%9
18.5%13.7%67.8%10
18.6%11.5%69.9%11
18.7%10%71.3%12
18.7%8.9%72.4%13
18.7%8.2%73.1%14
Compiler

Compiled 19 to 16 computations (15.8% saved)

sample3.0s (41.4%)

Results
1.3s8256×body128valid
1.1s1402×body1024invalid
361.0ms677×body512invalid
176.0ms1181×body128invalid
121.0ms376×body256invalid
Compiler

Compiled 38 to 32 computations (15.8% saved)

preprocess31.0ms (0.4%)

Algorithm
egg-herbie
Rules
454×rules-20_binary64
407×rules-11_binary64
364×rules-24-rev_binary64
232×rules-4_binary64
160×rules-9-rev_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02150
13450
28244
315544
436144
589244
6240744
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (/.f64 (-.f64 1 k) 2)))
(*.f64 (/.f64 1 (sqrt.f64 n)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) k) (/.f64 (-.f64 1 n) 2)))
Outputs
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (/.f64 (-.f64 1 k) 2)))
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (/.f64 (-.f64 1 k) 2)))
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (/.f64 (-.f64 1 k) 2)) (sqrt.f64 k))
(/.f64 (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (/.f64 (-.f64 1 k) 2)) (sqrt.f64 k))
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1/2 (*.f64 1/2 k))) (sqrt.f64 k))
(*.f64 (/.f64 1 (sqrt.f64 n)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) k) (/.f64 (-.f64 1 n) 2)))
(*.f64 (/.f64 1 (sqrt.f64 n)) (pow.f64 (*.f64 k (*.f64 2 (PI.f64))) (/.f64 (-.f64 1 n) 2)))
(*.f64 (/.f64 1 (sqrt.f64 n)) (pow.f64 (*.f64 (PI.f64) (*.f64 k 2)) (/.f64 (-.f64 1 n) 2)))
(/.f64 (pow.f64 (*.f64 k (*.f64 2 (PI.f64))) (/.f64 (-.f64 1 n) 2)) (sqrt.f64 n))
(/.f64 (pow.f64 (*.f64 k (*.f64 2 (PI.f64))) (*.f64 (-.f64 1 n) 1/2)) (sqrt.f64 n))
(/.f64 (pow.f64 (*.f64 2 (*.f64 k (PI.f64))) (*.f64 (-.f64 1 n) 1/2)) (sqrt.f64 n))
(/.f64 (pow.f64 (*.f64 2 (*.f64 k (PI.f64))) (-.f64 1/2 (*.f64 1/2 n))) (sqrt.f64 n))
Compiler

Compiled 18 to 15 computations (16.7% saved)

simplify18.0ms (0.2%)

Algorithm
egg-herbie
Rules
397×rules-22-rev_binary64
391×rules-6_binary64
325×rules-20_binary64
227×rules-11_binary64
220×rules-5-rev_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01425
12225
24722
38622
419922
548322
6153022
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (/.f64 (-.f64 1 k) 2)))
Outputs
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 (*.f64 2 (PI.f64)) n) (/.f64 (-.f64 1 k) 2)))
(*.f64 (/.f64 1 (sqrt.f64 k)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (/.f64 (-.f64 1 k) 2)))
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (/.f64 (-.f64 1 k) 2)) (sqrt.f64 k))
(/.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (/.f64 (-.f64 1 k) 2)) (sqrt.f64 k))
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))

prune4.0ms (0.1%)

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

Compiled 100 to 80 computations (20% saved)

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series391.0ms (5.4%)

Counts
3 → 48
Calls

15 calls:

TimeVariablePointExpression
62.0ms
n
@inf
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
61.0ms
n
@0
(pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2))
61.0ms
n
@-inf
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
61.0ms
n
@inf
(pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2))
59.0ms
n
@0
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))

rewrite62.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
304×rules-34-rev_binary64
143×add-sqr-sqrt_binary64
138×pow1_binary64
138×rules-40_binary64
138×rules-41_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01444
133242
2418842
Stop Event
node limit
Counts
3 → 103
Calls
Call 1
Inputs
(pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2))
(*.f64 (PI.f64) n)
(/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (pow.f64 1 (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))) (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))) (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 2) (-.f64 1 k)) (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)) (pow.f64 (sqrt.f64 2) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) (-.f64 1/2 (*.f64 1/2 k))) (pow.f64 (*.f64 2 n) (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 n (-.f64 1/2 (*.f64 1/2 k))) (pow.f64 (*.f64 2 (PI.f64)) (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) 2) (-.f64 1/2 (*.f64 1/2 k))) (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1/2 (*.f64 1/2 k))) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (fabs.f64 (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 3) (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (fabs.f64 (/.f64 1 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))) (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 2) (-.f64 1 k)) (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) n) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (PI.f64) n))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) n))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (PI.f64) n) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) n))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (PI.f64) (/.f64 1 n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 n (/.f64 1 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (PI.f64) n) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (fabs.f64 (/.f64 1 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 (PI.f64) n) 3) (pow.f64 (*.f64 (PI.f64) n) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (fabs.f64 (/.f64 1 (sqrt.f64 (*.f64 (PI.f64) n)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) n) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) n) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (PI.f64) n) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (PI.f64) n))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) n))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) n) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 n 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 n 3) (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) n 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 n (PI.f64) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) n) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2) (cbrt.f64 (*.f64 (PI.f64) n)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (sqrt.f64 (*.f64 (PI.f64) n)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) n)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (/.f64 1 (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))) 2) (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))) (/.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))) (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 2) (-.f64 1 k)) (/.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)) (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 3) (pow.f64 k 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))) 2) (cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))))))

simplify51.0ms (0.7%)

Algorithm
egg-herbie
Rules
309×rules-15-rev_binary64
292×rules-1_binary64
256×rules-20_binary64
254×rules-1-rev_binary64
236×rules-4_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0691168
1208994
2757951
33962946
Stop Event
node limit
Counts
151 → 122
Calls
Call 1
Inputs
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.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 (+.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 1/2 (*.f64 (*.f64 k (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.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)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
Outputs
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.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 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 k (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) 1/2)))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (sqrt.f64 2) (*.f64 1/2 (*.f64 k (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (sqrt.f64 2) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))))
(-.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 1/2 (*.f64 (*.f64 k (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.f64))))))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) 1/8))) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 k (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) 1/2)))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (+.f64 (*.f64 1/8 (*.f64 k (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2)) k))) (sqrt.f64 2))) (*.f64 1/2 (*.f64 k (*.f64 (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))) (sqrt.f64 (*.f64 n (PI.f64)))))))
(fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (fma.f64 (*.f64 k k) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 (sqrt.f64 2) 1/8)) (sqrt.f64 2)) (*.f64 (*.f64 k (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))) -1/2))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))))
(-.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)))))))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2) (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) 1/8))) (fma.f64 1/2 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (*.f64 k (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))) (*.f64 (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3) (*.f64 (sqrt.f64 2) (pow.f64 k 3))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) 1/48))))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (+.f64 (*.f64 1/8 (*.f64 k (*.f64 (*.f64 (sqrt.f64 2) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2)) k))) (sqrt.f64 2))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 k 3) (*.f64 (sqrt.f64 2) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3)))) (*.f64 1/2 (*.f64 k (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))))))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (fma.f64 (*.f64 k k) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 (sqrt.f64 2) 1/8)) (sqrt.f64 2))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (*.f64 k (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))) (*.f64 1/48 (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3)))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 n (PI.f64))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (/.f64 1 k)) (exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 (pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))
(*.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))) (sqrt.f64 (/.f64 1 k)))

prune160.0ms (2.2%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New11012122
Fresh101
Picked101
Done000
Total11212124
Error
0.1b
Counts
124 → 12
Alt Table
StatusErrorProgram
0.8b
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) 2)
0.9b
(/.f64 (pow.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 3)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
0.7b
(*.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (sqrt.f64 k)))
0.5b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
3.6b
(exp.f64 (log.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))
20.3b
(/.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))) (sqrt.f64 k))
0.9b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))) (/.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))) (sqrt.f64 k)))
20.3b
(/.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))
14.9b
(/.f64 (cbrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) 3)) (sqrt.f64 k))
0.5b
(/.f64 (pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
17.8b
(pow.f64 (pow.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 3) 1/3)
3.3b
(/.f64 (exp.f64 (log.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))) (sqrt.f64 k))
Compiler

Compiled 3075 to 2033 computations (33.9% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series155.0ms (2.1%)

Counts
3 → 20
Calls

12 calls:

TimeVariablePointExpression
63.0ms
n
@0
(pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)) (*.f64 (-.f64 1 k) 1/2))
57.0ms
n
@inf
(pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)) (*.f64 (-.f64 1 k) 1/2))
14.0ms
n
@-inf
(pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)) (*.f64 (-.f64 1 k) 1/2))
3.0ms
n
@0
(pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)
3.0ms
n
@-inf
(pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)

rewrite58.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
277×rules-34-rev_binary64
144×rules-24_binary64
132×add-sqr-sqrt_binary64
128×pow1_binary64
128×rules-40_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01429
133528
2386228
Stop Event
node limit
Counts
3 → 146
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)
(sqrt.f64 (*.f64 (PI.f64) n))
(pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)) (*.f64 (-.f64 1 k) 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) n) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (PI.f64) n))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) n))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (PI.f64) n) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (PI.f64) n))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) n)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 n (PI.f64))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (sqrt.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (PI.f64) n) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (PI.f64) n))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (cbrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (PI.f64)) (*.f64 n (pow.f64 (cbrt.f64 (PI.f64)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) n))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 n) (*.f64 (PI.f64) (pow.f64 (cbrt.f64 n) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 n) 2) (*.f64 (cbrt.f64 n) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) n)) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) n)) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2) (cbrt.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (pow.f64 (*.f64 (PI.f64) n) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (*.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 n (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 (PI.f64)) n))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (*.f64 (sqrt.f64 n) (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 n) (*.f64 (PI.f64) (sqrt.f64 n)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 n) (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 n) (*.f64 (sqrt.f64 n) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (PI.f64) (/.f64 1 n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 n (/.f64 1 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (/.f64 1 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (fabs.f64 (/.f64 1 (sqrt.f64 (*.f64 (PI.f64) n)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (PI.f64) n) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (fabs.f64 (/.f64 1 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 (PI.f64) n) 3) (pow.f64 (*.f64 (PI.f64) n) 2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (PI.f64) n) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (PI.f64) n))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) (fabs.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (cbrt.f64 (*.f64 (PI.f64) n))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (cbrt.f64 (PI.f64)) (fabs.f64 (*.f64 n (pow.f64 (cbrt.f64 (PI.f64)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (fabs.f64 (*.f64 (cbrt.f64 (PI.f64)) n))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (cbrt.f64 n) (fabs.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 n) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (cbrt.f64 n) 2) (fabs.f64 (*.f64 (cbrt.f64 n) (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (cbrt.f64 (*.f64 (PI.f64) n)) (fabs.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) (sqrt.f64 (*.f64 (PI.f64) n))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (fabs.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (pow.f64 (*.f64 (PI.f64) n) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (fabs.f64 (*.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (sqrt.f64 (*.f64 (PI.f64) n))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (PI.f64)) (fabs.f64 (*.f64 n (sqrt.f64 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (PI.f64)) (fabs.f64 (*.f64 (sqrt.f64 (PI.f64)) n))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (PI.f64)) (fabs.f64 (*.f64 (sqrt.f64 n) (sqrt.f64 (*.f64 (PI.f64) n))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 n) (fabs.f64 (*.f64 (PI.f64) (sqrt.f64 n)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 n) (fabs.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (sqrt.f64 (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 n) (fabs.f64 (*.f64 (sqrt.f64 n) (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (PI.f64)) n))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) n) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (PI.f64) n) 3/2) (pow.f64 (*.f64 (PI.f64) n) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 n 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 n 3) (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) n 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 n (PI.f64) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (sqrt.f64 (*.f64 (PI.f64) n)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (PI.f64) n) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2) (cbrt.f64 (*.f64 (PI.f64) n)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (PI.f64) n)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (PI.f64) n)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (PI.f64) n)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) (cbrt.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (PI.f64) n)) (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (pow.f64 (*.f64 (PI.f64) n) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (PI.f64)) (sqrt.f64 n))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 n) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (fabs.f64 (/.f64 1 (sqrt.f64 (*.f64 (PI.f64) n)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 (PI.f64) n) 3/2) (*.f64 (PI.f64) n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (fabs.f64 (/.f64 1 (pow.f64 (*.f64 (PI.f64) n) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (PI.f64) n) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) n) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (PI.f64) n)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (fabs.f64 (pow.f64 1 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2)) (fabs.f64 (sqrt.f64 (cbrt.f64 (*.f64 (PI.f64) n))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 2) 1/2) (fabs.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (PI.f64) n)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (PI.f64) n) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (PI.f64) n)) (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) n))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (PI.f64) n) 1/4) (pow.f64 (*.f64 (PI.f64) n) 1/4) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (PI.f64)) (sqrt.f64 n) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (PI.f64) n)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (PI.f64) n))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) (pow.f64 1 (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))) (cbrt.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (-.f64 1 k))) (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 2) (-.f64 1 k)) (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)) (pow.f64 (sqrt.f64 2) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (*.f64 (-.f64 1 k) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) 2) (-.f64 1/2 (*.f64 1/2 k))) (pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1/2 (*.f64 1/2 k))) (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1/2 (*.f64 1/2 k))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (fabs.f64 (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 3) (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (*.f64 (-.f64 1 k) 1/4)) (fabs.f64 (/.f64 1 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (*.f64 (-.f64 1 k) 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) (fabs.f64 (pow.f64 1 (-.f64 1/2 (*.f64 1/2 k))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) 2) (-.f64 1/2 (*.f64 1/2 k))) (fabs.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1/2 (*.f64 1/2 k))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1/2 (*.f64 1/2 k))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1/2 (*.f64 1/2 k))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (-.f64 1 k))) (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 2) (-.f64 1 k)) (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (*.f64 (-.f64 1 k) 1/4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (PI.f64) (*.f64 2 n)) (-.f64 1 k))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) (*.f64 2 n))) (-.f64 1 k))))))))

simplify43.0ms (0.6%)

Algorithm
egg-herbie
Rules
301×rules-15-rev_binary64
283×rules-1_binary64
246×rules-1-rev_binary64
237×rules-20_binary64
231×rules-4_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
054620
1176494
2690467
33694462
Stop Event
node limit
Counts
166 → 157
Calls
Call 1
Inputs
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.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 (+.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 1/2 (*.f64 (*.f64 k (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.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)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
Outputs
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.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 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2)) (*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 k (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (sqrt.f64 2) (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 (*.f64 k (sqrt.f64 2)) 1/2))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (sqrt.f64 2) (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 1/2 (*.f64 k (sqrt.f64 2))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (sqrt.f64 2) (*.f64 1/2 (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 k (sqrt.f64 2))))))
(-.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 1/2 (*.f64 (*.f64 k (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (sqrt.f64 2))) (sqrt.f64 (*.f64 n (PI.f64))))))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2) (*.f64 1/8 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2)))))) (*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 k (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (+.f64 (sqrt.f64 2) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 (*.f64 k (*.f64 k (sqrt.f64 2))) 1/8)))) (*.f64 1/2 (*.f64 k (*.f64 (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))) (sqrt.f64 (*.f64 n (PI.f64)))))))
(fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (fma.f64 1/8 (*.f64 k (*.f64 k (*.f64 (sqrt.f64 2) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2)))) (sqrt.f64 2)) (*.f64 (*.f64 k (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))) -1/2))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 k (sqrt.f64 2))))))
(-.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)))))))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 2) (*.f64 1/8 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2)))))) (fma.f64 1/2 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 k (*.f64 (sqrt.f64 2) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))) (*.f64 1/48 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (pow.f64 k 3) (*.f64 (sqrt.f64 2) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3)))))))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (+.f64 (sqrt.f64 2) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 (*.f64 k (*.f64 k (sqrt.f64 2))) 1/8)))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (+.f64 (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 (*.f64 k (sqrt.f64 2)) 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3)) 1/48)))))
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (fma.f64 1/8 (*.f64 k (*.f64 k (*.f64 (sqrt.f64 2) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2)))) (sqrt.f64 2))) (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3))) (*.f64 1/2 (*.f64 k (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))))))
(*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 k (sqrt.f64 2))))) (*.f64 1/48 (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3) (*.f64 (sqrt.f64 2) (pow.f64 k 3))))))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))
(exp.f64 (*.f64 1/2 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))
(pow.f64 (exp.f64 1/2) (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 1/2 (-.f64 1 k)))
(sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))

prune244.0ms (3.3%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1892191
Fresh2911
Picked011
Done000
Total19112203
Error
0.1b
Counts
203 → 12
Alt Table
StatusErrorProgram
0.7b
(*.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (sqrt.f64 k)))
0.5b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
3.6b
(exp.f64 (log.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k))))
20.3b
(/.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))) (sqrt.f64 k))
0.9b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (-.f64 1 k))) (/.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k))) (sqrt.f64 k)))
20.3b
(/.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.8b
(/.f64 (pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) n)) 3)) 2)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
0.5b
(/.f64 (pow.f64 (*.f64 2 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) n)) 2)) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
0.8b
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) 2)
0.6b
(/.f64 (pow.f64 (*.f64 2 (*.f64 (sqrt.f64 n) (*.f64 (PI.f64) (sqrt.f64 n)))) (*.f64 (-.f64 1 k) 1/2)) (sqrt.f64 k))
17.8b
(pow.f64 (pow.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)) (sqrt.f64 k)) 3) 1/3)
3.3b
(/.f64 (exp.f64 (log.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) n))) (-.f64 1 k)))) (sqrt.f64 k))
Compiler

Compiled 4651 to 2997 computations (35.6% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series397.0ms (5.4%)

Counts
4 → 28
Calls

18 calls:

TimeVariablePointExpression
64.0ms
n
@0
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
64.0ms
n
@inf
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
62.0ms
n
@-inf
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
58.0ms
n
@0
(pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))
58.0ms
n
@inf
(pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))

rewrite68.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
307×rules-34-rev_binary64
144×add-sqr-sqrt_binary64
139×pow1_binary64
139×rules-40_binary64
139×rules-41_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01447
133542
2433442
Stop Event
node limit
Counts
4 → 158
Calls
Call 1
Inputs
(pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
(*.f64 n (PI.f64))
(sqrt.f64 (/.f64 1 k))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (PI.f64) (/.f64 (*.f64 2 n) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 n (PI.f64)) (/.f64 2 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 n (PI.f64))) (/.f64 1 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) (pow.f64 1 (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))) (*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (/.f64 (cbrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (pow.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) 2) (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1/4) (*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1/4) (*.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1/4) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) (/.f64 (sqrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (pow.f64 2 k)) (pow.f64 (*.f64 n (PI.f64)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 n (PI.f64)) (-.f64 1 k)) (/.f64 2 (pow.f64 2 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 n (-.f64 1 k)) (pow.f64 (*.f64 2 (PI.f64)) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (PI.f64) (-.f64 1 k)) (pow.f64 (*.f64 2 n) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (-.f64 1 k)) (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) (-.f64 1 k)) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 n (PI.f64)))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 n (PI.f64))) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 1 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (/.f64 1 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (fabs.f64 (/.f64 1 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 3) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 2 (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 0 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 2 (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 3/2) (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) 2) (cbrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 2 (pow.f64 2 k)) (pow.f64 (*.f64 n (PI.f64)) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 1 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 k) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (fabs.f64 (/.f64 (/.f64 (sqrt.f64 k) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (sqrt.f64 k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (/.f64 1 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 k -1/2) (/.f64 1 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 3) (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))) (fabs.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 3/2) (/.f64 (pow.f64 k -1/2) k)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 (pow.f64 k -1/2) k) (pow.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (pow.f64 k -1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 k -1/2) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k)) (cbrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))) (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)) k))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 n (PI.f64)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 n (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (*.f64 n (PI.f64)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 n (PI.f64)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 n (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 n (PI.f64)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 n (/.f64 1 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (PI.f64) (/.f64 1 n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 n (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 n (PI.f64)) 3) (pow.f64 (*.f64 n (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 n (PI.f64))) (fabs.f64 (/.f64 1 (sqrt.f64 (*.f64 n (PI.f64))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 n (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 n (PI.f64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 n (PI.f64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 n (PI.f64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 n (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 n (PI.f64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 n (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 n (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 n) (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 n (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 n (PI.f64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 n 3) (pow.f64 (PI.f64) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (PI.f64) 3) (pow.f64 n 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 n (PI.f64) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (PI.f64) n 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 n (PI.f64)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 n (PI.f64))) 2) (cbrt.f64 (*.f64 n (PI.f64))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 n (PI.f64))) (sqrt.f64 (*.f64 n (PI.f64))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 n (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 n (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 n (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 k -1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 k -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (pow.f64 k -1/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 k -1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 k -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 k -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 k -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 k -1/2) (pow.f64 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 k -1)) (cbrt.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 k -1/2)) (cbrt.f64 (pow.f64 k -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 k -1/2)) (sqrt.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 k -2))) (sqrt.f64 (cbrt.f64 (pow.f64 k -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 k -2)) 1/2) (pow.f64 (cbrt.f64 (pow.f64 k -1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 k -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 k -1/2) k) (pow.f64 k -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 k -1/2)) (fabs.f64 (/.f64 1 (sqrt.f64 (pow.f64 k -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 0 (sqrt.f64 k))) (sqrt.f64 k))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 k -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 k -1) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 k -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 k -1/2) k) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 k -1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 k) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (pow.f64 k -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 k -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 k -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 k -1/2) k))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 k -1/2) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 k -1)) (cbrt.f64 (pow.f64 k -1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 k -1/2)) (sqrt.f64 (pow.f64 k -1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 k)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 k -1/2)))))))

simplify47.0ms (0.6%)

Algorithm
egg-herbie
Rules
440×rules-4_binary64
269×rules-1_binary64
258×rules-11_binary64
236×rules-6_binary64
216×rules-1-rev_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
062752
1191715
2702636
34535636
Stop Event
node limit
Counts
186 → 176
Calls
Call 1
Inputs
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(*.f64 2 (*.f64 n (PI.f64)))
(-.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (PI.f64)))) (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)))) (*.f64 2 (*.f64 n (PI.f64)))) (+.f64 (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))) (*.f64 1/3 (*.f64 (pow.f64 k 3) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
Outputs
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))
(pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))
(/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k)))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))
(/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k)))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))
(/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k)))
(exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))
(pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))
(/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k)))
(*.f64 2 (*.f64 n (PI.f64)))
(*.f64 n (*.f64 2 (PI.f64)))
(-.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))
(*.f64 2 (-.f64 (*.f64 n (PI.f64)) (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (PI.f64)))) (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (fma.f64 (*.f64 k k) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 n (PI.f64))) (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))
(+.f64 (*.f64 k (*.f64 (*.f64 (*.f64 n (PI.f64)) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)) k)) (*.f64 2 (-.f64 (*.f64 n (PI.f64)) (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))))))
(fma.f64 k (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 k (*.f64 n (PI.f64)))) (*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)))) (*.f64 2 (*.f64 n (PI.f64)))) (+.f64 (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))) (*.f64 1/3 (*.f64 (pow.f64 k 3) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))))
(-.f64 (fma.f64 (*.f64 k k) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 n (PI.f64))) (*.f64 n (*.f64 2 (PI.f64)))) (fma.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))) (*.f64 1/3 (*.f64 (pow.f64 k 3) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3)))))))
(-.f64 (*.f64 n (+.f64 (*.f64 2 (PI.f64)) (*.f64 k (*.f64 k (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)))))) (*.f64 1/3 (fma.f64 n (*.f64 (pow.f64 k 3) (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3))) (*.f64 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))) 6))))
(+.f64 (*.f64 n (-.f64 (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 (PI.f64) (*.f64 k k))) (*.f64 1/3 (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3) (*.f64 (PI.f64) (pow.f64 k 3)))))) (*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))))))
(+.f64 (*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 n (*.f64 2 (PI.f64))))))))) (*.f64 n (-.f64 (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 (PI.f64) (*.f64 k k))) (*.f64 1/3 (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3) (*.f64 (PI.f64) (pow.f64 k 3)))))))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64)))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))) k))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))) k))
(sqrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))) k))
(sqrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))) k))
(sqrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k))) k))
(sqrt.f64 (/.f64 (exp.f64 (*.f64 (-.f64 1 k) (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n))))) k))
(sqrt.f64 (/.f64 (pow.f64 (exp.f64 (-.f64 1 k)) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))) k))
(sqrt.f64 (/.f64 (/.f64 (pow.f64 (*.f64 (PI.f64) -2) (-.f64 1 k)) (pow.f64 (/.f64 -1 n) (-.f64 1 k))) k))

prune227.0ms (3.1%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1697176
Fresh8210
Picked101
Done101
Total1799188
Error
0.0b
Counts
188 → 9
Alt Table
StatusErrorProgram
0.5b
(/.f64 1 (/.f64 (sqrt.f64 k) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))
0.3b
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))
21.4b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 n (*.f64 2 (PI.f64)))))))))) (sqrt.f64 (/.f64 1 k)))
0.8b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 n (PI.f64))) 3)) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
0.8b
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) 2)
0.5b
(/.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (/.f64 1 (pow.f64 k -1/2)))
0.5b
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))
20.3b
(/.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))) (sqrt.f64 k))
9.8b
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
Compiler

Compiled 3899 to 2705 computations (30.6% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 k))
0.2b
(*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
0.2b
(*.f64 n (PI.f64))
0.2b
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))

series297.0ms (4.1%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
82.0ms
n
@inf
(*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
82.0ms
n
@-inf
(*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
62.0ms
n
@0
(*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
14.0ms
k
@0
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))
10.0ms
n
@0
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))

rewrite61.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
340×rules-34-rev_binary64
159×add-sqr-sqrt_binary64
155×pow1_binary64
155×rules-40_binary64
155×rules-41_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01650
137833
2489733
Stop Event
node limit
Counts
2 → 75
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))
(*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (/.f64 1 (pow.f64 k -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 k) (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 k -1/2) (/.f64 1 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 3) (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3/2) (pow.f64 (pow.f64 k -1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 k -1/2) 3) (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (pow.f64 k -1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 k -1/2) (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k)) (cbrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))) (sqrt.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 n (/.f64 1 (*.f64 2 (/.f64 (PI.f64) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (PI.f64)) (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k) n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 (PI.f64) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) (/.f64 1 n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (/.f64 1 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3) (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (PI.f64)) (*.f64 0 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k) n))) (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k) n))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 0 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 (cbrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k)) 2)) (cbrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 2 k)) (pow.f64 (*.f64 n (PI.f64)) k))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 n (*.f64 2 (PI.f64))) (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3/2) (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) 3) (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 n 3) (pow.f64 (*.f64 2 (/.f64 (PI.f64) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 2 (/.f64 (PI.f64) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) 3) (pow.f64 n 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 n (*.f64 2 (/.f64 (PI.f64) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (/.f64 (PI.f64) (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) k))) n 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) (sqrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) 2)) (cbrt.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k))))))))

simplify26.0ms (0.4%)

Algorithm
egg-herbie
Rules
542×rules-4_binary64
292×rules-6_binary64
289×rules-11_binary64
286×rules-1_binary64
259×rules-20_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
064740
1222703
2818612
Stop Event
node limit
Counts
99 → 89
Calls
Call 1
Inputs
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(*.f64 2 (*.f64 n (PI.f64)))
(-.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (PI.f64)))) (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)))) (*.f64 2 (*.f64 n (PI.f64)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 k 3) (*.f64 n (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3) (PI.f64))))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
Outputs
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 2 (PI.f64))) (log.f64 (/.f64 1 n)))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(/.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (*.f64 (PI.f64) -2) k) (*.f64 (pow.f64 (/.f64 -1 n) k) 2)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(/.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (*.f64 (PI.f64) -2) k) (*.f64 (pow.f64 (/.f64 -1 n) k) 2)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(/.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (*.f64 (PI.f64) -2) k) (*.f64 (pow.f64 (/.f64 -1 n) k) 2)))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (exp.f64 (*.f64 k (-.f64 (log.f64 (*.f64 -2 (PI.f64))) (log.f64 (/.f64 -1 n)))))))
(/.f64 (*.f64 n (*.f64 2 (PI.f64))) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n)))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (exp.f64 k) (-.f64 (log.f64 (*.f64 (PI.f64) -2)) (log.f64 (/.f64 -1 n))))))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (*.f64 (PI.f64) -2) k) (*.f64 (pow.f64 (/.f64 -1 n) k) 2)))
(*.f64 2 (*.f64 n (PI.f64)))
(*.f64 n (*.f64 2 (PI.f64)))
(-.f64 (*.f64 2 (*.f64 n (PI.f64))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (*.f64 n (*.f64 2 (PI.f64))) (*.f64 (*.f64 (PI.f64) (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) n)) (*.f64 2 k)))
(*.f64 2 (-.f64 (*.f64 n (PI.f64)) (*.f64 n (*.f64 k (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (PI.f64)))) (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))))))
(-.f64 (fma.f64 (*.f64 k k) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 n (PI.f64))) (*.f64 n (*.f64 2 (PI.f64)))) (*.f64 (*.f64 (PI.f64) (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) n)) (*.f64 2 k)))
(+.f64 (*.f64 (*.f64 n (PI.f64)) (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2))) (*.f64 2 (-.f64 (*.f64 n (PI.f64)) (*.f64 n (*.f64 k (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))))))
(fma.f64 n (*.f64 (PI.f64) (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2))) (*.f64 2 (*.f64 (PI.f64) (-.f64 n (*.f64 k (*.f64 n (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))))))
(-.f64 (+.f64 (*.f64 (pow.f64 k 2) (*.f64 n (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)))) (*.f64 2 (*.f64 n (PI.f64)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 k 3) (*.f64 n (*.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3) (PI.f64))))) (*.f64 2 (*.f64 k (*.f64 n (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))))))
(-.f64 (fma.f64 (*.f64 k k) (*.f64 (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 2) (*.f64 n (PI.f64))) (*.f64 n (*.f64 2 (PI.f64)))) (fma.f64 1/3 (*.f64 n (*.f64 (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) 3)) (pow.f64 k 3))) (*.f64 (*.f64 (PI.f64) (*.f64 (log.f64 (*.f64 n (*.f64 2 (PI.f64)))) n)) (*.f64 2 k))))
(-.f64 (*.f64 n (+.f64 (*.f64 (*.f64 k k) (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2))) (*.f64 2 (PI.f64)))) (fma.f64 2 (*.f64 n (*.f64 k (*.f64 (PI.f64) (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))) (*.f64 n (*.f64 (*.f64 (pow.f64 k 3) (*.f64 (PI.f64) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3))) 1/3))))
(-.f64 (*.f64 (*.f64 n (PI.f64)) (+.f64 2 (*.f64 (*.f64 k k) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2)))) (*.f64 n (+.f64 (*.f64 2 (*.f64 (PI.f64) (*.f64 k (log.f64 (*.f64 2 (*.f64 n (PI.f64))))))) (*.f64 1/3 (*.f64 (PI.f64) (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))
(*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))
(/.f64 (*.f64 n (PI.f64)) (/.f64 (pow.f64 (exp.f64 k) (+.f64 (log.f64 n) (log.f64 (*.f64 2 (PI.f64))))) 2))
(*.f64 (/.f64 (PI.f64) (pow.f64 (exp.f64 k) (log.f64 (*.f64 2 (*.f64 n (PI.f64)))))) (*.f64 2 n))
(*.f64 2 (*.f64 n (/.f64 (PI.f64) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k))))

prune207.0ms (2.8%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1582160
Fresh178
Picked101
Done000
Total1609169
Error
0.0b
Counts
169 → 9
Alt Table
StatusErrorProgram
13.3b
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (cbrt.f64 (/.f64 (pow.f64 k -1/2) k)))
20.3b
(/.f64 (*.f64 (sqrt.f64 (*.f64 n (PI.f64))) (-.f64 (-.f64 (fma.f64 (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 2) (*.f64 1/8 (*.f64 (sqrt.f64 2) (*.f64 k k))) (*.f64 (sqrt.f64 2) 1)) (*.f64 1/2 (*.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) (*.f64 k (sqrt.f64 2))))) (*.f64 1/48 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 k 3) (pow.f64 (log.f64 (*.f64 2 (*.f64 n (PI.f64)))) 3)))))) (sqrt.f64 k))
0.8b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 2 (pow.f64 (cbrt.f64 (*.f64 n (PI.f64))) 3)) (-.f64 1 k))) (sqrt.f64 (/.f64 1 k)))
0.8b
(pow.f64 (/.f64 (pow.f64 (*.f64 2 (*.f64 (PI.f64) n)) (*.f64 (-.f64 1 k) 1/4)) (pow.f64 k 1/4)) 2)
0.5b
(/.f64 (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k))) (/.f64 1 (pow.f64 k -1/2)))
0.5b
(/.f64 1 (/.f64 (sqrt.f64 k) (sqrt.f64 (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) (-.f64 1 k)))))
0.5b
(*.f64 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 n (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (sqrt.f64 (/.f64 1 k)))
0.3b
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (pow.f64 (sqrt.f64 k) -1))
9.8b
(sqrt.f64 (/.f64 (pow.f64 (*.f64 n (*.f64 2 (PI.f64))) (-.f64 1 k)) k))
Compiler

Compiled 3581 to 2491 computations (30.4% saved)

regimes1.2s (16.3%)

Accuracy

Total 0.3b remaining (76.4%)

Threshold costs 0.3b (76.4%)

Counts
279 → 1
Compiler

Compiled 23450 to 18890 computations (19.4% saved)

simplify1.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (pow.f64 k -1/2))
Outputs
(*.f64 (sqrt.f64 (*.f64 n (/.f64 (*.f64 2 (PI.f64)) (pow.f64 (*.f64 2 (*.f64 n (PI.f64))) k)))) (pow.f64 k -1/2))

end158.0ms (2.2%)

Stop Event
fuel
Compiler

Compiled 256 to 199 computations (22.3% saved)

Profiling

Loading profile data...