Details

Time bar (total: 29.8s)

analyze1.4s (4.5%)

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
Compiler

Compiled 30 to 30 computations (0% saved)

sample154.0ms (0.5%)

Algorithm
intervals
Results
65.0ms208×body128valid
31.0ms22×body1024valid
17.0ms16×body512valid
7.0ms10×body256valid
Compiler

Compiled 59 to 63 computations (-6.8% saved)

simplify90.0ms (0.3%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (78.0ms)

IterNodesCost
0532539

prune10.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 50 to 50 computations (0% saved)

localize47.0ms (0.2%)

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

rewrite88.0ms (0.3%)

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:

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

series5.6s (18.7%)

Counts
4 → 55
Calls

4 calls:

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

Compiled 3971 to 3638 computations (8.4% saved)

simplify148.0ms (0.5%)

Algorithm
egg-herbie
Counts
168 → 168
Iterations

Useful iterations: 0 (62.0ms)

IterNodesCost
050575785

prune703.0ms (2.4%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1662168
Fresh000
Picked101
Done000
Total1672169
Error
0.0b
Counts
169 → 2
Compiler

Compiled 5746 to 4206 computations (26.8% saved)

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

rewrite79.0ms (0.3%)

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

4 calls:

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

series5.4s (18%)

Counts
4 → 55
Calls

4 calls:

2.8s
(/.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)))))))
1.6s
(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))))))
885.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
43.0ms
(pow.f64 (sin.f64 kx) 2)
Compiler

Compiled 4039 to 3638 computations (9.9% saved)

simplify165.0ms (0.6%)

Algorithm
egg-herbie
Counts
164 → 164
Iterations

Useful iterations: 0 (72.0ms)

IterNodesCost
051595640

prune561.0ms (1.9%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1631164
Fresh101
Picked011
Done000
Total1642166
Error
0.0b
Counts
166 → 2
Compiler

Compiled 5972 to 4092 computations (31.5% saved)

localize56.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.9b
(/.f64 1/2 (+.f64 (*.f64 l (sqrt.f64 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) (*.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) l))))
1.1b
(/.f64 (sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) l)
29.0b
(sqrt.f64 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))
29.8b
(sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om))))

rewrite169.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
63×times-frac_binary64_84
51×sqrt-prod_binary64_94
41×add-sqr-sqrt_binary64_100
40×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
20×associate-/r/_binary64_24
16×associate-/l*_binary64_23
13×associate-*r/_binary64_20
11×pow1_binary64_139
add-cbrt-cube_binary64_114 add-exp-log_binary64_116 sqrt-div_binary64_95
div-inv_binary64_75 frac-times_binary64_88 associate-*l/_binary64_21
sqrt-pow1_binary64_96 associate-/r*_binary64_22
add-log-exp_binary64_117
frac-add_binary64_86
cbrt-undiv_binary64_112 div-exp_binary64_129 frac-2neg_binary64_89 pow-flip_binary64_152 pow-prod-down_binary64_149 clear-num_binary64_77 pow1/2_binary64_158
inv-pow_binary64_163 flip-+_binary64_52 rem-sqrt-square_binary64_91 associate-/l/_binary64_25 flip3-+_binary64_81
Counts
4 → 138
Calls

4 calls:

42.0ms
(/.f64 1/2 (+.f64 (*.f64 l (sqrt.f64 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) (*.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) l))))
35.0ms
(/.f64 (sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) l)
28.0ms
(sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om))))
22.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))

series5.5s (18.6%)

Counts
4 → 54
Calls

4 calls:

2.6s
(/.f64 1/2 (+.f64 (*.f64 l (sqrt.f64 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) (*.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) l))))
1.4s
(/.f64 (sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))) l)
837.0ms
(sqrt.f64 (/.f64 1 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om))))
662.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)) Om)))
Compiler

Compiled 4444 to 3651 computations (17.8% saved)

simplify195.0ms (0.7%)

Algorithm
egg-herbie
Counts
192 → 192
Iterations

Useful iterations: 0 (60.0ms)

IterNodesCost
050337955

prune1.2s (4.1%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1920192
Fresh000
Picked011
Done011
Total1922194
Error
0.0b
Counts
194 → 2
Compiler

Compiled 10088 to 6854 computations (32.1% saved)

regimes2.0s (6.8%)

Accuracy

Total 0.7b remaining (93.2%)

Threshold costs 0.7b (93.2%)

Compiler

Compiled 11388 to 10704 computations (6% saved)

bsearch0.0ms (0%)

simplify23.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02965
12965
Compiler

Compiled 82 to 70 computations (14.6% saved)

end0.0ms (0%)

sample6.2s (20.8%)

Algorithm
intervals
Results
2.1s6359×body128valid
1.2s766×body1024valid
635.0ms559×body512valid
241.0ms315×body256valid
2.0msbody2048valid
Compiler

Compiled 609 to 564 computations (7.4% saved)

Profiling

Loading profile data...