Details

Time bar (total: 15.2s)

analyze614.0ms (4%)

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)

sample81.0ms (0.5%)

Algorithm
intervals
Results
37.0ms209×body128valid
17.0ms19×body1024valid
12.0ms21×body512valid
3.0msbody256valid
Compiler

Compiled 59 to 63 computations (-6.8% saved)

simplify206.0ms (1.4%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
0532539

prune8.0ms (0.1%)

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 104 to 104 computations (0% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

rewrite46.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
33×add-sqr-sqrt_binary64_101
30×*-un-lft-identity_binary64_79
26×add-cube-cbrt_binary64_114
21×times-frac_binary64_85
19×add-exp-log_binary64_117
15×sqrt-prod_binary64_95
13×unpow-prod-down_binary64_158
12×associate-*l*_binary64_20
add-cbrt-cube_binary64_115
associate-/r*_binary64_23 prod-exp_binary64_128 pow1_binary64_140
associate-*r*_binary64_19
pow-exp_binary64_147 unswap-sqr_binary64_47 sqrt-div_binary64_96 add-log-exp_binary64_118
div-exp_binary64_130 pow-unpow_binary64_156 flip-+_binary64_53 unpow2_binary64_144 sqr-pow_binary64_51 associate-/l*_binary64_24 flip3-+_binary64_82
pow-to-exp_binary64_148 div-inv_binary64_76 associate-*r/_binary64_21 associate-/r/_binary64_25 distribute-lft-out_binary64_30
cbrt-undiv_binary64_113 pow-pow_binary64_151 distribute-lft-in_binary64_28 cbrt-unprod_binary64_112 rem-sqrt-square_binary64_92 *-commutative_binary64_10 sqrt-pow1_binary64_97 clear-num_binary64_78 pow1/2_binary64_159 distribute-rgt-in_binary64_29 frac-2neg_binary64_90
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)

series2.1s (13.8%)

Counts
4 → 12
Calls

4 calls:

1.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))))))
663.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)))))
320.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
25.0ms
(pow.f64 (sin.f64 ky) 2)

simplify80.0ms (0.5%)

Algorithm
egg-herbie
Counts
125 → 125
Iterations

Useful iterations: 0 (44.0ms)

IterNodesCost
049574125
149574125

prune316.0ms (2.1%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1214125
Fresh000
Picked101
Done000
Total1224126

Merged error: 0b

Counts
126 → 4
Compiler

Compiled 5216 to 4118 computations (21.1% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

1.0b
(*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
3.5b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
3.5b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
7.0b
(sqrt.f64 (+.f64 1 (*.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))

rewrite58.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
23×*-un-lft-identity_binary64_79
19×sqrt-prod_binary64_95
18×add-sqr-sqrt_binary64_101
13×add-exp-log_binary64_117 add-cbrt-cube_binary64_115
11×add-cube-cbrt_binary64_114
10×sqrt-div_binary64_96
pow1_binary64_140
associate-*r*_binary64_19
associate-*l*_binary64_20
unpow-prod-down_binary64_158 distribute-lft-out_binary64_30
flip-+_binary64_53 flip3-+_binary64_82
cbrt-unprod_binary64_112 prod-exp_binary64_128 add-log-exp_binary64_118
times-frac_binary64_85 rem-sqrt-square_binary64_92 sqrt-pow1_binary64_97 pow1/2_binary64_159
cbrt-undiv_binary64_113 div-exp_binary64_130 frac-times_binary64_89 associate-*r/_binary64_21 unswap-sqr_binary64_47
div-inv_binary64_76 associate-*l/_binary64_22 *-commutative_binary64_10 pow-prod-down_binary64_150
Counts
4 → 86
Calls

4 calls:

18.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
12.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
9.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
5.0ms
(sqrt.f64 (+.f64 1 (*.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))

series1.3s (8.8%)

Counts
4 → 12
Calls

4 calls:

673.0ms
(sqrt.f64 (+.f64 1 (*.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
359.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
149.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
147.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

simplify67.0ms (0.4%)

Algorithm
egg-herbie
Counts
98 → 98
Iterations

Useful iterations: 0 (41.0ms)

IterNodesCost
051702575

prune241.0ms (1.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New98098
Fresh033
Picked011
Done000
Total984102

Merged error: 0b

Counts
102 → 4
Compiler

Compiled 4600 to 3239 computations (29.6% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.7b
(/.f64 1/2 (cbrt.f64 (pow.f64 (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)))
2.7b
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
7.0b
(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)))))
10.9b
(cbrt.f64 (pow.f64 (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))

rewrite74.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
90×cbrt-prod_binary64_110
67×add-sqr-sqrt_binary64_101
66×times-frac_binary64_85
64×*-un-lft-identity_binary64_79
60×add-cube-cbrt_binary64_114
40×unpow-prod-down_binary64_158
33×sqrt-prod_binary64_95
30×cube-prod_binary64_107
21×associate-/r*_binary64_23
18×add-exp-log_binary64_117
12×associate-*l*_binary64_20
add-cbrt-cube_binary64_115 sqr-pow_binary64_51
prod-exp_binary64_128 sqrt-div_binary64_96
cube-mult_binary64_109 pow1_binary64_140 associate-*r*_binary64_19 unpow3_binary64_145
cube-div_binary64_108 flip-+_binary64_53 cbrt-div_binary64_111 unswap-sqr_binary64_47 add-log-exp_binary64_118 flip3-+_binary64_82
pow-exp_binary64_147 div-exp_binary64_130 associate-/l*_binary64_24
unpow2_binary64_144 div-inv_binary64_76 associate-*r/_binary64_21 associate-/r/_binary64_25 distribute-lft-out_binary64_30
cbrt-undiv_binary64_113 pow-to-exp_binary64_148 distribute-lft-in_binary64_28 rem-cbrt-cube_binary64_103 cbrt-unprod_binary64_112 rem-sqrt-square_binary64_92 *-commutative_binary64_10 sqrt-pow1_binary64_97 clear-num_binary64_78 pow1/2_binary64_159 pow1/3_binary64_161 distribute-rgt-in_binary64_29 frac-2neg_binary64_90
Counts
4 → 184
Calls

4 calls:

18.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
12.0ms
(/.f64 1/2 (cbrt.f64 (pow.f64 (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)))
6.0ms
(cbrt.f64 (pow.f64 (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))
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)))))

series2.7s (17.8%)

Counts
4 → 12
Calls

4 calls:

1.1s
(/.f64 1/2 (cbrt.f64 (pow.f64 (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)))
669.0ms
(cbrt.f64 (pow.f64 (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))
667.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)))))
304.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

simplify99.0ms (0.7%)

Algorithm
egg-herbie
Counts
196 → 196
Iterations

Useful iterations: 0 (27.0ms)

IterNodesCost
053798767

prune534.0ms (3.5%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1960196
Fresh022
Picked011
Done011
Total1964200

Merged error: 0b

Counts
200 → 4
Compiler

Compiled 7980 to 6167 computations (22.7% saved)

localize24.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

rewrite62.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
45×add-sqr-sqrt_binary64_101
42×*-un-lft-identity_binary64_79
39×times-frac_binary64_85
38×add-cube-cbrt_binary64_114
25×log-pow_binary64_168
24×sqrt-prod_binary64_95 exp-prod_binary64_131
18×add-exp-log_binary64_117
12×associate-*l*_binary64_20
10×unpow-prod-down_binary64_158
add-cbrt-cube_binary64_115
associate-/r*_binary64_23 prod-exp_binary64_128 sqrt-div_binary64_96 pow1_binary64_140
associate-*r*_binary64_19
flip-+_binary64_53 unswap-sqr_binary64_47 associate-/r/_binary64_25 add-log-exp_binary64_118 flip3-+_binary64_82
pow-exp_binary64_147 div-exp_binary64_130 div-inv_binary64_76 associate-/l*_binary64_24 log-prod_binary64_165
unpow2_binary64_144 sqr-pow_binary64_51 associate-*r/_binary64_21 distribute-lft-out_binary64_30
rem-log-exp_binary64_120 cbrt-undiv_binary64_113 pow-to-exp_binary64_148 distribute-lft-in_binary64_28 cbrt-unprod_binary64_112 rem-sqrt-square_binary64_92 *-commutative_binary64_10 sqrt-pow1_binary64_97 clear-num_binary64_78 pow1/2_binary64_159 distribute-rgt-in_binary64_29 frac-2neg_binary64_90
Counts
4 → 131
Calls

4 calls:

18.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)))))

series2.9s (19%)

Counts
4 → 12
Calls

4 calls:

1.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))))))
775.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))))))))
674.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)))))
316.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))

simplify91.0ms (0.6%)

Algorithm
egg-herbie
Counts
143 → 143
Iterations

Useful iterations: 0 (44.0ms)

IterNodesCost
049885281
149885281

prune359.0ms (2.4%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1430143
Fresh011
Picked011
Done022
Total1434147

Merged error: 0b

Counts
147 → 4
Compiler

Compiled 5750 to 4453 computations (22.6% saved)

regimes304.0ms (2%)

Compiler

Compiled 2054 to 2110 computations (-2.7% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02965
12965

end0.0ms (0%)

sample2.8s (18.6%)

Algorithm
intervals
Results
1.2s6330×body128valid
723.0ms798×body1024valid
371.0ms566×body512valid
123.0ms306×body256valid
Compiler

Compiled 171 to 167 computations (2.3% saved)

Profiling

Loading profile data...