Details

Time bar (total: 3.9s)

analyze6.0ms (0.1%)

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

Compiled 15 to 11 computations (26.7% saved)

sample1.5s (38.9%)

Results
633.0ms2053×body1024valid
428.0ms4425×body128valid
251.0ms1001×body512valid
93.0ms552×body256valid
82.0ms225×body2048valid
Compiler

Compiled 30 to 22 computations (26.7% saved)

preprocess72.0ms (1.9%)

Algorithm
egg-herbie
Rules
859×fma-neg_binary64
764×fma-def_binary64
321×div-sub_binary64
169×associate-/l*_binary64
149×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
11619
22219
33419
46019
510019
620519
737719
895119
9212719
10275119
11306219
12387919
13417319
14421519
15421719
16421919
17422919
18422919
011
Stop Event
saturated
saturated
Compiler

Compiled 14 to 10 computations (28.6% saved)

simplify66.0ms (1.7%)

Algorithm
egg-herbie
Rules
859×fma-neg_binary64
764×fma-def_binary64
321×div-sub_binary64
169×associate-/l*_binary64
149×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
11619
22219
33419
46019
510019
620519
737719
895119
9212719
10275119
11306219
12387919
13417319
14421519
15421719
16421919
17422919
18422919
Stop Event
saturated
Counts
1 → 2

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 55 to 39 computations (29.1% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series8.0ms (0.2%)

Counts
3 → 36
Calls

9 calls:

2.0ms
(/.f64 x (+.f64 x 1))
x
inf
1.0ms
(-.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (-.f64 x 1)))
x
-inf
1.0ms
(-.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (-.f64 x 1)))
x
inf
1.0ms
(-.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (-.f64 x 1)))
x
0
1.0ms
(/.f64 (+.f64 x 1) (-.f64 x 1))
x
-inf

rewrite79.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
470×fma-def_binary64
286×fma-neg_binary64
267×log-div_binary64
210×egg-rr
174×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0836
119536
2318436
Stop Event
node limit
Counts
3 → 210

simplify32.0ms (0.8%)

Algorithm
egg-herbie
Rules
405×fma-neg_binary64
344×cancel-sign-sub-inv_binary64
288×fma-def_binary64
287×associate-*l*_binary64
233×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
064475
1204443
2627430
31940428
Stop Event
node limit
Counts
246 → 250

prune245.0ms (6.4%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2464250
Fresh000
Picked101
Done000
Total2474251
Error
0.0b
Counts
251 → 4
Alt Table
StatusErrorProgram
28.6b
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
32.9b
(+.f64 (/.f64 -3 x) (+.f64 (/.f64 -1 (*.f64 x x)) (/.f64 -3 (pow.f64 x 3))))
28.5b
(/.f64 (-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2)) (+.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (+.f64 x -1))))
61.6b
(fma.f64 (+.f64 (sqrt.f64 (/.f64 x (+.f64 x 1))) (sqrt.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)))) (-.f64 (sqrt.f64 (/.f64 x (+.f64 x 1))) (sqrt.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 x -1))) (+.f64 x 1) (/.f64 (+.f64 x 1) (+.f64 x -1))))
Compiler

Compiled 6232 to 4587 computations (26.4% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

series13.0ms (0.3%)

Counts
4 → 48
Calls

12 calls:

2.0ms
(/.f64 (-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2)) (+.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (+.f64 x -1))))
x
-inf
1.0ms
(/.f64 (-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2)) (+.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (+.f64 x -1))))
x
inf
1.0ms
(-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2))
x
inf
1.0ms
(-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2))
x
-inf
1.0ms
(-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2))
x
0

rewrite54.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
167×egg-rr
162×log1p-expm1-u_binary64
162×expm1-log1p-u_binary64
161×add-sqr-sqrt_binary64
157×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01494
133467
Stop Event
node limit
Counts
4 → 167

simplify40.0ms (1%)

Algorithm
egg-herbie
Rules
586×fma-neg_binary64
458×cancel-sign-sub-inv_binary64
424×fma-def_binary64
216×sub-neg_binary64
156×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
099696
1309653
2947640
33043638
Stop Event
node limit
Counts
215 → 221

prune202.0ms (5.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2210221
Fresh033
Picked011
Done000
Total2214225
Error
0.0b
Counts
225 → 4
Alt Table
StatusErrorProgram
28.6b
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
32.9b
(+.f64 (/.f64 -3 x) (+.f64 (/.f64 -1 (*.f64 x x)) (/.f64 -3 (pow.f64 x 3))))
28.5b
(/.f64 (-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2)) (+.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (+.f64 x -1))))
61.6b
(fma.f64 (+.f64 (sqrt.f64 (/.f64 x (+.f64 x 1))) (sqrt.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)))) (-.f64 (sqrt.f64 (/.f64 x (+.f64 x 1))) (sqrt.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)))) (fma.f64 (neg.f64 (/.f64 1 (+.f64 x -1))) (+.f64 x 1) (/.f64 (+.f64 x 1) (+.f64 x -1))))
Compiler

Compiled 7896 to 5905 computations (25.2% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1))
0.0b
(*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))
0.3b
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
2.9b
(-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1)))

series8.0ms (0.2%)

Counts
4 → 48
Calls

12 calls:

1.0ms
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
x
-inf
1.0ms
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
x
inf
1.0ms
(*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1))
x
inf
1.0ms
(*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1))
x
-inf
1.0ms
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
x
0

rewrite87.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
228×log1p-udef_binary64
189×egg-rr
136×add-sqr-sqrt_binary64
132×log1p-expm1-u_binary64
132×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01179
127160
2465160
Stop Event
node limit
Counts
4 → 189

simplify32.0ms (0.8%)

Algorithm
egg-herbie
Rules
532×times-frac_binary64
437×cancel-sign-sub-inv_binary64
380×fma-def_binary64
303×associate-/l/_binary64
205×sub-neg_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
041429
1112392
2300388
3846388
42454385
Stop Event
node limit
Counts
237 → 217

prune194.0ms (5%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2161217
Fresh112
Picked011
Done011
Total2174221
Error
0.0b
Counts
221 → 4
Alt Table
StatusErrorProgram
28.6b
(/.f64 (-.f64 (+.f64 x -1) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x 1))) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
32.9b
(+.f64 (/.f64 -3 x) (+.f64 (/.f64 -1 (*.f64 x x)) (/.f64 -3 (pow.f64 x 3))))
28.5b
(/.f64 (-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2)) (+.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (+.f64 x -1))))
0.3b
(/.f64 (-.f64 (/.f64 -1 x) 3) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
Compiler

Compiled 6022 to 4259 computations (29.3% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (+.f64 x 1) x)
0.0b
(*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1))
0.3b
(/.f64 (-.f64 (/.f64 -1 x) 3) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))

series6.0ms (0.1%)

Counts
2 → 24
Calls

6 calls:

2.0ms
(/.f64 (+.f64 x 1) x)
x
-inf
1.0ms
(/.f64 (-.f64 (/.f64 -1 x) 3) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
x
inf
1.0ms
(/.f64 (-.f64 (/.f64 -1 x) 3) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
x
-inf
1.0ms
(/.f64 (-.f64 (/.f64 -1 x) 3) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
x
0
1.0ms
(/.f64 (+.f64 x 1) x)
x
inf

rewrite102.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
579×prod-diff_binary64
198×egg-rr
141×add-sqr-sqrt_binary64
136×log1p-expm1-u_binary64
136×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01229
128724
2438624
Stop Event
node limit
Counts
2 → 198

simplify31.0ms (0.8%)

Algorithm
egg-herbie
Rules
531×times-frac_binary64
424×cancel-sign-sub-inv_binary64
377×fma-def_binary64
275×associate-/l/_binary64
195×sub-neg_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
033261
194242
2267238
3802238
42398235
Stop Event
node limit
Counts
222 → 214

prune288.0ms (7.5%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2631264
Fresh101
Picked011
Done112
Total2653268
Error
0b
Counts
268 → 3
Alt Table
StatusErrorProgram
28.5b
(/.f64 (-.f64 (pow.f64 (/.f64 x (+.f64 x 1)) 2) (pow.f64 (/.f64 (+.f64 x 1) (+.f64 x -1)) 2)) (+.f64 (/.f64 x (+.f64 x 1)) (/.f64 (+.f64 x 1) (+.f64 x -1))))
0.3b
(/.f64 (-.f64 (/.f64 -1 x) 3) (*.f64 (/.f64 (+.f64 x 1) x) (+.f64 x -1)))
14.5b
(*.f64 (+.f64 (neg.f64 (/.f64 -1 x)) 3) (/.f64 1 (/.f64 (neg.f64 (fma.f64 x x -1)) x)))
Compiler

Compiled 10471 to 7333 computations (30% saved)

regimes692.0ms (17.9%)

Accuracy

Total 0.1b remaining (86.5%)

Threshold costs 0.1b (86.5%)

Counts
348 → 1
Compiler

Compiled 14230 to 10546 computations (25.9% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
11922
22022
Stop Event
saturated

end64.0ms (1.7%)

Stop Event
fuel
Compiler

Compiled 97 to 73 computations (24.7% saved)

Profiling

Loading profile data...