Details

Time bar (total: 3.5s)

analyze1.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%50%0%2
50%25%25%3
50%0%50%4
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample2.1s (59.7%)

Results
881.0ms2049×body1024valid
525.0ms4397×body128valid
338.0ms1035×body512valid
159.0ms264×body2048valid
112.0ms511×body256valid
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify12.0ms (0.3%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
14×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0711
1128
2178
3248
4318
5488
6738
7938
81108
91208
101248
111268
121128

prune2.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
26.6b
Counts
3 → 1
Alt Table
StatusErrorProgram
26.6b
(-.f64 (log1p.f64 N) (log.f64 N))
Compiler

Compiled 25 to 16 computations (36% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 N)
3.1b
(-.f64 (log1p.f64 N) (log.f64 N))

series6.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(-.f64 (log1p.f64 N) (log.f64 N))
2.0ms
(log1p.f64 N)

rewrite48.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
541×expm1-log1p-u_binary64
540×log1p-expm1-u_binary64
394×prod-diff_binary64
252×log-prod_binary64
168×fma-def_binary64
Counts
2 → 108
Calls

2 calls:

45.0ms
(log1p.f64 N)
45.0ms
(-.f64 (log1p.f64 N) (log.f64 N))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
110511
2134311
3501211
000
100

simplify52.0ms (1.5%)

Algorithm
egg-herbie
Rules
577×fma-def_binary64
379×times-frac_binary64
324×fma-neg_binary64
281×associate-+l+_binary64
274×associate--l+_binary64
Counts
132 → 141
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
056376
1163350
2443346
31237335
44414335
55036335

prune145.0ms (4.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1392141
Fresh000
Picked101
Done000
Total1402142
Error
0.0b
Counts
142 → 2
Alt Table
StatusErrorProgram
26.4b
(log.f64 (/.f64 (+.f64 N 1) N))
35.0b
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))
Compiler

Compiled 1994 to 843 computations (57.7% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.9b
(log.f64 (/.f64 (+.f64 N 1) N))

series3.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

3.0ms
(log.f64 (/.f64 (+.f64 N 1) N))

rewrite152.0ms (4.3%)

Algorithm
batch-egg-rewrite
Rules
635×log1p-expm1-u_binary64
635×expm1-log1p-u_binary64
292×log-prod_binary64
115×fma-def_binary64
108×log1p-udef_binary64
Counts
1 → 66
Calls

1 calls:

150.0ms
(log.f64 (/.f64 (+.f64 N 1) N))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
11268
215948
352408
000
100

simplify66.0ms (1.9%)

Algorithm
egg-herbie
Rules
736×fma-neg_binary64
510×cancel-sign-sub-inv_binary64
415×times-frac_binary64
285×associate-/l/_binary64
261×div-sub_binary64
Counts
78 → 80
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
034186
193184
2225184
3589181
41670181
54250181
64702181
74908181

prune31.0ms (0.9%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New80080
Fresh011
Picked011
Done000
Total80282
Error
0.0b
Counts
82 → 2
Alt Table
StatusErrorProgram
26.4b
(log.f64 (/.f64 (+.f64 N 1) N))
35.0b
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))
Compiler

Compiled 1076 to 555 computations (48.4% saved)

localize13.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1/3 (pow.f64 N 3))
0.3b
(/.f64 1/4 (pow.f64 N 4))
0.4b
(/.f64 1/2 (*.f64 N N))
26.3b
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))

series13.0ms (0.4%)

Counts
4 → 24
Calls

4 calls:

5.0ms
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))
3.0ms
(/.f64 1/3 (pow.f64 N 3))
3.0ms
(/.f64 1/4 (pow.f64 N 4))
2.0ms
(/.f64 1/2 (*.f64 N N))

rewrite83.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
271×prod-diff_binary64
204×log1p-expm1-u_binary64
204×expm1-log1p-u_binary64
196×add-sqr-sqrt_binary64
192×add-cbrt-cube_binary64
Counts
4 → 113
Calls

4 calls:

80.0ms
(/.f64 1/3 (pow.f64 N 3))
80.0ms
(/.f64 1/4 (pow.f64 N 4))
80.0ms
(/.f64 1/2 (*.f64 N N))
80.0ms
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01852
143348
2473848
3503248
000
100

simplify50.0ms (1.4%)

Algorithm
egg-herbie
Rules
847×distribute-neg-frac_binary64
453×times-frac_binary64
345×associate-*l*_binary64
337×fma-def_binary64
319×associate-/l/_binary64
Counts
137 → 126
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
029303
178303
2160303
3390303
41055303
53979303
65015303

prune142.0ms (4.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1242126
Fresh000
Picked011
Done011
Total1244128
Error
0.0b
Counts
128 → 4
Alt Table
StatusErrorProgram
26.4b
(log.f64 (/.f64 (+.f64 N 1) N))
35.7b
(pow.f64 (cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))) 3)
52.6b
(pow.f64 (pow.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4)))) 3) 1/3)
35.0b
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))
Compiler

Compiled 4176 to 3247 computations (22.2% saved)

localize14.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1/4 (pow.f64 N 4))
0.4b
(pow.f64 (cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))) 3)
18.1b
(cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4)))))
26.3b
(-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))

series22.0ms (0.6%)

Counts
3 → 36
Calls

3 calls:

12.0ms
(pow.f64 (cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))) 3)
6.0ms
(cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4)))))
5.0ms
(-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))

rewrite91.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
698×prod-diff_binary64
186×log1p-expm1-u_binary64
186×expm1-log1p-u_binary64
177×add-sqr-sqrt_binary64
176×add-cbrt-cube_binary64
Counts
3 → 144
Calls

3 calls:

86.0ms
(pow.f64 (cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))) 3)
86.0ms
(cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4)))))
86.0ms
(-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02083
141883
2407283
3513283
000
100

simplify58.0ms (1.7%)

Algorithm
egg-herbie
Rules
447×unswap-sqr_binary64
365×associate-*r*_binary64
344×fma-def_binary64
306×associate-*l*_binary64
290×sub-neg_binary64
Counts
180 → 135
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01121106
13441009
21040847
33977703
44971703

prune152.0ms (4.3%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1531154
Fresh101
Picked011
Done022
Total1544158
Error
0.0b
Counts
158 → 4
Alt Table
StatusErrorProgram
26.4b
(log.f64 (/.f64 (+.f64 N 1) N))
35.7b
(pow.f64 (cbrt.f64 (-.f64 (fma.f64 1/3 (pow.f64 N -3) (/.f64 1 N)) (fma.f64 1/2 (pow.f64 N -2) (/.f64 1/4 (pow.f64 N 4))))) 3)
35.0b
(-.f64 (+.f64 (/.f64 1 N) (/.f64 1/3 (pow.f64 N 3))) (+.f64 (/.f64 1/2 (*.f64 N N)) (/.f64 1/4 (pow.f64 N 4))))
37.9b
(pow.f64 (-.f64 (+.f64 (*.f64 1/12 (pow.f64 (/.f64 1 (pow.f64 N 7)) 1/3)) (pow.f64 (/.f64 1 N) 1/3)) (+.f64 (*.f64 1/6 (pow.f64 (/.f64 1 (pow.f64 N 4)) 1/3)) (*.f64 35/648 (pow.f64 (/.f64 1 (pow.f64 N 10)) 1/3)))) 3)
Compiler

Compiled 5436 to 4521 computations (16.8% saved)

regimes136.0ms (3.9%)

Accuracy

Total 0.0b remaining (5.5%)

Threshold costs 0.0b (5.5%)

Counts
49 → 2
Compiler

Compiled 1930 to 1530 computations (20.7% saved)

bsearch2.0ms (0.1%)

Compiler

Compiled 8 to 6 computations (25% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02852
13852
24352
34652
44752
54652

end108.0ms (3.1%)

Compiler

Compiled 162 to 131 computations (19.1% saved)

Profiling

Loading profile data...