Details

Time bar (total: 19.5s)

analyze604.0ms (3.1%)

Algorithm
search
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
Compiler

Compiled 30 to 30 computations (0% saved)

sample83.0ms (0.4%)

Algorithm
intervals
Results
35.0ms203×body128valid
23.0ms24×body1024valid
9.0ms16×body512valid
5.0ms13×body256valid
Compiler

Compiled 59 to 63 computations (-6.8% saved)

simplify143.0ms (0.7%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (41.0ms)

IterNodesCost
0532539

prune5.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112

Merged error: 1.0b

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.9b
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
7.3b
(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)))))

rewrite45.0ms (0.2%)

Algorithm
rewrite-expression-head
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
prod-exp_binary64_127 associate-/r*_binary64_22 pow1_binary64_139
associate-*r*_binary64_18
pow-exp_binary64_146 add-log-exp_binary64_117 unswap-sqr_binary64_46 sqrt-div_binary64_95
div-exp_binary64_129 flip-+_binary64_52 unpow2_binary64_143 sqr-pow_binary64_50 associate-/l*_binary64_23 pow-unpow_binary64_155 flip3-+_binary64_81
pow-to-exp_binary64_147 div-inv_binary64_75 associate-/r/_binary64_24 associate-*r/_binary64_20 distribute-lft-out_binary64_29
distribute-lft-in_binary64_27 *-commutative_binary64_9 sqrt-pow1_binary64_96 cbrt-unprod_binary64_111 cbrt-undiv_binary64_112 rem-sqrt-square_binary64_91 distribute-rgt-in_binary64_28 frac-2neg_binary64_89 pow-pow_binary64_150 clear-num_binary64_77 pow1/2_binary64_158
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 kx) 2)

series2.7s (14%)

Counts
4 → 39
Calls

4 calls:

1.4s
(/.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))))))
753.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)))))
608.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
14.0ms
(pow.f64 (sin.f64 kx) 2)

simplify96.0ms (0.5%)

Algorithm
egg-herbie
Counts
152 → 152
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
050895604

prune338.0ms (1.7%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1493152
Fresh000
Picked101
Done000
Total1503153

Merged error: 0b

Counts
153 → 3
Compiler

Compiled 5580 to 4078 computations (26.9% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

rewrite71.0ms (0.4%)

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

4 calls:

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

series3.3s (16.8%)

Counts
4 → 48
Calls

4 calls:

1.3s
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
745.0ms
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
600.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
591.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

simplify123.0ms (0.6%)

Algorithm
egg-herbie
Counts
196 → 196
Iterations

Useful iterations: 0 (56.0ms)

IterNodesCost
049597697
149597697

prune440.0ms (2.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1960196
Fresh022
Picked011
Done000
Total1963199

Merged error: 0b

Counts
199 → 3
Compiler

Compiled 7498 to 5108 computations (31.9% saved)

localize26.0ms (0.1%)

Local error

Found 4 expressions with local error:

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.9b
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
2.9b
(log.f64 (exp.f64 (/.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))))))))
7.3b
(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)))))

rewrite56.0ms (0.3%)

Algorithm
rewrite-expression-head
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-*l*_binary64_19
10×unpow-prod-down_binary64_157
add-cbrt-cube_binary64_114
prod-exp_binary64_127 associate-/r*_binary64_22 sqrt-div_binary64_95 pow1_binary64_139
associate-*r*_binary64_18
add-log-exp_binary64_117 flip-+_binary64_52 unswap-sqr_binary64_46 associate-/r/_binary64_24 flip3-+_binary64_81
pow-exp_binary64_146 div-exp_binary64_129 div-inv_binary64_75 associate-/l*_binary64_23 log-prod_binary64_164
unpow2_binary64_143 sqr-pow_binary64_50 associate-*r/_binary64_20 distribute-lft-out_binary64_29
distribute-lft-in_binary64_27 *-commutative_binary64_9 pow-to-exp_binary64_147 sqrt-pow1_binary64_96 cbrt-unprod_binary64_111 cbrt-undiv_binary64_112 rem-sqrt-square_binary64_91 distribute-rgt-in_binary64_28 frac-2neg_binary64_89 rem-log-exp_binary64_119 clear-num_binary64_77 pow1/2_binary64_158
Counts
4 → 131
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)))
10.0ms
(log.f64 (exp.f64 (/.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))))))))
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)))))

series4.8s (24.6%)

Counts
4 → 48
Calls

4 calls:

2.1s
(log.f64 (exp.f64 (/.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
(/.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))))))
733.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)))))
636.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

simplify109.0ms (0.6%)

Algorithm
egg-herbie
Counts
179 → 179
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
049877433
149877433

prune460.0ms (2.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1790179
Fresh011
Picked011
Done011
Total1793182

Merged error: 0b

Counts
182 → 3
Compiler

Compiled 7320 to 5413 computations (26.1% saved)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.4b
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
5.4b
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
28.2b
(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)))))
28.2b
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))

rewrite137.0ms (0.7%)

Algorithm
rewrite-expression-head
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 unpow2_binary64_143 sqr-pow_binary64_50 sqrt-div_binary64_95
associate-/r/_binary64_24
sqrt-pow1_binary64_96 div-exp_binary64_129 frac-times_binary64_88 associate-/r*_binary64_22 associate-*r/_binary64_20
frac-add_binary64_86 add-log-exp_binary64_117 flip-+_binary64_52 flip3-+_binary64_81
div-inv_binary64_75
pow-exp_binary64_146 pow-to-exp_binary64_147 cbrt-undiv_binary64_112 frac-2neg_binary64_89 pow-flip_binary64_152 associate-*l/_binary64_21 pow-prod-down_binary64_149 clear-num_binary64_77 pow1/2_binary64_158
inv-pow_binary64_163 rem-sqrt-square_binary64_91
Counts
4 → 144
Calls

4 calls:

53.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)))))
49.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 kx) 2) Om)
6.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)

series1.7s (8.7%)

Counts
4 → 30
Calls

4 calls:

819.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)))))
638.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))
124.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
113.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)

simplify79.0ms (0.4%)

Algorithm
egg-herbie
Counts
174 → 174
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
049603615
149603615

prune527.0ms (2.7%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1740174
Fresh000
Picked011
Done022
Total1743177

Merged error: 0b

Counts
177 → 3
Compiler

Compiled 9642 to 6326 computations (34.4% saved)

regimes721.0ms (3.7%)

Compiler

Compiled 8904 to 7967 computations (10.5% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02945
12945

end0.0ms (0%)

sample2.9s (14.6%)

Algorithm
intervals
Results
1.1s6423×body128valid
619.0ms770×body1024valid
296.0ms521×body512valid
103.0ms286×body256valid
Compiler

Compiled 483 to 432 computations (10.6% saved)

Profiling

Loading profile data...