Details

Time bar (total: 10.4s)

analyze774.0ms (7.5%)

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)

sample96.0ms (0.9%)

Algorithm
intervals
Results
38.0ms207×body128valid
19.0ms22×body1024valid
12.0ms18×body512valid
3.0msbody256valid
Compiler

Compiled 71 to 63 computations (11.3% saved)

simplify61.0ms (0.6%)

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

prune5.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
1.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
1.0b
(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)

localize27.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

rewrite342.0ms (3.3%)

Algorithm
rewrite-expression-head
Error
0.6b
Rules
22×add-exp-log_binary64
20×add-sqr-sqrt_binary64
17×*-un-lft-identity_binary64
13×add-cube-cbrt_binary64 unpow-prod-down_binary64
12×associate-*l*_binary64
Counts
4 → 93
Calls

4 calls:

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

Compiled 3128 to 2338 computations (25.3% saved)

series426.0ms (4.1%)

Error
0.0b
Counts
4 → 43
Calls

4 calls:

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

Compiled 3921 to 3264 computations (16.8% saved)

simplify102.0ms (1%)

Algorithm
egg-herbie
Rules
689×times-frac_binary64
350×distribute-rgt-in_binary64
325×unswap-sqr_binary64
195×associate-*l*_binary64
188×associate-*r*_binary64
Counts
136 → 104
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02493568
16213350
221453234
350493234

prune118.0ms (1.1%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1022104
Fresh000
Picked011
Done000
Total1023105
Error
0.0b
Counts
105 → 3
Alt Table
StatusErrorProgram
5.3b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 1 (*.f64 2 (*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om))))))))
1.0b
(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))))))))
27.8b
(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))))))
Compiler

Compiled 2415 to 1705 computations (29.4% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

4.0b
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
4.5b
(*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om)))
5.0b
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
7.0b
(/.f64 (*.f64 l l) Om)

rewrite357.0ms (3.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
67×times-frac_binary64
61×*-un-lft-identity_binary64
51×add-sqr-sqrt_binary64
47×add-cube-cbrt_binary64
30×unpow-prod-down_binary64
Counts
4 → 163
Calls

4 calls:

47.0ms
(*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om)))
5.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
5.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
5.0ms
(/.f64 (*.f64 l l) Om)
Compiler

Compiled 5891 to 3454 computations (41.4% saved)

series243.0ms (2.3%)

Error
0.0b
Counts
4 → 32
Calls

4 calls:

141.0ms
(*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (/.f64 (pow.f64 (sin.f64 kx) 2) Om)))
28.0ms
(/.f64 (pow.f64 (sin.f64 kx) 2) Om)
28.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
25.0ms
(/.f64 (*.f64 l l) Om)
Compiler

Compiled 2340 to 1870 computations (20.1% saved)

simplify151.0ms (1.5%)

Algorithm
egg-herbie
Rules
505×associate-/l/_binary64
369×associate-/r/_binary64
338×distribute-rgt-in_binary64
320×distribute-lft-in_binary64
206×associate-*l/_binary64
Counts
195 → 127
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02814132
16543504
221543414
348483414
449983414

prune129.0ms (1.2%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1261127
Fresh101
Picked101
Done011
Total1282130
Error
0.0b
Counts
130 → 2
Alt Table
StatusErrorProgram
1.0b
(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))))))))
4.5b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 1 (*.f64 2 (*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om)))))))))
Compiler

Compiled 2607 to 1523 computations (41.6% saved)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.7b
(/.f64 1/2 (+.f64 1 (*.f64 2 (*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om)))))))
4.5b
(*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om))))
5.0b
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
7.0b
(/.f64 (*.f64 l l) Om)

rewrite235.0ms (2.3%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
40×times-frac_binary64
38×add-sqr-sqrt_binary64
34×add-cube-cbrt_binary64 *-un-lft-identity_binary64
25×add-exp-log_binary64
22×add-cbrt-cube_binary64
Counts
4 → 135
Calls

4 calls:

19.0ms
(*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om))))
5.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
5.0ms
(/.f64 1/2 (+.f64 1 (*.f64 2 (*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om)))))))
5.0ms
(/.f64 (*.f64 l l) Om)
Compiler

Compiled 5584 to 2664 computations (52.3% saved)

series420.0ms (4.1%)

Error
0.0b
Counts
4 → 38
Calls

4 calls:

206.0ms
(/.f64 1/2 (+.f64 1 (*.f64 2 (*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om)))))))
137.0ms
(*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om))))
26.0ms
(/.f64 (pow.f64 (sin.f64 ky) 2) Om)
24.0ms
(/.f64 (*.f64 l l) Om)
Compiler

Compiled 3042 to 2429 computations (20.2% saved)

simplify135.0ms (1.3%)

Algorithm
egg-herbie
Rules
622×distribute-rgt-in_binary64
592×distribute-lft-in_binary64
216×associate-*l*_binary64
207×associate-*l/_binary64
205×associate-*r*_binary64
Counts
173 → 129
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02965277
17364571
225304553
354814553

prune133.0ms (1.3%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1290129
Fresh000
Picked011
Done011
Total1292131
Error
0.0b
Counts
131 → 2
Alt Table
StatusErrorProgram
1.0b
(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))))))))
4.5b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 1 (*.f64 2 (*.f64 (/.f64 (*.f64 l l) Om) (+.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) Om) (*.f64 (sin.f64 kx) (/.f64 (sin.f64 kx) Om)))))))))
Compiler

Compiled 3498 to 1964 computations (43.9% saved)

regimes3.7s (35.9%)

Accuracy

Total 0.3b remaining (39.8%)

Threshold costs 0.3b (39.8%)

Compiler

Compiled 77707 to 61368 computations (21% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02245
13045
22945

end8.0ms (0.1%)

Remove

(sort kx ky)

Compiler

Compiled 99 to 81 computations (18.2% saved)

sample2.8s (27.3%)

Algorithm
intervals
Results
1.2s6410×body128valid
652.0ms746×body1024valid
363.0ms581×body512valid
106.0ms263×body256valid
Compiler

Compiled 133 to 110 computations (17.3% saved)

Profiling

Loading profile data...