Details

Time bar (total: 3.4s)

analyze6.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
25%75%0%3
62.5%25%12.5%4
68.7%12.5%18.8%5
71.8%6.2%21.9%6
73.4%3.1%23.5%7
74.2%1.6%24.3%8
74.6%0.8%24.6%9
75%0.4%24.6%10
75.1%0.2%24.7%11
75.1%0.1%24.8%12
75.1%0%24.8%13
75.2%0%24.8%14
Compiler

Compiled 8 to 6 computations (25% saved)

sample2.4s (71.2%)

Results
1.2s2771×body1024valid
448.0ms1394×body512valid
395.0ms3142×body128valid
163.0ms280×body2048valid
116.0ms669×body256valid
Compiler

Compiled 23 to 17 computations (26.1% saved)

simplify16.0ms (0.5%)

Algorithm
egg-herbie
Rules
95×fma-def_binary64
80×fma-neg_binary64
32×distribute-rgt-in_binary64
27×cancel-sign-sub-inv_binary64
26×distribute-lft-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066
1156
2186
3226
4306
5386
6576
7866
81136
91546
102246
112616
122976
133006
142636

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (expm1.f64 x) x)
Compiler

Compiled 21 to 13 computations (38.1% saved)

localize2.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (expm1.f64 x) x)

series3.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

3.0ms
(/.f64 (expm1.f64 x) x)

rewrite78.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
768×log1p-udef_binary64
417×log1p-expm1-u_binary64
417×expm1-log1p-u_binary64
357×pow1_binary64
289×unpow-prod-down_binary64
Counts
1 → 62
Calls

1 calls:

77.0ms
(/.f64 (expm1.f64 x) x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046
1826
210766
348006
462806
000
100

simplify77.0ms (2.3%)

Algorithm
egg-herbie
Rules
538×unswap-sqr_binary64
529×associate-*l*_binary64
501×fma-neg_binary64
484×fma-def_binary64
348×associate-/l*_binary64
Counts
74 → 71
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02691
16789
214086
332779
474876
5224876
6456976
7495076
8500076
9491376

prune39.0ms (1.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New69271
Fresh000
Picked011
Done000
Total69372
Error
0b
Counts
72 → 3
Alt Table
StatusErrorProgram
0.0b
(pow.f64 (/.f64 x (expm1.f64 x)) -1)
0.2b
(pow.f64 (sqrt.f64 (/.f64 (expm1.f64 x) x)) 2)
0.0b
(/.f64 (expm1.f64 x) x)
Compiler

Compiled 784 to 367 computations (53.2% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (expm1.f64 x))
0.0b
(pow.f64 (/.f64 x (expm1.f64 x)) -1)

series24.0ms (0.7%)

Counts
2 → 24
Calls

2 calls:

16.0ms
(pow.f64 (/.f64 x (expm1.f64 x)) -1)
8.0ms
(/.f64 x (expm1.f64 x))

rewrite77.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
565×log1p-expm1-u_binary64
565×expm1-log1p-u_binary64
285×log-prod_binary64
257×prod-diff_binary64
153×pow2_binary64
Counts
2 → 85
Calls

2 calls:

75.0ms
(/.f64 x (expm1.f64 x))
75.0ms
(pow.f64 (/.f64 x (expm1.f64 x)) -1)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
112412
2146412
3492112
4540512
000
100

simplify67.0ms (2%)

Algorithm
egg-herbie
Rules
701×times-frac_binary64
692×fma-neg_binary64
680×distribute-rgt-neg-in_binary64
631×cancel-sign-sub-inv_binary64
499×distribute-lft-neg-in_binary64
Counts
109 → 100
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
034186
192180
2206173
3530158
41551158
53119158
64408158
75423158

prune88.0ms (2.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1000100
Fresh011
Picked011
Done011
Total1003103
Error
0b
Counts
103 → 3
Alt Table
StatusErrorProgram
0.0b
(pow.f64 (/.f64 x (expm1.f64 x)) -1)
0.2b
(pow.f64 (sqrt.f64 (/.f64 (expm1.f64 x) x)) 2)
0.0b
(/.f64 (expm1.f64 x) x)
Compiler

Compiled 1036 to 493 computations (52.4% saved)

localize5.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (expm1.f64 x) x)
0.1b
(sqrt.f64 (/.f64 (expm1.f64 x) x))
0.2b
(pow.f64 (sqrt.f64 (/.f64 (expm1.f64 x) x)) 2)

series80.0ms (2.4%)

Counts
2 → 8
Calls

2 calls:

63.0ms
(pow.f64 (sqrt.f64 (/.f64 (expm1.f64 x) x)) 2)
17.0ms
(sqrt.f64 (/.f64 (expm1.f64 x) x))

rewrite76.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
565×log1p-expm1-u_binary64
565×expm1-log1p-u_binary64
280×log-prod_binary64
149×pow2_binary64
106×expm1-udef_binary64
Counts
2 → 84
Calls

2 calls:

75.0ms
(sqrt.f64 (/.f64 (expm1.f64 x) x))
75.0ms
(pow.f64 (sqrt.f64 (/.f64 (expm1.f64 x) x)) 2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0714
112914
2147514
3492314
4505914
000
100

simplify109.0ms (3.2%)

Algorithm
egg-herbie
Rules
1228×fma-def_binary64
775×sqr-pow_binary64
432×cube-prod_binary64
392×*-commutative_binary64
391×pow-sqr_binary64
Counts
92 → 97
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
03186
17582
217476
342962
498056
5165056
6198656
7202556
8216056
9230256
10252456
11299256
12329356
13363356
14414156
15484756
16494756

prune97.0ms (2.9%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1680168
Fresh000
Picked011
Done022
Total1683171
Error
0b
Counts
171 → 3
Alt Table
StatusErrorProgram
0.0b
(pow.f64 (/.f64 x (expm1.f64 x)) -1)
0.2b
(pow.f64 (sqrt.f64 (/.f64 (expm1.f64 x) x)) 2)
0.0b
(/.f64 (expm1.f64 x) x)
Compiler

Compiled 1962 to 959 computations (51.1% saved)

regimes44.0ms (1.3%)

Accuracy

Total 0.0b remaining (70.4%)

Threshold costs 0.0b (70.4%)

Counts
16 → 1
Compiler

Compiled 341 to 231 computations (32.3% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
169

end68.0ms (2%)

Compiler

Compiled 34 to 24 computations (29.4% saved)

Profiling

Loading profile data...