Details

Time bar (total: 9.3s)

analyze752.0ms (8.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
25%74.9%0.1%6
25%74.9%0.1%7
25%74.9%0.1%8
25%74.9%0.1%9
25%64%11.1%10
31.2%54.6%14.2%11
39%44.1%16.9%12
39%41.5%19.5%13
42.9%37%20.1%14
Compiler

Compiled 20 to 16 computations (20% saved)

sample80.0ms (0.9%)

Algorithm
intervals
Results
16.0ms53×body1024valid
15.0ms49×body1024invalid
13.0ms165×body128valid
12.0ms31×body512valid
7.0ms30×body512invalid
2.0ms13×body256invalid
2.0ms20×body128invalid
1.0msbody256valid
Compiler

Compiled 39 to 34 computations (12.8% saved)

simplify94.0ms (1%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (4.0ms)

IterNodesCost
010620
110620

prune5.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 0.3b

Counts
2 → 2
Compiler

Compiled 45 to 37 computations (17.8% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))
0.2b
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
0.4b
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))

rewrite37.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
40×add-sqr-sqrt_binary64_441
38×times-frac_binary64_425
32×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
22×associate-*r*_binary64_359 sqrt-prod_binary64_435
10×add-cbrt-cube_binary64_455 add-exp-log_binary64_457
associate-/r*_binary64_363
add-log-exp_binary64_458 pow1_binary64_480
unswap-sqr_binary64_387 associate-*l*_binary64_360 associate-/l*_binary64_364
flip3-+_binary64_422 div-inv_binary64_416 prod-exp_binary64_468 cbrt-unprod_binary64_452 flip-+_binary64_393 div-exp_binary64_470 cbrt-undiv_binary64_453 associate-/l/_binary64_366
pow-prod-down_binary64_490 clear-num_binary64_418 sum-log_binary64_510 associate-*r/_binary64_361 *-commutative_binary64_350 frac-2neg_binary64_430 +-commutative_binary64_349
Counts
3 → 94
Calls

3 calls:

13.0ms
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
12.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))
4.0ms
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))

series249.0ms (2.7%)

Counts
3 → 9
Calls

3 calls:

176.0ms
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
51.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))
21.0ms
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))

simplify80.0ms (0.9%)

Algorithm
egg-herbie
Counts
103 → 103
Iterations

Useful iterations: 0 (55.0ms)

IterNodesCost
049772380
149772380

prune127.0ms (1.4%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New967103
Fresh011
Picked101
Done000
Total978105

Merged error: 0b

Counts
105 → 8
Compiler

Compiled 2433 to 953 computations (60.8% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
0.3b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cos.f64 th)) (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
8.1b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
8.1b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

rewrite83.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
108×times-frac_binary64_425
102×sqrt-prod_binary64_435
86×add-sqr-sqrt_binary64_441
84×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
78×cbrt-prod_binary64_450
58×associate-*r*_binary64_359
38×add-exp-log_binary64_457
29×add-cbrt-cube_binary64_455
16×prod-exp_binary64_468 cbrt-unprod_binary64_452
11×pow1_binary64_480
associate-/r*_binary64_363 div-exp_binary64_470 cbrt-undiv_binary64_453
sqrt-div_binary64_436 associate-/l*_binary64_364
add-log-exp_binary64_458
flip3-+_binary64_422 associate-*l/_binary64_362 pow-prod-down_binary64_490 flip-+_binary64_393
pow1/2_binary64_499 div-inv_binary64_416 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432 associate-/l/_binary64_366
clear-num_binary64_418 frac-times_binary64_429 associate-*r/_binary64_361 *-commutative_binary64_350 associate-*l*_binary64_360 frac-2neg_binary64_430
Counts
4 → 201
Calls

4 calls:

31.0ms
(*.f64 (*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cos.f64 th)) (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
9.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

series272.0ms (2.9%)

Counts
4 → 12
Calls

4 calls:

120.0ms
(*.f64 (*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cos.f64 th)) (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
104.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
25.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
22.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

simplify144.0ms (1.6%)

Algorithm
egg-herbie
Counts
213 → 213
Iterations

Useful iterations: 0 (80.0ms)

IterNodesCost
049646988
149646988

prune368.0ms (4%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2130213
Fresh077
Picked011
Done000
Total2138221

Merged error: 0b

Counts
221 → 8
Compiler

Compiled 8410 to 3723 computations (55.7% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))
0.2b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 2))))
0.2b
(/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 2)))
0.3b
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))

rewrite247.0ms (2.7%)

Algorithm
rewrite-expression-head
Rules
1137×sqrt-prod_binary64_435
1119×times-frac_binary64_425
625×add-sqr-sqrt_binary64_441
578×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
283×associate-*r*_binary64_359
34×associate-/l*_binary64_364
22×div-inv_binary64_416
20×add-cbrt-cube_binary64_455 add-exp-log_binary64_457
18×associate-/r*_binary64_363
13×unswap-sqr_binary64_387
div-exp_binary64_470 cbrt-undiv_binary64_453
add-log-exp_binary64_458 pow1_binary64_480
prod-exp_binary64_468 cbrt-unprod_binary64_452 associate-*l*_binary64_360 associate-/l/_binary64_366
flip3-+_binary64_422 clear-num_binary64_418 frac-2neg_binary64_430 flip-+_binary64_393
pow-prod-down_binary64_490 sum-log_binary64_510 associate-*r/_binary64_361 *-commutative_binary64_350 +-commutative_binary64_349
Counts
4 → 713
Calls

4 calls:

82.0ms
(*.f64 (cos.f64 th) (/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 2))))
20.0ms
(/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 2)))
9.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))
4.0ms
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))

series294.0ms (3.2%)

Counts
4 → 12
Calls

4 calls:

151.0ms
(*.f64 (cos.f64 th) (/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 2))))
68.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))
54.0ms
(/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2))) (sqrt.f64 (sqrt.f64 2)))
21.0ms
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))

simplify275.0ms (3%)

Algorithm
egg-herbie
Counts
725 → 725
Iterations

Useful iterations: 0 (68.0ms)

IterNodesCost
0514726176

prune1.4s (15.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New7250725
Fresh066
Picked011
Done011
Total7258733

Merged error: 0b

Counts
733 → 8
Compiler

Compiled 23981 to 11851 computations (50.6% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
0.4b
(/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
8.1b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
8.1b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

rewrite107.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
540×times-frac_binary64_425
429×sqrt-prod_binary64_435
297×add-sqr-sqrt_binary64_441
295×*-un-lft-identity_binary64_419 add-cube-cbrt_binary64_454
48×associate-/r*_binary64_363
22×sqrt-div_binary64_436
17×associate-/r/_binary64_365
12×associate-/l*_binary64_364
11×flip3-+_binary64_422 flip-+_binary64_393 add-cbrt-cube_binary64_455 add-exp-log_binary64_457
div-inv_binary64_416
pow1_binary64_480
add-log-exp_binary64_458 div-exp_binary64_470 cbrt-undiv_binary64_453
sqrt-undiv_binary64_440
clear-num_binary64_418 pow1/2_binary64_499 frac-2neg_binary64_430 sqrt-pow1_binary64_437 rem-sqrt-square_binary64_432 associate-/l/_binary64_366
Counts
4 → 411
Calls

4 calls:

21.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
8.0ms
(/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
4.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

series141.0ms (1.5%)

Counts
4 → 12
Calls

4 calls:

49.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
47.0ms
(/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
22.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
22.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

simplify232.0ms (2.5%)

Algorithm
egg-herbie
Counts
423 → 423
Iterations

Useful iterations: 0 (84.0ms)

IterNodesCost
0492216317
1492216317

prune509.0ms (5.5%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New4230423
Fresh055
Picked011
Done022
Total4238431

Merged error: 0b

Counts
431 → 8
Compiler

Compiled 13899 to 4227 computations (69.6% saved)

regimes587.0ms (6.3%)

Compiler

Compiled 7248 to 5367 computations (26% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01732
11732

end0.0ms (0%)

sample3.1s (33.8%)

Algorithm
intervals
Results
553.0ms1775×body1024valid
479.0ms1515×body1024invalid
371.0ms4878×body128valid
208.0ms916×body512valid
168.0ms766×body512invalid
72.0ms428×body256valid
60.0ms386×body256invalid
58.0ms669×body128invalid
1.0msbody2048valid
Compiler

Compiled 932 to 692 computations (25.8% saved)

Profiling

Loading profile data...