Details

Time bar (total: 14.1s)

analyze995.0ms (7.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 34 to 30 computations (11.8% saved)

sample120.0ms (0.9%)

Algorithm
intervals
Results
45.0ms204×body128valid
38.0ms26×body1024valid
13.0ms17×body512valid
4.0msbody256valid
Compiler

Compiled 71 to 63 computations (11.3% saved)

simplify67.0ms (0.5%)

Algorithm
egg-herbie
Rules
575×associate-*l*_binary64
512×unswap-sqr_binary64
437×associate-*r*_binary64
407×distribute-rgt-out_binary64
369×associate-/r/_binary64
Counts
1 → 1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02442
15639
210739
342939
4203739
5485039
6480939
7552339

prune4.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
0.8b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.8b
(sqrt.f64 (+.f64 1/2 (/.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))))))))
Compiler

Compiled 87 to 75 computations (13.8% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

rewrite139.0ms (1%)

Algorithm
rewrite-expression-head
Error
0.7b
Rules
20×add-sqr-sqrt_binary64
18×add-exp-log_binary64
17×*-un-lft-identity_binary64
16×unpow-prod-down_binary64
13×add-cube-cbrt_binary64
Counts
4 → 90
Calls

4 calls:

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

Compiled 3007 to 2262 computations (24.8% saved)

series414.0ms (2.9%)

Error
0.2b
Counts
4 → 40
Calls

4 calls:

190.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)))))
145.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)
13.0ms
(pow.f64 (sin.f64 ky) 2)
Compiler

Compiled 3692 to 3071 computations (16.8% saved)

simplify248.0ms (1.8%)

Algorithm
egg-herbie
Rules
352×distribute-rgt-in_binary64
338×distribute-lft-in_binary64
324×unswap-sqr_binary64
319×times-frac_binary64
171×associate-*r*_binary64
Counts
130 → 106
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03074162
16843954
219853562
348043562
449693562

prune153.0ms (1.1%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1051106
Fresh000
Picked011
Done000
Total1052107
Error
0.0b
Counts
107 → 2
Alt Table
StatusErrorProgram
28.6b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 (*.f64 l (sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))) (*.f64 1/2 (/.f64 (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))))) l))))))
0.8b
(sqrt.f64 (+.f64 1/2 (/.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))))))))
Compiler

Compiled 2185 to 1608 computations (26.4% saved)

localize57.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

rewrite586.0ms (4.2%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
51×times-frac_binary64
41×add-sqr-sqrt_binary64
40×*-un-lft-identity_binary64
40×add-cube-cbrt_binary64
24×unpow-prod-down_binary64
Counts
4 → 144
Calls

4 calls:

81.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)))))
65.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))
11.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
9.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
Compiler

Compiled 8249 to 5463 computations (33.8% saved)

series609.0ms (4.3%)

Error
0.0b
Counts
4 → 37
Calls

4 calls:

244.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)))))
205.0ms
(sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))
52.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
51.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
Compiler

Compiled 4785 to 3462 computations (27.6% saved)

simplify295.0ms (2.1%)

Algorithm
egg-herbie
Rules
887×times-frac_binary64
800×associate-/l*_binary64
272×associate-/r/_binary64
194×associate-/l/_binary64
122×*-commutative_binary64
Counts
181 → 130
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03736208
17895780
220135698
354465698

prune224.0ms (1.6%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1300130
Fresh000
Picked011
Done011
Total1302132
Error
0.0b
Counts
132 → 2
Alt Table
StatusErrorProgram
28.6b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 (*.f64 l (sqrt.f64 (*.f64 (/.f64 4 Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))) (*.f64 1/2 (/.f64 (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))))) l))))))
0.8b
(sqrt.f64 (+.f64 1/2 (/.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))))))))
Compiler

Compiled 4822 to 3131 computations (35.1% saved)

regimes3.9s (28%)

Accuracy

Total 0.6b remaining (79.2%)

Threshold costs 0.6b (79.2%)

Compiler

Compiled 57048 to 45644 computations (20% saved)

simplify6.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02245
13045
22945

end15.0ms (0.1%)

Remove

(sort kx ky)

Compiler

Compiled 99 to 81 computations (18.2% saved)

sample6.2s (43.9%)

Algorithm
intervals
Results
2.7s6423×body128valid
1.5s719×body1024valid
855.0ms557×body512valid
268.0ms301×body256valid
Compiler

Compiled 154 to 126 computations (18.2% saved)

Profiling

Loading profile data...