Details

Time bar (total: 12.0s)

analyze1.2s (10.3%)

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)

sample95.0ms (0.8%)

Algorithm
intervals
Results
24.0ms65×body1024valid
21.0ms58×body1024invalid
14.0ms146×body128valid
6.0ms24×body512valid
6.0ms24×body512invalid
4.0ms21×body256valid
3.0ms16×body256invalid
1.0ms14×body128invalid
Compiler

Compiled 39 to 34 computations (12.8% saved)

simplify142.0ms (1.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (4.0ms)

IterNodesCost
010620
110620

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 45 to 37 computations (17.8% saved)

localize10.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))

rewrite32.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
40×add-sqr-sqrt_binary64_100
38×times-frac_binary64_84
32×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
22×sqrt-prod_binary64_94 associate-*r*_binary64_18
10×add-cbrt-cube_binary64_114 add-exp-log_binary64_116
associate-/r*_binary64_22
add-log-exp_binary64_117 pow1_binary64_139
associate-*l*_binary64_19 associate-/l*_binary64_23 unswap-sqr_binary64_46
cbrt-unprod_binary64_111 cbrt-undiv_binary64_112 prod-exp_binary64_127 div-exp_binary64_129 flip-+_binary64_52 div-inv_binary64_75 associate-/l/_binary64_25 flip3-+_binary64_81
+-commutative_binary64_8 *-commutative_binary64_9 frac-2neg_binary64_89 pow-prod-down_binary64_149 associate-*r/_binary64_20 clear-num_binary64_77 sum-log_binary64_169
Counts
3 → 94
Calls

3 calls:

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

series393.0ms (3.3%)

Counts
3 → 9
Calls

3 calls:

286.0ms
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
70.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))
37.0ms
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))

simplify133.0ms (1.1%)

Algorithm
egg-herbie
Counts
103 → 103
Iterations

Useful iterations: 0 (86.0ms)

IterNodesCost
049772380
149772380

prune153.0ms (1.3%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New967103
Fresh011
Picked101
Done000
Total978105
Error
0b
Counts
105 → 8
Compiler

Compiled 2448 to 963 computations (60.7% saved)

localize24.0ms (0.2%)

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))))
6.2b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
6.2b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

rewrite164.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
540×times-frac_binary64_84
429×sqrt-prod_binary64_94
297×add-sqr-sqrt_binary64_100
295×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
48×associate-/r*_binary64_22
22×sqrt-div_binary64_95
17×associate-/r/_binary64_24
12×associate-/l*_binary64_23
11×add-cbrt-cube_binary64_114 flip-+_binary64_52 add-exp-log_binary64_116 flip3-+_binary64_81
div-inv_binary64_75
pow1_binary64_139
add-log-exp_binary64_117 cbrt-undiv_binary64_112 div-exp_binary64_129
sqrt-undiv_binary64_99
sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 frac-2neg_binary64_89 clear-num_binary64_77 associate-/l/_binary64_25 pow1/2_binary64_158
Counts
4 → 411
Calls

4 calls:

43.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
14.0ms
(/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
8.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
7.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

series206.0ms (1.7%)

Counts
4 → 12
Calls

4 calls:

59.0ms
(/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
53.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (sqrt.f64 2) (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
52.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
42.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

simplify418.0ms (3.5%)

Algorithm
egg-herbie
Counts
423 → 423
Iterations

Useful iterations: 0 (160.0ms)

IterNodesCost
0492216317
1492216317

prune750.0ms (6.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New4230423
Fresh077
Picked011
Done000
Total4238431
Error
0b
Counts
431 → 8
Compiler

Compiled 14071 to 4356 computations (69% saved)

localize29.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 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
6.2b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
6.2b
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

rewrite170.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
149×add-sqr-sqrt_binary64_100
146×times-frac_binary64_84
127×sqrt-prod_binary64_94
90×cbrt-prod_binary64_109
87×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
58×associate-*r*_binary64_18
27×add-exp-log_binary64_116
21×unswap-sqr_binary64_46
19×add-cbrt-cube_binary64_114
10×associate-*l*_binary64_19
associate-/r*_binary64_22
cbrt-unprod_binary64_111 cbrt-undiv_binary64_112 prod-exp_binary64_127 div-exp_binary64_129 pow1_binary64_139
associate-/l*_binary64_23 sqrt-div_binary64_95
add-log-exp_binary64_117
flip-+_binary64_52 div-inv_binary64_75 flip3-+_binary64_81
sqrt-pow1_binary64_96 rem-sqrt-square_binary64_91 associate-/l/_binary64_25 pow1/2_binary64_158
*-commutative_binary64_9 frac-2neg_binary64_89 frac-times_binary64_88 associate-*l/_binary64_21 pow-prod-down_binary64_149 associate-*r/_binary64_20 clear-num_binary64_77
Counts
4 → 226
Calls

4 calls:

71.0ms
(*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
17.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
8.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
8.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

series300.0ms (2.5%)

Counts
4 → 12
Calls

4 calls:

137.0ms
(/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
76.0ms
(*.f64 (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
44.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
42.0ms
(sqrt.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

simplify177.0ms (1.5%)

Algorithm
egg-herbie
Counts
238 → 238
Iterations

Useful iterations: 0 (69.0ms)

IterNodesCost
051818434

prune617.0ms (5.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2380238
Fresh066
Picked011
Done011
Total2388246
Error
0b
Counts
246 → 8
Compiler

Compiled 9735 to 4507 computations (53.7% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))

rewrite58.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
76×times-frac_binary64_84
70×add-sqr-sqrt_binary64_100
60×add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
44×sqrt-prod_binary64_94 associate-*l*_binary64_19
32×add-cbrt-cube_binary64_114 add-exp-log_binary64_116
14×pow1_binary64_139
12×cbrt-unprod_binary64_111 prod-exp_binary64_127 associate-/r*_binary64_22
cbrt-undiv_binary64_112 div-exp_binary64_129 associate-/l*_binary64_23 pow-prod-down_binary64_149 unswap-sqr_binary64_46
add-log-exp_binary64_117 div-inv_binary64_75
*-commutative_binary64_9 frac-2neg_binary64_89 associate-*r*_binary64_18 associate-*l/_binary64_21 clear-num_binary64_77
Counts
4 → 168
Calls

4 calls:

11.0ms
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
11.0ms
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
5.0ms
(/.f64 (cos.f64 th) (sqrt.f64 2))
5.0ms
(/.f64 (cos.f64 th) (sqrt.f64 2))

series370.0ms (3.1%)

Counts
4 → 12
Calls

4 calls:

135.0ms
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
125.0ms
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
56.0ms
(/.f64 (cos.f64 th) (sqrt.f64 2))
54.0ms
(/.f64 (cos.f64 th) (sqrt.f64 2))

simplify205.0ms (1.7%)

Algorithm
egg-herbie
Counts
180 → 180
Iterations

Useful iterations: 0 (144.0ms)

IterNodesCost
049642940
149642940

prune543.0ms (4.5%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1791180
Fresh145
Picked011
Done022
Total1808188
Error
0b
Counts
188 → 8
Compiler

Compiled 4606 to 2431 computations (47.2% saved)

regimes925.0ms (7.7%)

Accuracy

Total 0.5b remaining (99.4%)

Threshold costs 0.5b (99.4%)

Compiler

Compiled 8401 to 5991 computations (28.7% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
01420
11420

end0.0ms (0%)

sample4.9s (40.4%)

Algorithm
intervals
Results
883.0ms1799×body1024valid
746.0ms1522×body1024invalid
574.0ms4912×body128valid
296.0ms843×body512valid
282.0ms823×body512invalid
103.0ms441×body256valid
93.0ms393×body256invalid
78.0ms622×body128invalid
3.0msbody2048valid
1.0msbody2048invalid
Compiler

Compiled 1065 to 760 computations (28.6% saved)

Profiling

Loading profile data...