Details

Time bar (total: 25.8s)

analyze1.1s (4.1%)

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)

sample130.0ms (0.5%)

Algorithm
intervals
Results
45.0ms189×body128valid
32.0ms30×body1024valid
19.0ms26×body512valid
8.0ms11×body256valid
Compiler

Compiled 59 to 63 computations (-6.8% saved)

simplify48.0ms (0.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (42.0ms)

IterNodesCost
0532539

prune9.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 50 to 50 computations (0% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(pow.f64 (sin.f64 kx) 2)
0.4b
(/.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)))
9.6b
(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)))))

rewrite387.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.2b
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:

24.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
6.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 kx) 2)
Compiler

Compiled 4614 to 3499 computations (24.2% saved)

series4.1s (15.8%)

Error
0.0b
Counts
4 → 56
Calls

4 calls:

1.9s
(/.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.3s
(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)))))
678.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
30.0ms
(pow.f64 (sin.f64 kx) 2)
Compiler

Compiled 5955 to 5210 computations (12.5% saved)

simplify89.0ms (0.3%)

Algorithm
egg-herbie
Counts
169 → 169
Iterations

Useful iterations: 0 (33.0ms)

IterNodesCost
051205888

prune378.0ms (1.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1663169
Fresh000
Picked011
Done000
Total1664170
Error
0.0b
Counts
170 → 4
Compiler

Compiled 5837 to 4274 computations (26.8% saved)

localize30.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.4b
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2)))))
2.2b
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2)))))))
2.5b
(*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2))
9.6b
(sqrt.f64 (+.f64 1 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2))))

rewrite520.0ms (2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
45×add-sqr-sqrt_binary64_100
42×*-un-lft-identity_binary64_78
39×times-frac_binary64_84
38×add-cube-cbrt_binary64_113
25×log-pow_binary64_167
24×sqrt-prod_binary64_94 exp-prod_binary64_130
18×add-exp-log_binary64_116
12×associate-*r*_binary64_18
10×unpow-prod-down_binary64_157
add-cbrt-cube_binary64_114
pow1_binary64_139 sqrt-div_binary64_95 prod-exp_binary64_127 associate-/r*_binary64_22
associate-*l*_binary64_19
add-log-exp_binary64_117 flip3-+_binary64_81 flip-+_binary64_52 unswap-sqr_binary64_46 associate-/r/_binary64_24
div-exp_binary64_129 pow-exp_binary64_146 div-inv_binary64_75 log-prod_binary64_164 associate-/l*_binary64_23
unpow2_binary64_143 sqr-pow_binary64_50 associate-*l/_binary64_21 distribute-lft-out_binary64_29
pow1/2_binary64_158 sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 pow-to-exp_binary64_147 cbrt-unprod_binary64_111 *-commutative_binary64_9 rem-log-exp_binary64_119 cbrt-undiv_binary64_112 frac-2neg_binary64_89 clear-num_binary64_77
Counts
4 → 129
Calls

4 calls:

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

Compiled 6069 to 4682 computations (22.9% saved)

series7.0s (27%)

Error
0.0b
Counts
4 → 69
Calls

4 calls:

3.1s
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2)))))))
1.6s
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2)))))
1.2s
(sqrt.f64 (+.f64 1 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2))))
749.0ms
(*.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)) (pow.f64 (/.f64 (*.f64 2 l) Om) 2))
Compiler

Compiled 7788 to 6844 computations (12.1% saved)

simplify126.0ms (0.5%)

Algorithm
egg-herbie
Counts
198 → 198
Iterations

Useful iterations: 0 (33.0ms)

IterNodesCost
050297519

prune552.0ms (2.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1971198
Fresh112
Picked011
Done011
Total1984202
Error
0.0b
Counts
202 → 4
Compiler

Compiled 7478 to 5591 computations (25.2% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

2.0b
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))) 1)))))
6.3b
(*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l))
7.7b
(sqrt.f64 (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))) 1))
17.8b
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))

rewrite350.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
66×add-exp-log_binary64_116
34×prod-exp_binary64_127
30×add-cbrt-cube_binary64_114
25×log-pow_binary64_167
24×add-sqr-sqrt_binary64_100 exp-prod_binary64_130
21×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
19×times-frac_binary64_84
14×div-exp_binary64_129
12×cbrt-unprod_binary64_111 sqrt-prod_binary64_94
associate-*l*_binary64_19
pow1_binary64_139 pow-to-exp_binary64_147 pow-exp_binary64_146 cbrt-undiv_binary64_112
add-log-exp_binary64_117 sqrt-div_binary64_95 unpow-prod-down_binary64_157 unswap-sqr_binary64_46
log-prod_binary64_164
div-inv_binary64_75 flip3-+_binary64_81 flip-+_binary64_52 unpow2_binary64_143 sqr-pow_binary64_50 associate-/r/_binary64_24
frac-2neg_binary64_89 clear-num_binary64_77 associate-/l*_binary64_23 associate-/r*_binary64_22 pow1/2_binary64_158 sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 pow2_binary64_159 pow-prod-down_binary64_149 associate-*r*_binary64_18 *-commutative_binary64_9 rem-log-exp_binary64_119
Counts
4 → 114
Calls

4 calls:

29.0ms
(sqrt.f64 (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))) 1))
17.0ms
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))) 1)))))
13.0ms
(*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l))
11.0ms
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
Compiler

Compiled 4306 to 2753 computations (36.1% saved)

series1.8s (7%)

Error
0.0b
Counts
4 → 46
Calls

4 calls:

941.0ms
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))) 1)))))
350.0ms
(sqrt.f64 (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))) 1))
305.0ms
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
137.0ms
(*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l))
Compiler

Compiled 2788 to 2560 computations (8.2% saved)

simplify100.0ms (0.4%)

Algorithm
egg-herbie
Counts
160 → 160
Iterations

Useful iterations: 0 (61.0ms)

IterNodesCost
049873181
149873181

prune303.0ms (1.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1591160
Fresh101
Picked101
Done022
Total1613164
Error
0.0b
Counts
164 → 3
Compiler

Compiled 4425 to 2904 computations (34.4% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

2.0b
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 (*.f64 4 (cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))) 1)))))
2.1b
(/.f64 (*.f64 l (sin.f64 kx)) Om)
7.7b
(sqrt.f64 (+.f64 (*.f64 4 (cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))) 1))
17.3b
(cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))

rewrite232.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
25×add-sqr-sqrt_binary64_100 log-pow_binary64_167
24×add-cube-cbrt_binary64_113 times-frac_binary64_84 *-un-lft-identity_binary64_78 exp-prod_binary64_130
12×sqrt-prod_binary64_94
11×cbrt-prod_binary64_109
add-exp-log_binary64_116 add-cbrt-cube_binary64_114
unpow-prod-down_binary64_157
pow1_binary64_139
add-log-exp_binary64_117 sqrt-div_binary64_95
div-inv_binary64_75 associate-/r*_binary64_22 log-prod_binary64_164
flip3-+_binary64_81 flip-+_binary64_52 div-exp_binary64_129 cbrt-undiv_binary64_112 associate-/r/_binary64_24
pow1/3_binary64_160 sqr-pow_binary64_50 pow1/2_binary64_158 sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 prod-exp_binary64_127 cbrt-unprod_binary64_111 frac-2neg_binary64_89 clear-num_binary64_77 associate-/l*_binary64_23 rem-log-exp_binary64_119
Counts
4 → 91
Calls

4 calls:

19.0ms
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 (*.f64 4 (cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))) 1)))))
11.0ms
(/.f64 (*.f64 l (sin.f64 kx)) Om)
10.0ms
(sqrt.f64 (+.f64 (*.f64 4 (cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))) 1))
3.0ms
(cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))
Compiler

Compiled 3130 to 2175 computations (30.5% saved)

series1.8s (6.9%)

Error
0.0b
Counts
4 → 49
Calls

4 calls:

863.0ms
(log.f64 (exp.f64 (/.f64 1/2 (sqrt.f64 (+.f64 (*.f64 4 (cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))) 1)))))
333.0ms
(cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))
320.0ms
(sqrt.f64 (+.f64 (*.f64 4 (cbrt.f64 (pow.f64 (/.f64 (*.f64 l (sin.f64 kx)) Om) 6))) 1))
172.0ms
(/.f64 (*.f64 l (sin.f64 kx)) Om)
Compiler

Compiled 2923 to 2695 computations (7.8% saved)

simplify61.0ms (0.2%)

Algorithm
egg-herbie
Counts
140 → 140
Iterations

Useful iterations: 0 (28.0ms)

IterNodesCost
050582759

prune237.0ms (0.9%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1400140
Fresh000
Picked011
Done022
Total1403143
Error
0.0b
Counts
143 → 3
Compiler

Compiled 3620 to 2476 computations (31.6% saved)

regimes2.2s (8.4%)

Accuracy

Total 0.7b remaining (94.8%)

Threshold costs 0.7b (94.8%)

Compiler

Compiled 17988 to 17988 computations (0% saved)

bsearch0.0ms (0%)

simplify11.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02945
12945
Remove

(sort kx ky)

Compiler

Compiled 58 to 54 computations (6.9% saved)

end0.0ms (0%)

sample4.3s (16.8%)

Algorithm
intervals
Results
1.4s6428×body128valid
792.0ms787×body1024valid
383.0ms518×body512valid
121.0ms266×body256valid
3.0msbody2048valid
Compiler

Compiled 936 to 931 computations (0.5% saved)

Profiling

Loading profile data...