Details

Time bar (total: 5.1min)

analyze634.0ms (0.2%)

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)

sample79.0ms (0%)

Algorithm
intervals
Results
38.0ms211×body128valid
16.0ms19×body1024valid
9.0ms15×body512valid
4.0ms11×body256valid
Compiler

Compiled 59 to 63 computations (-6.8% saved)

simplify141.0ms (0%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (41.0ms)

IterNodesCost
0532539

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
1.8b
Counts
2 → 2
Compiler

Compiled 25 to 25 computations (0% saved)

localize22.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (sin.f64 kx) 2)
0.2b
(pow.f64 (/.f64 (*.f64 2 l) Om) 2)
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (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)))))))))
0.2b
(pow.f64 (sin.f64 ky) 2)
0.3b
(/.f64 1 (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.8b
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
10.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)))))

rewrite48.0ms (0%)

Algorithm
rewrite-expression-head
Rules
33×add-sqr-sqrt_binary64_441
30×*-un-lft-identity_binary64_419
26×add-cube-cbrt_binary64_454
21×times-frac_binary64_425 add-exp-log_binary64_457
15×sqrt-prod_binary64_435
13×unpow-prod-down_binary64_498
12×associate-*l*_binary64_360
add-cbrt-cube_binary64_455 pow1_binary64_480
prod-exp_binary64_468 associate-/r*_binary64_363
associate-*r*_binary64_359
sqrt-div_binary64_436 add-log-exp_binary64_458 unswap-sqr_binary64_387 pow-exp_binary64_487 div-exp_binary64_470
flip3-+_binary64_422 sqr-pow_binary64_391 pow-flip_binary64_493 flip-+_binary64_393 pow-unpow_binary64_496 unpow2_binary64_484 associate-/l*_binary64_364
pow1/2_binary64_499 div-inv_binary64_416 distribute-lft-out_binary64_370 associate-*r/_binary64_361 associate-/r/_binary64_365 pow-to-exp_binary64_488 sqrt-pow1_binary64_437
clear-num_binary64_418 1-exp_binary64_463 distribute-rgt-in_binary64_369 inv-pow_binary64_504 cbrt-unprod_binary64_452 rec-exp_binary64_469 distribute-lft-in_binary64_368 *-commutative_binary64_350 frac-2neg_binary64_430 pow-pow_binary64_491 rem-sqrt-square_binary64_432 cbrt-undiv_binary64_453
Counts
4 → 119
Calls

8 calls:

19.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 (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)
0.0ms
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (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)))))))))

series3.0s (1%)

Counts
4 → 52
Calls

4 calls:

1.3s
(/.f64 1 (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
(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)))))
571.0ms
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
22.0ms
(pow.f64 (sin.f64 ky) 2)
Compiler

Compiled 4071 to 3786 computations (7% saved)

simplify81.0ms (0%)

Algorithm
egg-herbie
Counts
171 → 171
Iterations

Useful iterations: 0 (28.0ms)

IterNodesCost
049875691
149875691

localize20.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (sin.f64 kx) 2)
0.2b
(pow.f64 (/.f64 (*.f64 2 l) Om) 2)
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.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))))))))
0.2b
(pow.f64 (sin.f64 ky) 2)
0.3b
(/.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))))))
3.8b
(*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
10.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)))))

rewrite45.0ms (0%)

Algorithm
rewrite-expression-head
Rules
33×add-sqr-sqrt_binary64_441
30×*-un-lft-identity_binary64_419
26×add-cube-cbrt_binary64_454
21×times-frac_binary64_425
19×add-exp-log_binary64_457
15×sqrt-prod_binary64_435
13×unpow-prod-down_binary64_498
12×associate-*l*_binary64_360
add-cbrt-cube_binary64_455
prod-exp_binary64_468 associate-/r*_binary64_363 pow1_binary64_480
associate-*r*_binary64_359
sqrt-div_binary64_436 add-log-exp_binary64_458 unswap-sqr_binary64_387 pow-exp_binary64_487
flip3-+_binary64_422 sqr-pow_binary64_391 flip-+_binary64_393 pow-unpow_binary64_496 unpow2_binary64_484 div-exp_binary64_470 associate-/l*_binary64_364
div-inv_binary64_416 distribute-lft-out_binary64_370 associate-*r/_binary64_361 associate-/r/_binary64_365 pow-to-exp_binary64_488
clear-num_binary64_418 distribute-rgt-in_binary64_369 pow1/2_binary64_499 cbrt-unprod_binary64_452 distribute-lft-in_binary64_368 *-commutative_binary64_350 frac-2neg_binary64_430 pow-pow_binary64_491 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432 cbrt-undiv_binary64_453
Counts
4 → 113
Calls

8 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)
0.0ms
(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))))))))

series3.2s (1%)

Counts
4 → 52
Calls

4 calls:

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

Compiled 3731 to 3446 computations (7.6% saved)

simplify81.0ms (0%)

Algorithm
egg-herbie
Counts
165 → 165
Iterations

Useful iterations: 0 (30.0ms)

IterNodesCost
049975689
149975689

prune4.0s (1.3%)

Pruning

126 alts after pruning (124 fresh and 2 done)

PrunedKeptTotal
New212124336
Fresh000
Picked000
Done022
Total212126338
Error
0.0b
Counts
338 → 126
Compiler

Compiled 13110 to 10477 computations (20.1% saved)

localize27.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (sin.f64 kx) 2)
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (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))))))))))
1.9b
(*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
4.5b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
4.5b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
10.1b
(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)))))))

rewrite52.0ms (0%)

Algorithm
rewrite-expression-head
Rules
23×*-un-lft-identity_binary64_419
19×sqrt-prod_binary64_435
18×add-sqr-sqrt_binary64_441
13×add-cbrt-cube_binary64_455 add-exp-log_binary64_457
11×add-cube-cbrt_binary64_454
10×sqrt-div_binary64_436
pow1_binary64_480
associate-*r*_binary64_359
associate-*l*_binary64_360
unpow-prod-down_binary64_498 distribute-lft-out_binary64_370
flip3-+_binary64_422 flip-+_binary64_393
add-log-exp_binary64_458 prod-exp_binary64_468 cbrt-unprod_binary64_452
times-frac_binary64_425 pow1/2_binary64_499 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432
unswap-sqr_binary64_387 frac-times_binary64_429 associate-*r/_binary64_361 div-exp_binary64_470 cbrt-undiv_binary64_453
associate-*l/_binary64_362 pow-prod-down_binary64_490 div-inv_binary64_416 *-commutative_binary64_350
Counts
4 → 86
Calls

8 calls:

17.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (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)))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
4.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)))))))
0.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (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))))))))))

series2.1s (0.7%)

Counts
4 → 56
Calls

4 calls:

1.0s
(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)))))))
665.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
218.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
195.0ms
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
Compiler

Compiled 4567 to 3849 computations (15.7% saved)

simplify101.0ms (0%)

Algorithm
egg-herbie
Counts
142 → 142
Iterations

Useful iterations: 0 (63.0ms)

IterNodesCost
049603941
149603941

localize3.0ms (0%)

rewrite0.0ms (0%)

Algorithm
rewrite-expression-head
Rules
Counts
0 → 0

series0.0ms (0%)

Counts
0 → 0

simplify8.0ms (0%)

Algorithm
egg-herbie
Counts
0 → 0
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
000

localize27.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (sin.f64 ky) 2)
0.2b
(pow.f64 (sin.f64 kx) 2)
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (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))))))))))
0.3b
(/.f64 1 (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)))))))
0.6b
(*.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.0b
(*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
10.1b
(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%)

Algorithm
rewrite-expression-head
Rules
71×add-exp-log_binary64_457
69×add-cbrt-cube_binary64_455
32×prod-exp_binary64_468 cbrt-unprod_binary64_452
29×*-un-lft-identity_binary64_419
28×add-sqr-sqrt_binary64_441
25×add-cube-cbrt_binary64_454
24×times-frac_binary64_425
18×div-exp_binary64_470
17×cbrt-undiv_binary64_453
15×sqrt-prod_binary64_435
14×associate-*l*_binary64_360 pow1_binary64_480
11×frac-times_binary64_429 associate-*r/_binary64_361
flip3-+_binary64_422 flip-+_binary64_393
associate-*r*_binary64_359 associate-/r*_binary64_363
distribute-rgt-in_binary64_369 distribute-lft-in_binary64_368
associate-*l/_binary64_362 pow-prod-down_binary64_490 sqrt-div_binary64_436 add-log-exp_binary64_458
div-inv_binary64_416 pow-flip_binary64_493 associate-/l*_binary64_364
unpow-prod-down_binary64_498 pow1/2_binary64_499 distribute-lft-out_binary64_370 associate-/r/_binary64_365 *-commutative_binary64_350 sqrt-pow1_binary64_437
clear-num_binary64_418 1-exp_binary64_463 inv-pow_binary64_504 unswap-sqr_binary64_387 rec-exp_binary64_469 frac-2neg_binary64_430 rem-sqrt-square_binary64_432
Counts
4 → 154
Calls

8 calls:

20.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))))
16.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
7.0ms
(/.f64 1 (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))))))
0.0ms
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (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.5s (1.1%)

Counts
4 → 63
Calls

4 calls:

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

Compiled 4797 to 4445 computations (7.3% saved)

simplify163.0ms (0.1%)

Algorithm
egg-herbie
Counts
217 → 217
Iterations

Useful iterations: 0 (91.0ms)

IterNodesCost
049867811
149867811

localize32.0ms (0%)

Local error

Found 8 expressions with local error:

0.0b
(*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)
0.0b
(*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)
0.0b
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))) (/.f64 (*.f64 (*.f64 l l) (*.f64 kx kx)) (*.f64 Om Om)))))))))
0.0b
(+.f64 1 (/.f64 1 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))) (/.f64 (*.f64 (*.f64 l l) (*.f64 kx kx)) (*.f64 Om Om)))))))
9.4b
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
9.4b
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
12.8b
(/.f64 (*.f64 (*.f64 l l) (*.f64 kx kx)) (*.f64 Om Om))
14.0b
(*.f64 (*.f64 l l) (*.f64 kx kx))

rewrite90.0ms (0%)

Algorithm
rewrite-expression-head
Rules
97×add-exp-log_binary64_457
76×add-sqr-sqrt_binary64_441
61×add-cbrt-cube_binary64_455
58×unpow-prod-down_binary64_498
53×prod-exp_binary64_468
41×unswap-sqr_binary64_387
37×associate-*r*_binary64_359
32×pow1_binary64_480
31×cbrt-unprod_binary64_452
27×times-frac_binary64_425
24×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
22×sqr-pow_binary64_391 unpow2_binary64_484
20×pow-exp_binary64_487
17×associate-*l*_binary64_360
16×pow-prod-down_binary64_490 div-exp_binary64_470
14×pow-to-exp_binary64_488
10×cbrt-undiv_binary64_453
add-log-exp_binary64_458 pow-plus_binary64_482 pow-prod-up_binary64_489
div-inv_binary64_416 *-commutative_binary64_350
pow-sqr_binary64_392 pow2_binary64_500
clear-num_binary64_418 frac-2neg_binary64_430 associate-/r*_binary64_363 associate-/l*_binary64_364
Counts
4 → 198
Calls

8 calls:

17.0ms
(/.f64 (*.f64 (*.f64 l l) (*.f64 kx kx)) (*.f64 Om Om))
13.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
13.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
9.0ms
(*.f64 (*.f64 l l) (*.f64 kx kx))
0.0ms
(+.f64 1 (/.f64 1 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))) (/.f64 (*.f64 (*.f64 l l) (*.f64 kx kx)) (*.f64 Om Om)))))))

series818.0ms (0.3%)

Counts
4 → 33
Calls

4 calls:

258.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
257.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
210.0ms
(/.f64 (*.f64 (*.f64 l l) (*.f64 kx kx)) (*.f64 Om Om))
93.0ms
(*.f64 (*.f64 l l) (*.f64 kx kx))
Compiler

Compiled 3792 to 3244 computations (14.5% saved)

simplify95.0ms (0%)

Algorithm
egg-herbie
Counts
231 → 231
Iterations

Useful iterations: 0 (56.0ms)

IterNodesCost
050533484

localize30.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (sin.f64 kx) 2)
0.2b
(pow.f64 (/.f64 (*.f64 2 l) Om) 2)
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))))
0.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) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))))))))))
10.1b
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))
18.3b
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
18.3b
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
18.3b
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))

rewrite22.0ms (0%)

Algorithm
rewrite-expression-head
Rules
24×cbrt-prod_binary64_450
12×add-sqr-sqrt_binary64_441
11×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
unpow-prod-down_binary64_498
pow1_binary64_480
add-log-exp_binary64_458 add-cbrt-cube_binary64_455 add-exp-log_binary64_457
pow1/3_binary64_501 sqr-pow_binary64_391 unpow2_binary64_484 sqrt-prod_binary64_435
sqrt-div_binary64_436
flip3-+_binary64_422 pow1/2_binary64_499 flip-+_binary64_393 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432
Counts
4 → 63
Calls

8 calls:

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

series1.3s (0.4%)

Counts
4 → 29
Calls

4 calls:

1.0s
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))
92.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
89.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
77.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
Compiler

Compiled 2363 to 2114 computations (10.5% saved)

simplify64.0ms (0%)

Algorithm
egg-herbie
Counts
92 → 92
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
053361981

prune21.5s (7%)

Pruning

269 alts after pruning (263 fresh and 6 done)

PrunedKeptTotal
New515167682
Fresh2396119
Picked000
Done167
Total539269808
Error
0.0b
Counts
808 → 269
Compiler

Compiled 31254 to 22959 computations (26.5% saved)

localize32.0ms (0%)

Local error

Found 8 expressions with local error:

0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))))))
10.1b
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))

rewrite60.0ms (0%)

Algorithm
rewrite-expression-head
Rules
15×cbrt-div_binary64_451
flip3-+_binary64_422 flip-+_binary64_393
frac-times_binary64_429 add-sqr-sqrt_binary64_441 associate-*r/_binary64_361
*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454 pow1_binary64_480
add-log-exp_binary64_458 add-cbrt-cube_binary64_455 add-exp-log_binary64_457
associate-*l/_binary64_362 pow1/3_binary64_501 cbrt-prod_binary64_450 sqrt-prod_binary64_435
sqrt-div_binary64_436
pow1/2_binary64_499 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432
Counts
4 → 57
Calls

8 calls:

17.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
13.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
13.0ms
(cbrt.f64 (*.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 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
0.0ms
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))))))

series5.6s (1.8%)

Counts
4 → 62
Calls

4 calls:

1.9s
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
1.3s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
1.2s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
1.2s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
Compiler

Compiled 8342 to 6952 computations (16.7% saved)

simplify105.0ms (0%)

Algorithm
egg-herbie
Counts
119 → 119
Iterations

Useful iterations: 0 (61.0ms)

IterNodesCost
049794123
149794123

localize4.0ms (0%)

rewrite0.0ms (0%)

Algorithm
rewrite-expression-head
Rules
Counts
0 → 0

series0.0ms (0%)

Counts
0 → 0

simplify8.0ms (0%)

Algorithm
egg-herbie
Counts
0 → 0
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
000

localize27.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 2 l) Om)) 2) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
0.1b
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 2 l) Om)) 2) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 2 l) Om)) 2) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))))
0.2b
(pow.f64 (sin.f64 ky) 2)
4.0b
(*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
5.1b
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 2 l) Om)) 2) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
9.9b
(sqrt.f64 (/.f64 (*.f64 2 l) Om))

rewrite38.0ms (0%)

Algorithm
rewrite-expression-head
Rules
16×*-un-lft-identity_binary64_419 add-sqr-sqrt_binary64_441
14×add-exp-log_binary64_457
13×add-cbrt-cube_binary64_455
12×add-cube-cbrt_binary64_454
10×sqrt-prod_binary64_435
pow1_binary64_480
associate-*l*_binary64_360
times-frac_binary64_425
unpow-prod-down_binary64_498 associate-*r*_binary64_359
add-log-exp_binary64_458 prod-exp_binary64_468 cbrt-unprod_binary64_452
flip3-+_binary64_422 sqrt-div_binary64_436 flip-+_binary64_393 pow-unpow_binary64_496
pow1/2_binary64_499 div-inv_binary64_416 frac-times_binary64_429 distribute-lft-out_binary64_370 associate-*r/_binary64_361 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432 div-exp_binary64_470 cbrt-undiv_binary64_453
associate-*l/_binary64_362 pow-prod-down_binary64_490 distribute-rgt-in_binary64_369 unswap-sqr_binary64_387 pow-exp_binary64_487 sqr-pow_binary64_391 pow-to-exp_binary64_488 distribute-lft-in_binary64_368 *-commutative_binary64_350 pow-pow_binary64_491 unpow2_binary64_484
Counts
4 → 86
Calls

8 calls:

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

series2.2s (0.7%)

Counts
4 → 41
Calls

4 calls:

1.6s
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (sqrt.f64 (/.f64 (*.f64 2 l) Om)) 2) (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
526.0ms
(*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
64.0ms
(sqrt.f64 (/.f64 (*.f64 2 l) Om))
26.0ms
(pow.f64 (sin.f64 ky) 2)
Compiler

Compiled 3505 to 3199 computations (8.7% saved)

simplify66.0ms (0%)

Algorithm
egg-herbie
Counts
127 → 127
Iterations

Useful iterations: 0 (35.0ms)

IterNodesCost
052642915

localize34.0ms (0%)

Local error

Found 8 expressions with local error:

0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(*.f64 1/2 (*.f64 Om (sqrt.f64 (/.f64 1/4 (*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 (/.f64 (sqrt.f64 (*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) Om) (*.f64 1/2 (*.f64 Om (sqrt.f64 (/.f64 1/4 (*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))))))
5.3b
(*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
5.3b
(*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
26.7b
(sqrt.f64 (/.f64 1/4 (*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
27.0b
(sqrt.f64 (*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))

rewrite78.0ms (0%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64_480
18×add-cbrt-cube_binary64_455 add-exp-log_binary64_457
16×*-un-lft-identity_binary64_419
15×pow-prod-down_binary64_490
10×associate-*r*_binary64_359 add-sqr-sqrt_binary64_441 sqrt-prod_binary64_435
prod-exp_binary64_468 cbrt-unprod_binary64_452
add-cube-cbrt_binary64_454 associate-*r/_binary64_361
sqrt-pow1_binary64_437
flip3-+_binary64_422 unpow-prod-down_binary64_498 add-log-exp_binary64_458 distribute-lft-out_binary64_370 flip-+_binary64_393
sqrt-div_binary64_436 times-frac_binary64_425
distribute-rgt-in_binary64_369 pow1/2_binary64_499 associate-/r/_binary64_365 distribute-lft-in_binary64_368 *-commutative_binary64_350 associate-*l*_binary64_360
div-inv_binary64_416 unswap-sqr_binary64_387 rem-sqrt-square_binary64_432
Counts
4 → 87
Calls

8 calls:

16.0ms
(*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
15.0ms
(*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
15.0ms
(sqrt.f64 (/.f64 1/4 (*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
14.0ms
(sqrt.f64 (*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (+.f64 (/.f64 (sqrt.f64 (*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) Om) (*.f64 1/2 (*.f64 Om (sqrt.f64 (/.f64 1/4 (*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))))))

series1.6s (0.5%)

Counts
4 → 42
Calls

4 calls:

578.0ms
(sqrt.f64 (/.f64 1/4 (*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
397.0ms
(sqrt.f64 (*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
354.0ms
(*.f64 (*.f64 l (*.f64 l 4)) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
265.0ms
(*.f64 (*.f64 l l) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
Compiler

Compiled 3534 to 2952 computations (16.5% saved)

simplify59.0ms (0%)

Algorithm
egg-herbie
Counts
129 → 129
Iterations

Useful iterations: 0 (29.0ms)

IterNodesCost
050932958

localize27.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (sin.f64 kx) 2)
0.2b
(pow.f64 (/.f64 (*.f64 2 l) Om) 2)
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (fabs.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))))))
10.1b
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))
18.3b
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
18.3b
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
18.3b
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))

rewrite24.0ms (0%)

Algorithm
rewrite-expression-head
Rules
24×cbrt-prod_binary64_450
12×add-sqr-sqrt_binary64_441
11×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
unpow-prod-down_binary64_498
pow1_binary64_480
add-log-exp_binary64_458 add-cbrt-cube_binary64_455 add-exp-log_binary64_457
pow1/3_binary64_501 sqr-pow_binary64_391 unpow2_binary64_484 sqrt-prod_binary64_435
sqrt-div_binary64_436
flip3-+_binary64_422 pow1/2_binary64_499 flip-+_binary64_393 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432
Counts
4 → 63
Calls

8 calls:

3.0ms
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))
3.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
3.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
3.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
0.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (fabs.f64 (sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))))))

series1.3s (0.4%)

Counts
4 → 29
Calls

4 calls:

1.1s
(sqrt.f64 (+.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 2 l) Om) 2) (+.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) 2)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2)))))))
96.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
90.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
80.0ms
(cbrt.f64 (pow.f64 (sin.f64 ky) 2))
Compiler

Compiled 2413 to 2164 computations (10.3% saved)

simplify68.0ms (0%)

Algorithm
egg-herbie
Counts
92 → 92
Iterations

Useful iterations: 0 (43.0ms)

IterNodesCost
053361981

prune26.6s (8.6%)

Pruning

370 alts after pruning (359 fresh and 11 done)

PrunedKeptTotal
New347120467
Fresh19239258
Picked000
Done01111
Total366370736
Error
0.0b
Counts
736 → 370
Compiler

Compiled 33497 to 25854 computations (22.8% saved)

localize34.0ms (0%)

Local error

Found 8 expressions with local error:

0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.0b
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (pow.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) 1/2)))))
10.1b
(pow.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) 1/2)
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))

rewrite59.0ms (0%)

Algorithm
rewrite-expression-head
Rules
15×cbrt-div_binary64_451
flip3-+_binary64_422 *-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454 frac-times_binary64_429 add-sqr-sqrt_binary64_441 associate-*r/_binary64_361 flip-+_binary64_393
add-exp-log_binary64_457 pow1_binary64_480
add-log-exp_binary64_458 add-cbrt-cube_binary64_455
associate-*l/_binary64_362 pow1/3_binary64_501 unpow-prod-down_binary64_498 cbrt-prod_binary64_450 pow-unpow_binary64_496
pow-exp_binary64_487 sqr-pow_binary64_391 pow-to-exp_binary64_488 pow-pow_binary64_491 unpow1/2_binary64_483
Counts
4 → 60
Calls

8 calls:

14.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
13.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
13.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
5.0ms
(pow.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) 1/2)
0.0ms
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (pow.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) 1/2)))))

series7.2s (2.3%)

Counts
4 → 62
Calls

4 calls:

3.4s
(pow.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) 1/2)
1.3s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
1.3s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
1.2s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
Compiler

Compiled 8760 to 7320 computations (16.4% saved)

simplify92.0ms (0%)

Algorithm
egg-herbie
Counts
122 → 122
Iterations

Useful iterations: 0 (46.0ms)

IterNodesCost
049684414
149684414

localize5.0ms (0%)

rewrite0.0ms (0%)

Algorithm
rewrite-expression-head
Rules
Counts
0 → 0

series0.0ms (0%)

Counts
0 → 0

simplify7.0ms (0%)

Algorithm
egg-herbie
Counts
0 → 0
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
000

localize39.0ms (0%)

Local error

Found 8 expressions with local error:

0.1b
(/.f64 1 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4)))
0.0b
(*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4)))) (/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om))))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (fabs.f64 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4)))) (/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om)))))))))
0.0b
(+.f64 1/2 (/.f64 1/2 (fabs.f64 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4)))) (/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om))))))))
11.5b
(/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om))
13.5b
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
13.5b
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
20.0b
(*.f64 (*.f64 ky ky) (*.f64 l l))

rewrite71.0ms (0%)

Algorithm
rewrite-expression-head
Rules
155×add-exp-log_binary64_457
99×add-cbrt-cube_binary64_455
79×prod-exp_binary64_468
47×cbrt-unprod_binary64_452
38×div-exp_binary64_470
32×pow1_binary64_480
22×cbrt-undiv_binary64_453
14×pow-prod-down_binary64_490
pow-exp_binary64_487 pow-to-exp_binary64_488
*-un-lft-identity_binary64_419 add-log-exp_binary64_458 add-cube-cbrt_binary64_454 add-sqr-sqrt_binary64_441 pow-plus_binary64_482 pow-prod-up_binary64_489
clear-num_binary64_418 times-frac_binary64_425 div-inv_binary64_416 frac-2neg_binary64_430 associate-/r*_binary64_363 associate-/l*_binary64_364
pow-sqr_binary64_392 pow2_binary64_500
associate-*r*_binary64_359 unswap-sqr_binary64_387 *-commutative_binary64_350 associate-*l*_binary64_360
Counts
4 → 128
Calls

8 calls:

14.0ms
(/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om))
11.0ms
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
11.0ms
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
9.0ms
(*.f64 (*.f64 ky ky) (*.f64 l l))
0.0ms
(+.f64 1/2 (/.f64 1/2 (fabs.f64 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om)) 4)))) (/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om))))))))

series838.0ms (0.3%)

Counts
4 → 33
Calls

4 calls:

268.0ms
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
268.0ms
(/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 l l)) (*.f64 Om Om))
210.0ms
(/.f64 (*.f64 (*.f64 ky ky) (*.f64 l l)) (*.f64 Om Om))
91.0ms
(*.f64 (*.f64 ky ky) (*.f64 l l))
Compiler

Compiled 3786 to 2932 computations (22.6% saved)

simplify65.0ms (0%)

Algorithm
egg-herbie
Counts
161 → 161
Iterations

Useful iterations: 0 (37.0ms)

IterNodesCost
051672132

localize36.0ms (0%)

Local error

Found 8 expressions with local error:

0.0b
(*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)
0.0b
(*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)
0.0b
(sqrt.f64 (*.f64 (/.f64 1 2) (+.f64 1 (/.f64 1 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))) (*.f64 (fabs.f64 (*.f64 (/.f64 l Om) kx)) (fabs.f64 (*.f64 (/.f64 l Om) kx))))))))))
0.0b
(+.f64 1 (/.f64 1 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))) (*.f64 (fabs.f64 (*.f64 (/.f64 l Om) kx)) (fabs.f64 (*.f64 (/.f64 l Om) kx))))))))
8.6b
(sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))
8.7b
(sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))))
9.4b
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
9.4b
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))

rewrite79.0ms (0%)

Algorithm
rewrite-expression-head
Rules
89×add-sqr-sqrt_binary64_441
58×unpow-prod-down_binary64_498
44×add-exp-log_binary64_457
40×unswap-sqr_binary64_387
37×times-frac_binary64_425
36×associate-*r*_binary64_359
33×*-un-lft-identity_binary64_419
32×add-cube-cbrt_binary64_454
24×prod-exp_binary64_468
22×sqr-pow_binary64_391 unpow2_binary64_484
20×pow-exp_binary64_487
18×sqrt-prod_binary64_435
16×associate-*l*_binary64_360
14×pow-to-exp_binary64_488
add-cbrt-cube_binary64_455
pow1_binary64_480
div-exp_binary64_470
add-log-exp_binary64_458 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432
sqrt-div_binary64_436 div-inv_binary64_416
flip3-+_binary64_422 pow-prod-down_binary64_490 pow1/2_binary64_499 cbrt-unprod_binary64_452 associate-/r/_binary64_365 *-commutative_binary64_350 flip-+_binary64_393
inv-pow_binary64_504 pow-flip_binary64_493
Counts
4 → 181
Calls

8 calls:

14.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
14.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
6.0ms
(sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))))
4.0ms
(sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))
0.0ms
(+.f64 1 (/.f64 1 (+.f64 (sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))) (*.f64 2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))) (*.f64 (fabs.f64 (*.f64 (/.f64 l Om) kx)) (fabs.f64 (*.f64 (/.f64 l Om) kx))))))))

series1.2s (0.4%)

Counts
4 → 44
Calls

4 calls:

315.0ms
(sqrt.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4)))
306.0ms
(sqrt.f64 (/.f64 1 (+.f64 1 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2)) 4))))
280.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
271.0ms
(*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (/.f64 l Om) 2))
Compiler

Compiled 4763 to 3685 computations (22.6% saved)

simplify89.0ms (0%)

Algorithm
egg-herbie
Counts
225 → 225
Iterations

Useful iterations: 0 (42.0ms)

IterNodesCost
050434243

localize35.0ms (0%)

Local error

Found 8 expressions with local error:

0.2b
(*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
0.2b
(/.f64 1 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
0.1b
(+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))
9.1b
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
17.7b
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
22.4b
(cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))

rewrite50.0ms (0%)

Algorithm
rewrite-expression-head
Rules
11×cbrt-div_binary64_451
cbrt-prod_binary64_450
add-sqr-sqrt_binary64_441
*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
flip3-+_binary64_422 flip-+_binary64_393 pow1_binary64_480
add-log-exp_binary64_458 frac-times_binary64_429 associate-*r/_binary64_361 add-cbrt-cube_binary64_455 add-exp-log_binary64_457
pow1/3_binary64_501 times-frac_binary64_425 sqrt-prod_binary64_435
associate-*l/_binary64_362 sqrt-div_binary64_436
pow1/2_binary64_499 div-inv_binary64_416 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432
Counts
4 → 59
Calls

8 calls:

16.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
13.0ms
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
4.0ms
(cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))
4.0ms
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
0.0ms
(/.f64 1 (sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))))

series5.3s (1.7%)

Counts
4 → 54
Calls

4 calls:

2.4s
(sqrt.f64 (+.f64 1 (*.f64 (/.f64 (*.f64 2 l) Om) (*.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
1.2s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
1.2s
(cbrt.f64 (*.f64 (/.f64 (*.f64 2 l) Om) (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
543.0ms
(cbrt.f64 (/.f64 (*.f64 l (pow.f64 (sin.f64 ky) 2)) Om))
Compiler

Compiled 6859 to 5804 computations (15.4% saved)

simplify89.0ms (0%)

Algorithm
egg-herbie
Counts
113 → 113
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
049614658
149614658

prune36.5s (11.9%)

Pruning

481 alts after pruning (466 fresh and 15 done)

PrunedKeptTotal
New498123621
Fresh11343354
Picked000
Done11516
Total510481991
Error
0.0b
Counts
991 → 481
Compiler

Compiled 23474 to 15232 computations (35.1% saved)

simplify1.5s (0.5%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (20.0ms)

IterNodesCost
0896198401

regimes1.3min (25.2%)

Compiler

Compiled 1093866 to 889915 computations (18.6% saved)

bsearch101.0ms (0%)

Compiler

Compiled 5 to 7 computations (-40% saved)

regimes55.3s (18%)

Compiler

Compiled 725466 to 599999 computations (17.3% saved)

bsearch72.0ms (0%)

Compiler

Compiled 7 to 9 computations (-28.6% saved)

regimes26.5s (8.6%)

Compiler

Compiled 336769 to 286561 computations (14.9% saved)

bsearch0.0ms (0%)

regimes2.0s (0.6%)

Compiler

Compiled 22201 to 20803 computations (6.3% saved)

bsearch0.0ms (0%)

regimes2.1s (0.7%)

Compiler

Compiled 21098 to 19811 computations (6.1% saved)

bsearch3.0ms (0%)

Compiler

Compiled 2 to 5 computations (-150% saved)

regimes1.4s (0.5%)

Compiler

Compiled 11566 to 11000 computations (4.9% saved)

bsearch2.0ms (0%)

Compiler

Compiled 2 to 5 computations (-150% saved)

regimes491.0ms (0.2%)

Compiler

Compiled 3818 to 3836 computations (-0.5% saved)

bsearch102.0ms (0%)

Steps
ItersRangePoint
7
2.579158100260435e-191
7.222955987846852e-190
6.972013279243029e-190
9
-1.9923310761319195e-162
-3.16672658780068e-169
-2.7032954679589283e-163
Compiler

Compiled 2 to 5 computations (-150% saved)

regimes752.0ms (0.2%)

Compiler

Compiled 2840 to 2864 computations (-0.8% saved)

bsearch256.0ms (0.1%)

Steps
ItersRangePoint
9
1.1533341732448266e+175
5.549053917952494e+181
5.230022574008346e+176
7
4.053251443937403e-206
1.7518554776576523e-204
1.7177684397412795e-204
9
-4.7339251338766036e-141
-1.6753290048274203e-147
-1.7015588124713997e-147
8
-2.4283709899968465e+207
-4.8758032293004596e+204
-4.9196336260896123e+204
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes445.0ms (0.1%)

Compiler

Compiled 2648 to 2680 computations (-1.2% saved)

bsearch173.0ms (0.1%)

Steps
ItersRangePoint
7
4.053251443937403e-206
1.7518554776576523e-204
1.7177684397412795e-204
9
-4.7339251338766036e-141
-1.6753290048274203e-147
-2.1004755517664194e-146
8
-2.4283709899968465e+207
-4.8758032293004596e+204
-5.524097090692549e+204
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes275.0ms (0.1%)

Compiler

Compiled 1112 to 1208 computations (-8.6% saved)

bsearch175.0ms (0.1%)

Steps
ItersRangePoint
8
2.985362870515833e-102
1.6088709269305315e-97
3.040136823878769e-102
9
-2.330470645778574e-306
2.3537975322901135e-301
4.535938700067649e-306
9
-9.755346650897043e-154
-1.6970347710731736e-159
-2.0017555155169974e-158
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes124.0ms (0%)

Compiler

Compiled 170 to 272 computations (-60% saved)

bsearch104.0ms (0%)

Steps
ItersRangePoint
7
4.053251443937403e-206
1.7518554776576523e-204
1.7177684397412795e-204
9
-4.7339251338766036e-141
-1.6753290048274203e-147
-2.8558940119130246e-146
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes40.0ms (0%)

Compiler

Compiled 20 to 92 computations (-360% saved)

bsearch39.0ms (0%)

Compiler

Compiled 858 to 689 computations (19.7% saved)

simplify15.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
02531214
12531214

end0.0ms (0%)

sample6.9s (2.2%)

Algorithm
intervals
Results
1.2s6434×body128valid
684.0ms782×body1024valid
325.0ms513×body512valid
105.0ms271×body256valid
Compiler

Compiled 63566 to 51544 computations (18.9% saved)

Profiling

Loading profile data...