Details

Time bar (total: 12.6s)

analyze1.3s (10%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
0%99.9%0.1%7
25%74.9%0.1%8
54.6%45.2%0.1%9
56.2%43.7%0.1%10
62.4%37.4%0.1%11
65.9%33.9%0.1%12
66.3%33.5%0.1%13
69%30.8%0.1%14
Compiler

Compiled 17 to 15 computations (11.8% saved)

sample207.0ms (1.7%)

Algorithm
intervals
Results
138.0ms123×body1280valid
43.0ms66×body640valid
9.0ms19×body320valid
5.0ms41×body80valid
2.0msbody160valid
Compiler

Compiled 33 to 32 computations (3% saved)

simplify165.0ms (1.3%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (150.0ms)

IterNodesCost
0517126

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 3.5b

Counts
2 → 1
Compiler

Compiled 32 to 28 computations (12.5% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.2b
(pow.f64 (sin.f64 ky) 2)
0.3b
(pow.f64 (sin.f64 kx) 2)
3.2b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

rewrite41.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
46×*-un-lft-identity_binary64
27×add-sqr-sqrt_binary64
26×add-cube-cbrt_binary64
25×sqrt-prod_binary64
24×times-frac_binary64
16×unpow-prod-down_binary64
10×distribute-lft-out_binary64
associate-/r*_binary64 add-exp-log_binary64
pow1_binary64
pow-unpow_binary64 add-cbrt-cube_binary64
add-log-exp_binary64 insert-posit16 sqrt-div_binary64
associate-/l*_binary64
pow-to-exp_binary64 flip3-+_binary64 unpow2_binary64 pow-pow_binary64 sqr-pow_binary64 associate-/r/_binary64 flip-+_binary64 pow-exp_binary64
pow1/2_binary64 cbrt-undiv_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 clear-num_binary64 frac-2neg_binary64 div-inv_binary64 div-exp_binary64
Counts
4 → 106
Calls

4 calls:

16.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
10.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
7.0ms
(pow.f64 (sin.f64 kx) 2)
4.0ms
(pow.f64 (sin.f64 ky) 2)

series530.0ms (4.2%)

Counts
4 → 12
Calls

4 calls:

304.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
169.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
30.0ms
(pow.f64 (sin.f64 kx) 2)
27.0ms
(pow.f64 (sin.f64 ky) 2)

simplify129.0ms (1%)

Algorithm
egg-herbie
Counts
118 → 118
Iterations

Useful iterations: 0 (92.0ms)

IterNodesCost
049422355
149422355

prune181.0ms (1.4%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New10711118
Fresh000
Picked101
Done000
Total10811119

Merged error: 2.5b

Counts
119 → 11
Compiler

Compiled 2914 to 1658 computations (43.1% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)))
0.2b
(pow.f64 (sin.f64 ky) 2)
0.3b
(pow.f64 (sin.f64 kx) 2)
3.2b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

rewrite52.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
180×times-frac_binary64
150×*-un-lft-identity_binary64
99×add-sqr-sqrt_binary64
98×add-cube-cbrt_binary64
65×sqrt-prod_binary64
32×unpow-prod-down_binary64
28×associate-/r*_binary64
26×distribute-lft-out_binary64
17×add-exp-log_binary64
add-cbrt-cube_binary64
pow1_binary64
div-exp_binary64
pow-unpow_binary64
div-inv_binary64
add-log-exp_binary64 insert-posit16
cbrt-undiv_binary64 associate-/l*_binary64
pow-to-exp_binary64 1-exp_binary64 unpow2_binary64 pow-pow_binary64 sqr-pow_binary64 rec-exp_binary64 pow-exp_binary64 sqrt-div_binary64
flip3-+_binary64 pow1/2_binary64 associate-/r/_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 clear-num_binary64 inv-pow_binary64 frac-2neg_binary64 pow-flip_binary64 flip-+_binary64
Counts
4 → 193
Calls

4 calls:

19.0ms
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)))
10.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
4.0ms
(pow.f64 (sin.f64 kx) 2)
4.0ms
(pow.f64 (sin.f64 ky) 2)

series518.0ms (4.1%)

Counts
4 → 12
Calls

4 calls:

302.0ms
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)))
157.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
30.0ms
(pow.f64 (sin.f64 ky) 2)
29.0ms
(pow.f64 (sin.f64 kx) 2)

simplify209.0ms (1.7%)

Algorithm
egg-herbie
Counts
205 → 205
Iterations

Useful iterations: 0 (145.0ms)

IterNodesCost
049315705
149315705

prune471.0ms (3.8%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New2032205
Fresh1910
Picked011
Done000
Total20412216

Merged error: 2.5b

Counts
216 → 12
Compiler

Compiled 5715 to 3369 computations (41% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(pow.f64 (sin.f64 kx) 2)
0.3b
(/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
0.3b
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
3.5b
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))

rewrite63.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
78×*-un-lft-identity_binary64
49×add-sqr-sqrt_binary64 times-frac_binary64
45×sqrt-prod_binary64
36×add-cube-cbrt_binary64
24×associate-*r*_binary64
23×unpow-prod-down_binary64
20×distribute-lft-out_binary64
11×add-exp-log_binary64
10×pow1_binary64
add-cbrt-cube_binary64
associate-/r/_binary64
associate-/r*_binary64
add-log-exp_binary64 unswap-sqr_binary64 insert-posit16
flip3-+_binary64 pow-unpow_binary64 associate-*l*_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 associate-/l*_binary64 div-inv_binary64 flip-+_binary64
inv-pow_binary64 div-exp_binary64 pow-flip_binary64 sqrt-div_binary64
pow-to-exp_binary64 pow-prod-down_binary64 pow1/2_binary64 cbrt-unprod_binary64 1-exp_binary64 unpow2_binary64 cbrt-undiv_binary64 associate-*r/_binary64 pow-pow_binary64 sqr-pow_binary64 clear-num_binary64 prod-exp_binary64 frac-2neg_binary64 rec-exp_binary64 pow-exp_binary64 *-commutative_binary64
Counts
4 → 142
Calls

4 calls:

23.0ms
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
15.0ms
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
13.0ms
(/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
4.0ms
(pow.f64 (sin.f64 kx) 2)

series731.0ms (5.8%)

Counts
4 → 12
Calls

4 calls:

291.0ms
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
243.0ms
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
168.0ms
(/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
29.0ms
(pow.f64 (sin.f64 kx) 2)

simplify90.0ms (0.7%)

Algorithm
egg-herbie
Counts
154 → 154
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
050113240

prune215.0ms (1.7%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1522154
Fresh2810
Picked101
Done011
Total15511166

Merged error: 2.5b

Counts
166 → 11
Compiler

Compiled 4067 to 2511 computations (38.3% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(pow.f64 (sin.f64 ky) 2)
0.3b
(pow.f64 (sin.f64 kx) 2)
0.3b
(*.f64 (sin.f64 ky) (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) -1/2))
3.2b
(pow.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) -1/2)

rewrite39.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
21×*-un-lft-identity_binary64 unpow-prod-down_binary64
18×add-sqr-sqrt_binary64
13×add-cube-cbrt_binary64
12×add-exp-log_binary64
pow-unpow_binary64 associate-*r*_binary64
pow1_binary64
add-cbrt-cube_binary64
sqr-pow_binary64
pow-to-exp_binary64 add-log-exp_binary64 distribute-lft-out_binary64 insert-posit16 pow-exp_binary64
pow-pow_binary64 associate-*l*_binary64 unswap-sqr_binary64 prod-exp_binary64
unpow2_binary64
cbrt-unprod_binary64 *-commutative_binary64
Counts
4 → 86
Calls

4 calls:

17.0ms
(*.f64 (sin.f64 ky) (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) -1/2))
12.0ms
(pow.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) -1/2)
3.0ms
(pow.f64 (sin.f64 kx) 2)
3.0ms
(pow.f64 (sin.f64 ky) 2)

series595.0ms (4.7%)

Counts
4 → 12
Calls

4 calls:

294.0ms
(*.f64 (sin.f64 ky) (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) -1/2))
239.0ms
(pow.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) -1/2)
34.0ms
(pow.f64 (sin.f64 kx) 2)
27.0ms
(pow.f64 (sin.f64 ky) 2)

simplify109.0ms (0.9%)

Algorithm
egg-herbie
Counts
98 → 98
Iterations

Useful iterations: 0 (80.0ms)

IterNodesCost
051041619

prune114.0ms (0.9%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New97198
Fresh189
Picked011
Done011
Total9811109

Merged error: 2.5b

Counts
109 → 11
Compiler

Compiled 2154 to 1227 computations (43% saved)

regimes193.0ms (1.5%)

Compiler

Compiled 1825 to 1552 computations (15% saved)

bsearch0.0ms (0%)

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
02029
12029

end0.0ms (0%)

sample6.6s (52.3%)

Algorithm
intervals
Results
4.0s3717×body1280valid
1.4s2083×body640valid
323.0ms691×body320valid
156.0ms1220×body80valid
100.0ms289×body160valid
Compiler

Compiled 292 to 248 computations (15.1% saved)

Profiling

Loading profile data...