Details

Time bar (total: 4.5s)

analyze514.0ms (11.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
6.2%93.6%0.2%8
25%74.9%0.2%9
28.1%71.7%0.2%10
29.6%70.2%0.2%11
53%46.8%0.2%12
71.3%28.5%0.2%13
71.7%28.1%0.2%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample21.0ms (0.5%)

Algorithm
intervals
Results
11.0ms256×body128valid
1.0ms16×body128invalid
Compiler

Compiled 31 to 27 computations (12.9% saved)

simplify164.0ms (3.7%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
01830
11830

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 28.2b

Counts
2 → 1
Compiler

Compiled 30 to 22 computations (26.7% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

0.3b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
27.6b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite19.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64_1111 add-sqr-sqrt_binary64_1133 add-cube-cbrt_binary64_1146
times-frac_binary64_1117
add-cbrt-cube_binary64_1147 add-log-exp_binary64_1150 add-exp-log_binary64_1149
flip-+_binary64_1085 associate-/r*_binary64_1055 associate-/l*_binary64_1056 flip3-+_binary64_1114
associate-/l/_binary64_1058 pow1_binary64_1172 associate-/r/_binary64_1057
div-inv_binary64_1108 frac-2neg_binary64_1122 +-commutative_binary64_1041 div-exp_binary64_1162 cbrt-undiv_binary64_1145 sum-log_binary64_1202 clear-num_binary64_1110
Counts
2 → 42
Calls

2 calls:

10.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
5.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

series239.0ms (5.4%)

Counts
2 → 6
Calls

2 calls:

174.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
65.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

simplify66.0ms (1.5%)

Algorithm
egg-herbie
Counts
48 → 48
Iterations

Useful iterations: 0 (46.0ms)

IterNodesCost
054491541

prune365.0ms (8.2%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New381048
Fresh000
Picked101
Done000
Total391049

Merged error: 27.3b

Counts
49 → 10
Compiler

Compiled 7364 to 4630 computations (37.1% saved)

localize18.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.3b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
18.2b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
29.6b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
29.6b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite45.0ms (1%)

Algorithm
rewrite-expression-head
Rules
43×*-un-lft-identity_binary64_1111
28×sqrt-prod_binary64_1127
25×add-sqr-sqrt_binary64_1133
24×times-frac_binary64_1117
23×add-cube-cbrt_binary64_1146
10×unpow-prod-down_binary64_1190 distribute-lft-out_binary64_1062
associate-/r*_binary64_1055
add-cbrt-cube_binary64_1147 sqrt-div_binary64_1128 add-log-exp_binary64_1150 pow1_binary64_1172 add-exp-log_binary64_1149
flip-+_binary64_1085 flip3-+_binary64_1114
associate-/l*_binary64_1056
pow1/2_binary64_1191 rem-sqrt-square_binary64_1124 associate-/l/_binary64_1058 sqrt-pow1_binary64_1129 associate-/r/_binary64_1057
div-inv_binary64_1108 frac-2neg_binary64_1122 +-commutative_binary64_1041 div-exp_binary64_1162 cbrt-undiv_binary64_1145 sum-log_binary64_1202 clear-num_binary64_1110
Counts
4 → 94
Calls

4 calls:

16.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
9.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
5.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

series397.0ms (8.9%)

Counts
4 → 12
Calls

4 calls:

226.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
78.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
50.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
43.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify64.0ms (1.4%)

Algorithm
egg-herbie
Counts
106 → 106
Iterations

Useful iterations: 0 (30.0ms)

IterNodesCost
049633187
149633187

prune248.0ms (5.5%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1015106
Fresh639
Picked011
Done000
Total1079116

Merged error: 23.6b

Counts
116 → 9
Compiler

Compiled 5392 to 2875 computations (46.7% saved)

localize21.0ms (0.5%)

Local error

Found 4 expressions with local error:

0.3b
(+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
18.2b
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
29.6b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
29.6b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite47.0ms (1%)

Algorithm
rewrite-expression-head
Rules
43×*-un-lft-identity_binary64_1111
28×sqrt-prod_binary64_1127
25×add-sqr-sqrt_binary64_1133
24×times-frac_binary64_1117
23×add-cube-cbrt_binary64_1146
10×unpow-prod-down_binary64_1190 distribute-lft-out_binary64_1062
associate-/l*_binary64_1056
add-cbrt-cube_binary64_1147 sqrt-div_binary64_1128 add-log-exp_binary64_1150 pow1_binary64_1172 add-exp-log_binary64_1149
flip-+_binary64_1085 flip3-+_binary64_1114
associate-/r*_binary64_1055
pow1/2_binary64_1191 rem-sqrt-square_binary64_1124 associate-/l/_binary64_1058 sqrt-pow1_binary64_1129 associate-/r/_binary64_1057
div-inv_binary64_1108 frac-2neg_binary64_1122 +-commutative_binary64_1041 div-exp_binary64_1162 cbrt-undiv_binary64_1145 sum-log_binary64_1202 clear-num_binary64_1110
Counts
4 → 94
Calls

4 calls:

17.0ms
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.0ms
(+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))

series300.0ms (6.7%)

Counts
4 → 12
Calls

4 calls:

151.0ms
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
64.0ms
(+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
46.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
40.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify82.0ms (1.8%)

Algorithm
egg-herbie
Counts
106 → 106
Iterations

Useful iterations: 0 (48.0ms)

IterNodesCost
050773253

prune169.0ms (3.8%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New1060106
Fresh077
Picked011
Done011
Total1069115

Merged error: 23.6b

Counts
115 → 9
Compiler

Compiled 3975 to 1858 computations (53.3% saved)

localize12.0ms (0.3%)

Local error

Found 3 expressions with local error:

0.3b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.4b
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
27.4b
(/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))

rewrite60.0ms (1.3%)

Algorithm
rewrite-expression-head
Rules
138×times-frac_binary64_1117
135×*-un-lft-identity_binary64_1111
71×add-sqr-sqrt_binary64_1133 add-cube-cbrt_binary64_1146
32×unpow-prod-down_binary64_1190 distribute-lft-out_binary64_1062
24×associate-/r*_binary64_1055
16×add-exp-log_binary64_1149
11×associate-/r/_binary64_1057
10×add-cbrt-cube_binary64_1147
associate-/l*_binary64_1056 div-exp_binary64_1162
flip-+_binary64_1085 flip3-+_binary64_1114
div-inv_binary64_1108
add-log-exp_binary64_1150
cbrt-undiv_binary64_1145 pow1_binary64_1172
frac-2neg_binary64_1122 associate-/l/_binary64_1058 1-exp_binary64_1155 rec-exp_binary64_1161 clear-num_binary64_1110
pow-flip_binary64_1185 +-commutative_binary64_1041 sum-log_binary64_1202 inv-pow_binary64_1196
Counts
3 → 158
Calls

3 calls:

19.0ms
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
15.0ms
(/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
4.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

series431.0ms (9.7%)

Counts
3 → 9
Calls

3 calls:

253.0ms
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
104.0ms
(/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
73.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

simplify119.0ms (2.7%)

Algorithm
egg-herbie
Counts
167 → 167
Iterations

Useful iterations: 0 (58.0ms)

IterNodesCost
054447063

prune201.0ms (4.5%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New1670167
Fresh066
Picked011
Done022
Total1679176

Merged error: 23.6b

Counts
176 → 9
Compiler

Compiled 4758 to 2202 computations (53.7% saved)

regimes78.0ms (1.7%)

Compiler

Compiled 556 to 508 computations (8.6% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02648
12648

end0.0ms (0%)

sample772.0ms (17.3%)

Algorithm
intervals
Results
329.0ms8000×body128valid
18.0ms463×body128invalid
Compiler

Compiled 178 to 154 computations (13.5% saved)

Profiling

Loading profile data...