Details

Time bar (total: 15.5s)

analyze173.0ms (1.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%28.1%71.9%0
0%28.1%71.9%1
0%28.1%71.9%2
0%28.1%71.9%3
3.5%24.6%71.9%4
5.3%22.8%71.9%5
10.5%17.5%71.9%6
14%14%71.9%7
19.1%9%71.9%8
24.6%3.5%71.9%9
25.1%3%71.9%10
25.8%2.3%71.9%11
26.3%1.8%71.9%12
26.6%1.5%71.9%13
26.9%1.2%71.9%14
Compiler

Compiled 43 to 28 computations (34.9% saved)

sample1.8s (11.7%)

Results
1.1s6743×body128valid
338.0ms636×body1024valid
227.0ms527×body512valid
80.0ms296×body256valid
36.0ms54×body2048valid
Compiler

Compiled 118 to 76 computations (35.6% saved)

simplify44.0ms (0.3%)

Algorithm
egg-herbie
Rules
847×times-frac_binary64
817×distribute-rgt-in_binary64
748×distribute-lft-in_binary64
537×div-sub_binary64
535×fma-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01643
13439
211037
343537
4167237
5249437
6335837
7539237

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
17.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
17.5b
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))) 1) 2)
21.1b
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 2 i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 2 i)) 2)) 1) 2)
Compiler

Compiled 180 to 106 computations (41.1% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))
10.5b
(fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))) 1)
16.1b
(/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta)))))

series1.1s (6.8%)

Counts
3 → 108
Calls

3 calls:

737.0ms
(fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))) 1)
274.0ms
(/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta)))))
39.0ms
(*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))

rewrite135.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
270×expm1-udef_binary64
270×log1p-udef_binary64
151×add-sqr-sqrt_binary64
144×log1p-expm1-u_binary64
144×expm1-log1p-u_binary64
Counts
3 → 95
Calls

3 calls:

130.0ms
(*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))
130.0ms
(fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta))))) 1)
130.0ms
(/.f64 (-.f64 beta alpha) (*.f64 (fma.f64 2 i (+.f64 alpha beta)) (+.f64 2 (fma.f64 2 i (+.f64 alpha beta)))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01382
129682
2420082
3495282
000
100

simplify318.0ms (2.1%)

Algorithm
egg-herbie
Rules
555×+-commutative_binary64
488×fma-def_binary64
486×associate-+r+_binary64
378×*-commutative_binary64
291×associate-*r/_binary64
Counts
203 → 220
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0129817686
1519317686

prune1.0s (6.7%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New2182220
Fresh101
Picked101
Done000
Total2202222
Error
0.1b
Counts
222 → 2
Alt Table
StatusErrorProgram
51.6b
(/.f64 (/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha) 2)
10.4b
(/.f64 (fma.f64 (+.f64 alpha beta) (*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1) 2)
Compiler

Compiled 24620 to 15975 computations (35.1% saved)

localize26.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))
0.0b
(/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha)))
0.1b
(*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha)))))
10.5b
(fma.f64 (+.f64 alpha beta) (*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1)

series1.6s (10.1%)

Counts
4 → 144
Calls

4 calls:

873.0ms
(fma.f64 (+.f64 alpha beta) (*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1)
532.0ms
(*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha)))))
84.0ms
(/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha)))
78.0ms
(/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))

rewrite100.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
301×log1p-udef_binary64
170×add-sqr-sqrt_binary64
162×log1p-expm1-u_binary64
162×expm1-log1p-u_binary64
159×add-log-exp_binary64
Counts
4 → 138
Calls

4 calls:

96.0ms
(/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))
96.0ms
(/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha)))
96.0ms
(*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha)))))
96.0ms
(fma.f64 (+.f64 alpha beta) (*.f64 (/.f64 (-.f64 beta alpha) (fma.f64 2 i (+.f64 beta alpha))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01589
133289
2475889
3519889
000
100

simplify209.0ms (1.3%)

Algorithm
egg-herbie
Rules
558×fma-def_binary64
543×associate-+r+_binary64
364×associate-*r/_binary64
171×associate-/l*_binary64
147×associate-/r*_binary64
Counts
282 → 310
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0154221193
1506221193

prune866.0ms (5.6%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New3091310
Fresh011
Picked101
Done000
Total3102312
Error
0.1b
Counts
312 → 2
Alt Table
StatusErrorProgram
51.6b
(/.f64 (/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha) 2)
10.4b
(/.f64 (fma.f64 (+.f64 alpha beta) (*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1) 2)
Compiler

Compiled 30404 to 19496 computations (35.9% saved)

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 beta (fma.f64 2 i (+.f64 alpha beta)))
0.0b
(-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta))))
0.1b
(*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha)))))
10.5b
(fma.f64 (+.f64 alpha beta) (*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1)

series865.0ms (5.6%)

Counts
4 → 144
Calls

4 calls:

418.0ms
(fma.f64 (+.f64 alpha beta) (*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1)
245.0ms
(*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha)))))
121.0ms
(-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta))))
81.0ms
(/.f64 beta (fma.f64 2 i (+.f64 alpha beta)))

rewrite237.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
939×prod-diff_binary64
297×egg-rr
185×add-sqr-sqrt_binary64
178×log1p-expm1-u_binary64
178×expm1-log1p-u_binary64
Counts
4 → 297
Calls

4 calls:

213.0ms
(/.f64 beta (fma.f64 2 i (+.f64 alpha beta)))
213.0ms
(-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta))))
213.0ms
(*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha)))))
213.0ms
(fma.f64 (+.f64 alpha beta) (*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01786
136186
2476886
3669886
000
100

simplify410.0ms (2.6%)

Algorithm
egg-herbie
Rules
456×+-commutative_binary64
358×associate-+r+_binary64
325×fma-def_binary64
271×*-commutative_binary64
263×sub-neg_binary64
Counts
441 → 474
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0110514886
1424714882
2497714882

prune1.9s (12.3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New4740474
Fresh011
Picked011
Done000
Total4742476
Error
0.1b
Counts
476 → 2
Alt Table
StatusErrorProgram
51.6b
(/.f64 (/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha) 2)
10.4b
(/.f64 (fma.f64 (+.f64 alpha beta) (*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1) 2)
Compiler

Compiled 37578 to 21731 computations (42.2% saved)

localize13.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha)

series30.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

30.0ms
(/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha)

rewrite91.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
490×log-prod_binary64
286×prod-diff_binary64
193×expm1-udef_binary64
193×log1p-udef_binary64
164×log-pow_binary64
Counts
1 → 36
Calls

1 calls:

89.0ms
(/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01014
121512
2261812
3498612
4514312
000
100

simplify97.0ms (0.6%)

Algorithm
egg-herbie
Rules
187×fma-def_binary64
30×*-commutative_binary64
22×distribute-rgt-in_binary64
20×associate-/l*_binary64
19×associate-/r/_binary64
Counts
72 → 46
Iterations

Useful iterations: 13 (0.0ms)

IterNodesCost
025646
149644
283584
3106584
4123554
5150494
6164494
7202494
8212494
9221494
10240494
11253494
12275494
13292404
14289404
15295404
16297404
17298404
18292404

prune69.0ms (0.4%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New43346
Fresh000
Picked011
Done011
Total43548
Error
0.1b
Counts
48 → 5
Alt Table
StatusErrorProgram
51.7b
(/.f64 (*.f64 (sqrt.f64 (fma.f64 2 beta (fma.f64 i 4 2))) (*.f64 (sqrt.f64 (fma.f64 2 beta (fma.f64 i 4 2))) (/.f64 1 alpha))) 2)
51.9b
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 2 beta (fma.f64 i 4 2))) 2) (*.f64 (cbrt.f64 (fma.f64 2 beta (fma.f64 i 4 2))) (/.f64 1 alpha))) 2)
51.6b
(/.f64 (/.f64 (fma.f64 2 beta (+.f64 2 (*.f64 i 4))) alpha) 2)
52.6b
(/.f64 (exp.f64 (log.f64 (/.f64 (fma.f64 2 beta (fma.f64 i 4 2)) alpha))) 2)
10.4b
(/.f64 (fma.f64 (+.f64 alpha beta) (*.f64 (-.f64 (/.f64 beta (fma.f64 2 i (+.f64 alpha beta))) (/.f64 alpha (fma.f64 2 i (+.f64 alpha beta)))) (/.f64 1 (+.f64 2 (fma.f64 2 i (+.f64 beta alpha))))) 1) 2)
Compiler

Compiled 892 to 676 computations (24.2% saved)

regimes4.1s (26.4%)

Accuracy

Total 1.3b remaining (85.2%)

Threshold costs 0b (0%)

Counts
179 → 2
Compiler

Compiled 37381 to 25112 computations (32.8% saved)

bsearch18.0ms (0.1%)

Compiler

Compiled 28 to 16 computations (42.9% saved)

simplify10.0ms (0.1%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
036105
157105
274103
395103
4109103
5113103
6109103

end274.0ms (1.8%)

Compiler

Compiled 269 to 180 computations (33.1% saved)

Profiling

Loading profile data...