Details

Time bar (total: 21.6s)

analyze862.0ms (4%)

Algorithm
search
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04998273
14998273
044
144
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
49.9%49.9%0.2%3
49.9%49.9%0.2%4
49.9%49.9%0.2%5
49.9%49.9%0.2%6
74.9%25%0.2%7
74.9%25%0.2%8
74.9%25%0.2%9
74.9%25%0.2%10
87.3%12.5%0.2%11
87.3%12.5%0.2%12
87.3%12.5%0.2%13
87.3%12.5%0.2%14
Symmetry

(sort kx ky)

Compiler

Compiled 30 to 30 computations (0% saved)

sample95.0ms (0.4%)

Algorithm
intervals
Results
36.0ms203×body128valid
19.0ms24×body1024valid
9.0ms15×body512valid
8.0ms14×body256valid
Compiler

Compiled 59 to 63 computations (-6.8% saved)

simplify47.0ms (0.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (41.0ms)

IterNodesCost
0532539

prune6.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
1.4b
Counts
2 → 1
Compiler

Compiled 50 to 50 computations (0% saved)

localize25.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(pow.f64 (sin.f64 ky) 2)
0.3b
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
2.5b
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
8.7b
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))

rewrite339.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
1.0b
Rules
33×add-sqr-sqrt_binary64_100
30×*-un-lft-identity_binary64_78
26×add-cube-cbrt_binary64_113
21×times-frac_binary64_84
19×add-exp-log_binary64_116
15×sqrt-prod_binary64_94
13×unpow-prod-down_binary64_157
12×associate-*l*_binary64_19
add-cbrt-cube_binary64_114
pow1_binary64_139 prod-exp_binary64_127 associate-/r*_binary64_22
associate-*r*_binary64_18
add-log-exp_binary64_117 sqrt-div_binary64_95 pow-exp_binary64_146 unswap-sqr_binary64_46
flip3-+_binary64_81 flip-+_binary64_52 div-exp_binary64_129 unpow2_binary64_143 sqr-pow_binary64_50 associate-/l*_binary64_23 pow-unpow_binary64_155
pow-to-exp_binary64_147 associate-*r/_binary64_20 div-inv_binary64_75 distribute-lft-out_binary64_29 associate-/r/_binary64_24
pow1/2_binary64_158 sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 cbrt-unprod_binary64_111 distribute-rgt-in_binary64_28 distribute-lft-in_binary64_27 *-commutative_binary64_9 cbrt-undiv_binary64_112 frac-2neg_binary64_89 clear-num_binary64_77 pow-pow_binary64_150
Counts
4 → 113
Calls

4 calls:

17.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
7.0ms
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
4.0ms
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
3.0ms
(pow.f64 (sin.f64 ky) 2)
Compiler

Compiled 4614 to 3499 computations (24.2% saved)

series4.5s (20.8%)

Error
0.5b
Counts
4 → 52
Calls

4 calls:

2.1s
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
1.4s
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
860.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
33.0ms
(pow.f64 (sin.f64 ky) 2)
Compiler

Compiled 5406 to 4776 computations (11.7% saved)

simplify77.0ms (0.4%)

Algorithm
egg-herbie
Counts
165 → 165
Iterations

Useful iterations: 0 (27.0ms)

IterNodesCost
049975689
149975689

prune399.0ms (1.8%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1632165
Fresh000
Picked101
Done000
Total1642166
Error
0.2b
Counts
166 → 2
Compiler

Compiled 5674 to 4167 computations (26.6% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om))))))
0.4b
(*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om)))
2.2b
(*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om))
8.7b
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om)))))

rewrite499.0ms (2.3%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
69×add-exp-log_binary64_116 add-cbrt-cube_binary64_114
32×prod-exp_binary64_127 cbrt-unprod_binary64_111
29×*-un-lft-identity_binary64_78
28×add-sqr-sqrt_binary64_100
25×add-cube-cbrt_binary64_113
24×times-frac_binary64_84
17×div-exp_binary64_129 cbrt-undiv_binary64_112
15×sqrt-prod_binary64_94
12×pow1_binary64_139 associate-*l*_binary64_19
11×frac-times_binary64_88
flip3-+_binary64_81 flip-+_binary64_52 associate-*r/_binary64_20 associate-*r*_binary64_18
associate-*l/_binary64_21
associate-/r*_binary64_22
add-log-exp_binary64_117 sqrt-div_binary64_95 pow-prod-down_binary64_149
div-inv_binary64_75 associate-/l*_binary64_23
unpow-prod-down_binary64_157 distribute-lft-out_binary64_29 *-commutative_binary64_9 associate-/r/_binary64_24
pow1/2_binary64_158 sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 unswap-sqr_binary64_46 frac-2neg_binary64_89 clear-num_binary64_77
Counts
4 → 142
Calls

4 calls:

21.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om)))
19.0ms
(*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om))
7.0ms
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om))))))
4.0ms
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om)))))
Compiler

Compiled 6964 to 4909 computations (29.5% saved)

series5.3s (24.4%)

Error
0.2b
Counts
4 → 63
Calls

4 calls:

2.1s
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om))))))
1.4s
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om)))))
869.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om)))
751.0ms
(*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 2 l) Om))
Compiler

Compiled 6392 to 5600 computations (12.4% saved)

simplify113.0ms (0.5%)

Algorithm
egg-herbie
Counts
205 → 205
Iterations

Useful iterations: 0 (50.0ms)

IterNodesCost
050727478

prune450.0ms (2.1%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New2050205
Fresh011
Picked011
Done000
Total2052207
Error
0.2b
Counts
207 → 2
Compiler

Compiled 7328 to 5112 computations (30.2% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

4.2b
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
4.2b
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
26.6b
(sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om)))))
26.7b
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))

rewrite638.0ms (3%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
51×times-frac_binary64_84
41×add-sqr-sqrt_binary64_100
40×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
24×unpow-prod-down_binary64_157
16×associate-/l*_binary64_23
15×sqrt-prod_binary64_94
14×add-exp-log_binary64_116
11×pow1_binary64_139
add-cbrt-cube_binary64_114 sqrt-div_binary64_95 unpow2_binary64_143 sqr-pow_binary64_50
associate-/r/_binary64_24
sqrt-pow1_binary64_96 frac-times_binary64_88 associate-*r/_binary64_20 div-exp_binary64_129 associate-/r*_binary64_22
add-log-exp_binary64_117 frac-add_binary64_86 flip3-+_binary64_81 flip-+_binary64_52
div-inv_binary64_75
pow1/2_binary64_158 pow-prod-down_binary64_149 associate-*l/_binary64_21 pow-flip_binary64_152 pow-to-exp_binary64_147 pow-exp_binary64_146 cbrt-undiv_binary64_112 frac-2neg_binary64_89 clear-num_binary64_77
inv-pow_binary64_163 rem-sqrt-square_binary64_91
Counts
4 → 144
Calls

4 calls:

51.0ms
(sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om)))))
48.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))
6.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
6.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
Compiler

Compiled 8686 to 5765 computations (33.6% saved)

series2.2s (10%)

Error
0.2b
Counts
4 → 34
Calls

4 calls:

984.0ms
(sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om)))))
771.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))
169.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
162.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
Compiler

Compiled 4804 to 3658 computations (23.9% saved)

simplify88.0ms (0.4%)

Algorithm
egg-herbie
Counts
178 → 178
Iterations

Useful iterations: 0 (51.0ms)

IterNodesCost
049683627
149683627

prune780.0ms (3.6%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1780178
Fresh000
Picked011
Done011
Total1782180
Error
0.2b
Counts
180 → 2
Compiler

Compiled 9774 to 6410 computations (34.4% saved)

regimes1.6s (7.6%)

Accuracy

Total 0.7b remaining (91.2%)

Threshold costs 0.7b (91.2%)

Compiler

Compiled 18575 to 17359 computations (6.5% saved)

bsearch0.0ms (0%)

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02965
12965
Remove

(sort kx ky)

Compiler

Compiled 82 to 70 computations (14.6% saved)

end0.0ms (0%)

sample3.6s (16.5%)

Algorithm
intervals
Results
1.1s6374×body128valid
643.0ms760×body1024valid
326.0ms547×body512valid
132.0ms319×body256valid
Compiler

Compiled 986 to 913 computations (7.4% saved)

Profiling

Loading profile data...