Details

Time bar (total: 3.2s)

analyze8.0ms (0.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
50%50%0%4
75%25%0%5
87.5%12.5%0%6
93.7%6.2%0%7
96.8%3.1%0%8
98.4%1.6%0%9
99.2%0.8%0%10
99.6%0.4%0%11
99.8%0.2%0%12
99.9%0.1%0%13
99.9%0.1%0.1%14
Compiler

Compiled 17 to 14 computations (17.6% saved)

sample1.7s (53%)

Results
533.0ms4544×body128valid
472.0ms1381×body1024valid
444.0ms1545×body512valid
203.0ms786×body256valid
Compiler

Compiled 50 to 41 computations (18% saved)

simplify19.0ms (0.6%)

Algorithm
egg-herbie
Rules
127×fma-neg_binary64
82×fma-def_binary64
41×cancel-sign-sub-inv_binary64
41×sub-neg_binary64
28×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
12222
23822
36122
410922
518622
624622
729622
834822
936822
1034422

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
8.4b
Counts
3 → 1
Alt Table
StatusErrorProgram
8.4b
(+.f64 (-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x)) (/.f64 1 (-.f64 x 1)))
Compiler

Compiled 63 to 51 computations (19% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (+.f64 x 1))
0.0b
(/.f64 1 (-.f64 x 1))
0.0b
(-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x))
2.2b
(+.f64 (-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x)) (/.f64 1 (-.f64 x 1)))

series12.0ms (0.4%)

Counts
4 → 48
Calls

4 calls:

3.0ms
(+.f64 (-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x)) (/.f64 1 (-.f64 x 1)))
2.0ms
(-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x))
2.0ms
(/.f64 1 (-.f64 x 1))
2.0ms
(/.f64 1 (+.f64 x 1))

rewrite82.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
425×fma-neg_binary64
236×expm1-udef_binary64
236×log1p-udef_binary64
170×egg-rr
136×add-sqr-sqrt_binary64
Counts
4 → 170
Calls

4 calls:

77.0ms
(/.f64 1 (+.f64 x 1))
77.0ms
(/.f64 1 (-.f64 x 1))
77.0ms
(-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x))
77.0ms
(+.f64 (-.f64 (/.f64 1 (+.f64 x 1)) (/.f64 2 x)) (/.f64 1 (-.f64 x 1)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01149
127249
2385649
3491249
000
100

simplify80.0ms (2.5%)

Algorithm
egg-herbie
Rules
653×fma-neg_binary64
489×cancel-sign-sub-inv_binary64
328×sub-neg_binary64
312×times-frac_binary64
273×unsub-neg_binary64
Counts
218 → 223
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
078752
1246726
2697720
31844717
44130717
54617717
64921717

prune169.0ms (5.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2203223
Fresh000
Picked101
Done000
Total2213224
Error
0.1b
Counts
224 → 3
Alt Table
StatusErrorProgram
8.4b
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
31.9b
(/.f64 2 (pow.f64 x 3))
26.6b
(/.f64 (+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))) (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
Compiler

Compiled 5148 to 4074 computations (20.9% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (+.f64 1 x))
0.0b
(/.f64 1 (-.f64 x 1))
1.5b
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
2.3b
(+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x)))

series11.0ms (0.4%)

Counts
3 → 36
Calls

3 calls:

5.0ms
(/.f64 1 (+.f64 1 x))
3.0ms
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
3.0ms
(+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x)))

rewrite81.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
399×fma-neg_binary64
236×expm1-udef_binary64
236×log1p-udef_binary64
138×add-sqr-sqrt_binary64
136×egg-rr
Counts
3 → 136
Calls

3 calls:

78.0ms
(/.f64 1 (+.f64 1 x))
78.0ms
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
78.0ms
(+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01145
127445
2388245
3492845
000
100

simplify59.0ms (1.9%)

Algorithm
egg-herbie
Rules
574×sub-neg_binary64
367×fma-def_binary64
314×associate-*l*_binary64
291×times-frac_binary64
264×distribute-lft-out_binary64
Counts
172 → 177
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
070595
1222581
2670569
31937568
44176568
55086568

prune158.0ms (5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2170217
Fresh022
Picked011
Done000
Total2173220
Error
0.1b
Counts
220 → 3
Alt Table
StatusErrorProgram
8.4b
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
31.9b
(/.f64 2 (pow.f64 x 3))
26.6b
(/.f64 (+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))) (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
Compiler

Compiled 4933 to 3945 computations (20% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))
0.0b
(/.f64 (+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))) (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
0.0b
(*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x)))
18.7b
(+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2))))

series11.0ms (0.4%)

Counts
4 → 48
Calls

4 calls:

4.0ms
(*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x)))
3.0ms
(/.f64 (+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))) (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
2.0ms
(*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))
1.0ms
(+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2))))

rewrite89.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
269×expm1-udef_binary64
269×log1p-udef_binary64
154×add-sqr-sqrt_binary64
149×log1p-expm1-u_binary64
149×expm1-log1p-u_binary64
Counts
4 → 147
Calls

4 calls:

84.0ms
(*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))
84.0ms
(/.f64 (+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2)))) (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
84.0ms
(*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x)))
84.0ms
(+.f64 (*.f64 x (+.f64 1 x)) (*.f64 (-.f64 x 1) (-.f64 x (*.f64 (+.f64 1 x) 2))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01390
130880
2438780
3512280
000
100

simplify85.0ms (2.7%)

Algorithm
egg-herbie
Rules
497×fma-neg_binary64
353×cancel-sign-sub-inv_binary64
350×sub-neg_binary64
349×distribute-rgt-neg-in_binary64
303×distribute-lft-neg-in_binary64
Counts
195 → 173
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
050404
1151382
2415376
31167376
42923376
54039376
64745376
74937376

prune126.0ms (3.9%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1721173
Fresh101
Picked101
Done011
Total1742176
Error
0.1b
Counts
176 → 2
Alt Table
StatusErrorProgram
8.4b
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
0.1b
(/.f64 2 (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
Compiler

Compiled 5711 to 4015 computations (29.7% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series11.0ms (0.3%)

Counts
2 → 24
Calls

2 calls:

8.0ms
(*.f64 x (+.f64 1 x))
3.0ms
(/.f64 2 (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))

rewrite59.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
462×log-prod_binary64
313×fma-def_binary64
245×prod-diff_binary64
168×expm1-udef_binary64
168×log1p-udef_binary64
Counts
2 → 78
Calls

2 calls:

58.0ms
(*.f64 x (+.f64 1 x))
58.0ms
(/.f64 2 (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
120518
2255916
3514716
000
100

simplify64.0ms (2%)

Algorithm
egg-herbie
Rules
680×fma-def_binary64
508×unswap-sqr_binary64
464×fma-neg_binary64
351×distribute-rgt-neg-in_binary64
321×cancel-sign-sub-inv_binary64
Counts
102 → 96
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
043295
1133271
2375265
31068265
42950265
54040265
65043265

prune109.0ms (3.4%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1273130
Fresh000
Picked011
Done011
Total1275132
Error
0.0b
Counts
132 → 5
Alt Table
StatusErrorProgram
0.1b
(*.f64 (/.f64 2 (-.f64 x 1)) (/.f64 1 (fma.f64 x x x)))
8.4b
(-.f64 (+.f64 (/.f64 1 (-.f64 x 1)) (/.f64 1 (+.f64 1 x))) (/.f64 2 x))
0.1b
(/.f64 2 (*.f64 (-.f64 x 1) (*.f64 x (+.f64 1 x))))
21.2b
(pow.f64 (sqrt.f64 (/.f64 2 (*.f64 x (fma.f64 x x -1)))) 2)
27.4b
(/.f64 2 (*.f64 (-.f64 x 1) (cbrt.f64 (pow.f64 (fma.f64 x x x) 3))))
Compiler

Compiled 1896 to 1225 computations (35.4% saved)

regimes162.0ms (5.1%)

Accuracy

Total 0.1b remaining (67.9%)

Threshold costs 0.1b (67.9%)

Counts
95 → 1
Compiler

Compiled 2972 to 2240 computations (24.6% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
11517
21617
31417

end71.0ms (2.2%)

Compiler

Compiled 93 to 68 computations (26.9% saved)

Profiling

Loading profile data...