Details

Time bar (total: 4.4s)

analyze7.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%50%50%0
0%50%50%1
0%50%50%2
0%50%50%3
37.5%12.5%50%4
43.7%6.2%50%5
46.9%3.1%50%6
48.4%1.6%50%7
49.2%0.8%50%8
49.6%0.4%50%9
49.8%0.2%50%10
49.9%0.1%50%11
49.9%0%50%12
50%0%50%13
50%0%50%14
Compiler

Compiled 29 to 20 computations (31% saved)

sample23.0ms (0.5%)

Algorithm
intervals
Results
13.0ms256×body128valid
3.0ms256×pre128true
Compiler

Compiled 54 to 38 computations (29.6% saved)

simplify208.0ms (4.8%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (43.0ms)

IterNodesCost
0498313
1498313

prune5.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 0.4b

Counts
2 → 2
Compiler

Compiled 43 to 33 computations (23.3% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.4b
(/.f64 1 (*.f64 i i))
0.5b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))

rewrite21.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
37×add-sqr-sqrt_binary64_1123
35×times-frac_binary64_1107
33×*-un-lft-identity_binary64_1101
17×add-cube-cbrt_binary64_1136
15×add-exp-log_binary64_1139
12×difference-of-squares_binary64_1070
10×pow1_binary64_1162
add-cbrt-cube_binary64_1137 associate-/r*_binary64_1045
distribute-lft-out--_binary64_1053
div-inv_binary64_1098 associate-/l*_binary64_1046 pow-flip_binary64_1175
div-exp_binary64_1152
prod-exp_binary64_1150 cbrt-undiv_binary64_1135
1-exp_binary64_1145 add-log-exp_binary64_1140 frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/r/_binary64_1047 rec-exp_binary64_1151
inv-pow_binary64_1186 pow-plus_binary64_1164 cbrt-unprod_binary64_1134 pow-prod-up_binary64_1171 flip--_binary64_1076 flip3--_binary64_1105 pow-sqr_binary64_1074 pow-prod-down_binary64_1172 pow2_binary64_1182
Counts
2 → 81
Calls

2 calls:

9.0ms
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
5.0ms
(/.f64 1 (*.f64 i i))

series58.0ms (1.3%)

Counts
2 → 6
Calls

2 calls:

35.0ms
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
23.0ms
(/.f64 1 (*.f64 i i))

simplify78.0ms (1.8%)

Algorithm
egg-herbie
Counts
87 → 87
Iterations

Useful iterations: 0 (62.0ms)

IterNodesCost
050401212

prune89.0ms (2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New85287
Fresh011
Picked011
Done000
Total85489

Merged error: 0b

Counts
89 → 4
Compiler

Compiled 1256 to 961 computations (23.5% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.1b
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))
0.1b
(/.f64 1/2 (+.f64 2 (/.f64 1 i)))

rewrite79.0ms (1.8%)

Algorithm
rewrite-expression-head
Rules
108×add-sqr-sqrt_binary64_1123
96×*-un-lft-identity_binary64_1101 times-frac_binary64_1107
47×add-cube-cbrt_binary64_1136
30×associate-*r*_binary64_1041
21×difference-of-squares_binary64_1070 associate-*l*_binary64_1042
19×add-exp-log_binary64_1139 add-cbrt-cube_binary64_1137
18×div-inv_binary64_1098
14×distribute-lft-out_binary64_1052 distribute-lft-out--_binary64_1053
13×associate-/r*_binary64_1045
associate-/r/_binary64_1047
associate-/l*_binary64_1046 div-exp_binary64_1152 cbrt-undiv_binary64_1135
pow1_binary64_1162
cbrt-unprod_binary64_1134 prod-exp_binary64_1150 unswap-sqr_binary64_1069
add-log-exp_binary64_1140
frac-2neg_binary64_1112 clear-num_binary64_1100 flip--_binary64_1076 flip3--_binary64_1105 flip3-+_binary64_1104 flip-+_binary64_1075
*-commutative_binary64_1032 frac-times_binary64_1111 associate-*r/_binary64_1043 pow-prod-down_binary64_1172 associate-*l/_binary64_1044
Counts
3 → 161
Calls

3 calls:

39.0ms
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
10.0ms
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))
10.0ms
(/.f64 1/2 (+.f64 2 (/.f64 1 i)))

series80.0ms (1.8%)

Counts
3 → 9
Calls

3 calls:

43.0ms
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
19.0ms
(/.f64 1/2 (+.f64 2 (/.f64 1 i)))
18.0ms
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))

simplify95.0ms (2.2%)

Algorithm
egg-herbie
Counts
170 → 170
Iterations

Useful iterations: 0 (59.0ms)

IterNodesCost
051493334

prune247.0ms (5.7%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1700170
Fresh022
Picked011
Done011
Total1704174

Merged error: 0b

Counts
174 → 4
Compiler

Compiled 3809 to 3305 computations (13.2% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.1b
(/.f64 (/.f64 1/4 (+.f64 2 (fabs.f64 (/.f64 1 i)))) (-.f64 (sqrt.f64 4) (sqrt.f64 (/.f64 1 (*.f64 i i)))))
0.1b
(/.f64 1/4 (+.f64 2 (fabs.f64 (/.f64 1 i))))
0.4b
(/.f64 1 (*.f64 i i))
26.7b
(sqrt.f64 (/.f64 1 (*.f64 i i)))

rewrite120.0ms (2.8%)

Algorithm
rewrite-expression-head
Rules
528×times-frac_binary64_1107
424×add-sqr-sqrt_binary64_1123
388×*-un-lft-identity_binary64_1101
273×sqrt-prod_binary64_1117
156×add-cube-cbrt_binary64_1136
152×difference-of-squares_binary64_1070
57×distribute-lft-out--_binary64_1053
49×distribute-lft-out_binary64_1052
38×div-inv_binary64_1098
34×associate-/r/_binary64_1047
24×associate-/l*_binary64_1046
22×add-exp-log_binary64_1139
21×pow1_binary64_1162
19×associate-/r*_binary64_1045
16×flip3-+_binary64_1104 add-cbrt-cube_binary64_1137 flip-+_binary64_1075
12×pow-flip_binary64_1175
sqrt-pow1_binary64_1119 div-exp_binary64_1152
cbrt-undiv_binary64_1135
add-log-exp_binary64_1140
rem-sqrt-square_binary64_1114 prod-exp_binary64_1150 frac-2neg_binary64_1112 clear-num_binary64_1100
inv-pow_binary64_1186 pow-plus_binary64_1164 1-exp_binary64_1145 pow-prod-up_binary64_1171 pow-sqr_binary64_1074 rec-exp_binary64_1151 pow-prod-down_binary64_1172 pow2_binary64_1182
cbrt-unprod_binary64_1134 flip--_binary64_1076 flip3--_binary64_1105 associate-/l/_binary64_1048 sqrt-div_binary64_1118 pow1/2_binary64_1181
Counts
4 → 393
Calls

4 calls:

26.0ms
(/.f64 (/.f64 1/4 (+.f64 2 (fabs.f64 (/.f64 1 i)))) (-.f64 (sqrt.f64 4) (sqrt.f64 (/.f64 1 (*.f64 i i)))))
6.0ms
(/.f64 1/4 (+.f64 2 (fabs.f64 (/.f64 1 i))))
5.0ms
(/.f64 1 (*.f64 i i))
5.0ms
(sqrt.f64 (/.f64 1 (*.f64 i i)))

series192.0ms (4.4%)

Counts
4 → 12
Calls

4 calls:

102.0ms
(/.f64 (/.f64 1/4 (+.f64 2 (fabs.f64 (/.f64 1 i)))) (-.f64 (sqrt.f64 4) (sqrt.f64 (/.f64 1 (*.f64 i i)))))
57.0ms
(/.f64 1/4 (+.f64 2 (fabs.f64 (/.f64 1 i))))
23.0ms
(/.f64 1 (*.f64 i i))
10.0ms
(sqrt.f64 (/.f64 1 (*.f64 i i)))

simplify219.0ms (5%)

Algorithm
egg-herbie
Counts
405 → 405
Iterations

Useful iterations: 0 (89.0ms)

IterNodesCost
0487615012
1487615012

prune1.0s (23.6%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New4050405
Fresh011
Picked011
Done022
Total4054409

Merged error: 0b

Counts
409 → 4
Compiler

Compiled 11675 to 10170 computations (12.9% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.1b
(*.f64 (*.f64 i i) (*.f64 i i))
14.1b
(/.f64 (/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i))) (-.f64 (*.f64 (*.f64 2 i) (*.f64 2 i)) 1))
41.3b
(/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i)))

rewrite129.0ms (3%)

Algorithm
rewrite-expression-head
Rules
302×add-exp-log_binary64_1139 add-cbrt-cube_binary64_1137
168×cbrt-unprod_binary64_1134 prod-exp_binary64_1150
114×pow1_binary64_1162
76×div-exp_binary64_1152 cbrt-undiv_binary64_1135
38×times-frac_binary64_1107
36×pow-prod-up_binary64_1171
23×pow-prod-down_binary64_1172
22×add-sqr-sqrt_binary64_1123 *-un-lft-identity_binary64_1101 pow-sqr_binary64_1074
18×pow-plus_binary64_1164
16×add-cube-cbrt_binary64_1136
13×pow2_binary64_1182
12×difference-of-squares_binary64_1070
div-inv_binary64_1098
associate-/r*_binary64_1045
difference-of-sqr-1_binary64_1071 associate-/l*_binary64_1046
add-log-exp_binary64_1140
frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/r/_binary64_1047
*-commutative_binary64_1032 flip--_binary64_1076 flip3--_binary64_1105 associate-/l/_binary64_1048 swap-sqr_binary64_1068 associate-*r*_binary64_1041 associate-*l*_binary64_1042 unswap-sqr_binary64_1069
Counts
3 → 232
Calls

3 calls:

40.0ms
(/.f64 (/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i))) (-.f64 (*.f64 (*.f64 2 i) (*.f64 2 i)) 1))
30.0ms
(/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i)))
11.0ms
(*.f64 (*.f64 i i) (*.f64 i i))

series142.0ms (3.3%)

Counts
3 → 9
Calls

3 calls:

62.0ms
(/.f64 (/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i))) (-.f64 (*.f64 (*.f64 2 i) (*.f64 2 i)) 1))
42.0ms
(*.f64 (*.f64 i i) (*.f64 i i))
37.0ms
(/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i)))

simplify106.0ms (2.4%)

Algorithm
egg-herbie
Counts
241 → 241
Iterations

Useful iterations: 0 (52.0ms)

IterNodesCost
048343454
148343454

prune271.0ms (6.2%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New2410241
Fresh000
Picked011
Done033
Total2414245

Merged error: 0b

Counts
245 → 4
Compiler

Compiled 4796 to 3554 computations (25.9% saved)

regimes75.0ms (1.7%)

Compiler

Compiled 676 to 576 computations (14.8% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
03422
13422

end0.0ms (0%)

sample1.0s (24%)

Algorithm
intervals
Results
417.0ms8000×body128valid
101.0ms8000×pre128true
Compiler

Compiled 356 to 305 computations (14.3% saved)

Profiling

Loading profile data...