Details

Time bar (total: 3.9s)

analyze87.0ms (2.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%12.5%87.5%0
0%12.5%87.5%1
0%12.5%87.5%2
3.1%9.3%87.5%3
3.1%6.2%90.7%4
4.7%4.7%90.7%5
4.7%3.5%91.8%6
5.6%2.5%91.8%7
5.9%1.8%92.3%8
6.4%1.3%92.3%9
6.6%0.9%92.5%10
6.8%0.6%92.5%11
6.9%0.5%92.6%12
7%0.3%92.6%13
7.1%0.2%92.7%14
Compiler

Compiled 26 to 19 computations (26.9% saved)

sample1.1s (28.4%)

Results
977.0ms8256×body128valid
7.0ms49×body128invalid
Compiler

Compiled 67 to 49 computations (26.9% saved)

simplify123.0ms (3.2%)

Algorithm
egg-herbie
Rules
1247×unsub-neg_binary64
616×neg-sub0_binary64
571×neg-mul-1_binary64
560×fma-neg_binary64
452×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0919
12019
24617
311617
435817
5133117
6346317
7362517
8429317
9467817
10465017
11489517
12490517

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.2b
(*.f64 (-.f64 1 m) (fma.f64 m (/.f64 (-.f64 1 m) v) -1))
0.1b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
Compiler

Compiled 85 to 61 computations (28.2% saved)

localize7.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)
0.0b
(*.f64 m (-.f64 1 m))
0.0b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
0.1b
(/.f64 (*.f64 m (-.f64 1 m)) v)

series32.0ms (0.8%)

Counts
4 → 80
Calls

4 calls:

11.0ms
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
9.0ms
(/.f64 (*.f64 m (-.f64 1 m)) v)
8.0ms
(-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)
3.0ms
(*.f64 m (-.f64 1 m))

rewrite80.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
501×prod-diff_binary64
196×egg-rr
188×fma-def_binary64
179×expm1-udef_binary64
178×log1p-udef_binary64
Counts
4 → 196
Calls

4 calls:

76.0ms
(-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1)
76.0ms
(*.f64 m (-.f64 1 m))
76.0ms
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
76.0ms
(/.f64 (*.f64 m (-.f64 1 m)) v)
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0949
120149
2275545
3503245

simplify102.0ms (2.6%)

Algorithm
egg-herbie
Rules
506×sub-neg_binary64
328×neg-sub0_binary64
314×fma-def_binary64
311×neg-mul-1_binary64
286×div-sub_binary64
Counts
276 → 227
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0361107
11041036
22491024
3646960
42235959
54181959
64985959
74905959

prune210.0ms (5.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2243227
Fresh101
Picked101
Done000
Total2263229
Error
0b
Counts
229 → 3
Alt Table
StatusErrorProgram
0.1b
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
0.1b
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
0.2b
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
Compiler

Compiled 4469 to 2907 computations (35% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
0.0b
(fma.f64 (/.f64 m v) (-.f64 1 m) -1)
0.1b
(*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1))

series32.0ms (0.8%)

Counts
3 → 72
Calls

3 calls:

13.0ms
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
13.0ms
(*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
6.0ms
(fma.f64 (/.f64 m v) (-.f64 1 m) -1)

rewrite85.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
518×log-prod_binary64
389×fma-def_binary64
206×egg-rr
202×fma-neg_binary64
184×expm1-udef_binary64
Counts
3 → 206
Calls

3 calls:

79.0ms
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
79.0ms
(fma.f64 (/.f64 m v) (-.f64 1 m) -1)
79.0ms
(*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01146
123742
2274540
3522740

simplify81.0ms (2.1%)

Algorithm
egg-herbie
Rules
874×fma-neg_binary64
346×fma-def_binary64
259×sub-neg_binary64
241×distribute-rgt-in_binary64
234×neg-mul-1_binary64
Counts
278 → 239
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0401198
11161127
22651068
3725966
42044896
54605895
64998895

prune236.0ms (6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2760276
Fresh022
Picked011
Done000
Total2763279
Error
0b
Counts
279 → 3
Alt Table
StatusErrorProgram
0.1b
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
0.1b
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
0.2b
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
Compiler

Compiled 7977 to 3386 computations (57.6% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 m v) m)
0.0b
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
9.2b
(/.f64 (pow.f64 m 3) v)
11.9b
(/.f64 (pow.f64 m 2) v)

series45.0ms (1.2%)

Counts
4 → 27
Calls

4 calls:

16.0ms
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
13.0ms
(/.f64 (pow.f64 m 3) v)
10.0ms
(/.f64 (pow.f64 m 2) v)
6.0ms
(+.f64 (/.f64 m v) m)

rewrite178.0ms (4.6%)

Algorithm
batch-egg-rewrite
Rules
322×log1p-udef_binary64
181×add-sqr-sqrt_binary64
181×log1p-expm1-u_binary64
181×expm1-log1p-u_binary64
172×add-log-exp_binary64
Counts
4 → 152
Calls

4 calls:

175.0ms
(+.f64 (/.f64 m v) m)
175.0ms
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
175.0ms
(/.f64 (pow.f64 m 3) v)
175.0ms
(/.f64 (pow.f64 m 2) v)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01652
138050
2478050
3522250

simplify85.0ms (2.2%)

Algorithm
egg-herbie
Rules
610×fma-neg_binary64
566×distribute-rgt-neg-in_binary64
470×cancel-sign-sub-inv_binary64
323×fma-def_binary64
292×associate-/l*_binary64
Counts
179 → 168
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
028294
178292
2182245
3454227
41420214
53738214
64990214
74989214
84883214

prune153.0ms (3.9%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1680168
Fresh011
Picked011
Done011
Total1683171
Error
0b
Counts
171 → 3
Alt Table
StatusErrorProgram
0.1b
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
0.1b
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
0.2b
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
Compiler

Compiled 5349 to 2797 computations (47.7% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
0.0b
(*.f64 (-.f64 1 m) (/.f64 1 v))
0.2b
(fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1)

series24.0ms (0.6%)

Counts
3 → 72
Calls

3 calls:

10.0ms
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
8.0ms
(fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1)
6.0ms
(*.f64 (-.f64 1 m) (/.f64 1 v))

rewrite93.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
479×log-prod_binary64
275×prod-diff_binary64
183×pow1/3_binary64
175×expm1-udef_binary64
174×log1p-udef_binary64
Counts
3 → 137
Calls

3 calls:

90.0ms
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
90.0ms
(*.f64 (-.f64 1 m) (/.f64 1 v))
90.0ms
(fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01035
120635
2245735
3488835
4518135

simplify81.0ms (2.1%)

Algorithm
egg-herbie
Rules
358×neg-sub0_binary64
352×neg-mul-1_binary64
325×fma-def_binary64
286×div-sub_binary64
281×sub-neg_binary64
Counts
209 → 166
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0391002
1111931
2252919
3695855
42391855
54193855
64906855

prune146.0ms (3.7%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1660166
Fresh000
Picked011
Done022
Total1663169
Error
0b
Counts
169 → 3
Alt Table
StatusErrorProgram
0.1b
(+.f64 (fma.f64 (/.f64 m v) (-.f64 1 m) -1) (*.f64 (neg.f64 m) (fma.f64 (/.f64 m v) (-.f64 1 m) -1)))
0.1b
(-.f64 (+.f64 (/.f64 (pow.f64 m 3) v) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
0.2b
(*.f64 (fma.f64 m (*.f64 (-.f64 1 m) (/.f64 1 v)) -1) (-.f64 1 m))
Compiler

Compiled 2978 to 1986 computations (33.3% saved)

regimes808.0ms (20.7%)

Accuracy

Total 0.1b remaining (68.8%)

Threshold costs 0.1b (68.8%)

Counts
277 → 1
Compiler

Compiled 14412 to 10197 computations (29.2% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01225
11825
21825

end65.0ms (1.7%)

Compiler

Compiled 99 to 64 computations (35.4% saved)

Profiling

Loading profile data...