Details

Time bar (total: 2.7s)

analyze79.0ms (2.9%)

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 (39.5%)

Results
1.1s8256×body128valid
6.0ms58×body128invalid
Compiler

Compiled 52 to 38 computations (26.9% saved)

preprocess37.0ms (1.3%)

Algorithm
egg-herbie
Rules
712×fma-def_binary64
374×times-frac_binary64
345×div-sub_binary64
304×distribute-rgt-in_binary64
242×distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01438
13238
28234
324534
495334
5489234
022
Stop Event
saturated
node limit
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify21.0ms (0.8%)

Algorithm
egg-herbie
Rules
560×fma-neg_binary64
442×distribute-rgt-in_binary64
376×unsub-neg_binary64
325×fma-def_binary64
302×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0919
12019
24617
313117
446417
5201217
Stop Event
node limit
Counts
1 → 2

prune3.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.1b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
0.1b
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1))
Compiler

Compiled 85 to 61 computations (28.2% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series16.0ms (0.6%)

Counts
2 → 48
Calls

12 calls:

3.0ms
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1))
v
inf
2.0ms
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1))
v
-inf
2.0ms
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1))
v
0
1.0ms
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1))
m
-inf
1.0ms
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1))
m
inf

rewrite43.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
907×log1p-expm1-u_binary64
907×expm1-log1p-u_binary64
150×prod-diff_binary64
91×add-sqr-sqrt_binary64
85×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118428
2235128
Stop Event
node limit
Counts
2 → 46

simplify36.0ms (1.3%)

Algorithm
egg-herbie
Rules
279×fma-def_binary64
267×sub-neg_binary64
215×distribute-rgt-out_binary64
171×unsub-neg_binary64
153×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
032839
195768
2243756
3685692
42543692
Stop Event
node limit
Counts
94 → 71

prune66.0ms (2.4%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New67471
Fresh011
Picked101
Done000
Total68573
Error
0.0b
Counts
73 → 5
Alt Table
StatusErrorProgram
4.8b
(/.f64 (*.f64 (-.f64 1 (pow.f64 m 3)) (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) (+.f64 1 (fma.f64 m m m)))
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.1b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
0.1b
(+.f64 -1 (+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2)))))
0.7b
(*.f64 (-.f64 1 m) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) 3))
Compiler

Compiled 1265 to 794 computations (37.2% saved)

localize12.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (/.f64 (pow.f64 m 2) v))
0.0b
(+.f64 (/.f64 m v) m)
7.8b
(/.f64 (pow.f64 m 3) v)
15.1b
(/.f64 (pow.f64 m 2) v)

series39.0ms (1.4%)

Counts
4 → 15
Calls

24 calls:

3.0ms
(/.f64 (pow.f64 m 3) v)
v
inf
3.0ms
(/.f64 (pow.f64 m 3) v)
v
-inf
2.0ms
(*.f64 2 (/.f64 (pow.f64 m 2) v))
v
-inf
2.0ms
(/.f64 (pow.f64 m 2) v)
v
-inf
2.0ms
(*.f64 2 (/.f64 (pow.f64 m 2) v))
v
inf

rewrite56.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
241×fma-def_binary64
224×expm1-udef_binary64
224×log1p-udef_binary64
198×log-pow_binary64
184×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
127531
2362831
Stop Event
node limit
Counts
4 → 157

simplify11.0ms (0.4%)

Algorithm
egg-herbie
Rules
10×fma-def_binary64
associate-*r*_binary64
associate-*l*_binary64
distribute-lft-in_binary64
distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
08126
112126
22090
33190
44890
55390
65590
Stop Event
saturated
Counts
172 → 161

prune174.0ms (6.4%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1601161
Fresh044
Picked101
Done000
Total1615166
Error
0b
Counts
166 → 5
Alt Table
StatusErrorProgram
0.1b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
0.1b
(+.f64 -1 (+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2)))))
4.8b
(/.f64 (*.f64 (-.f64 1 (pow.f64 m 3)) (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) (+.f64 1 (fma.f64 m m m)))
0.7b
(*.f64 (-.f64 1 m) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) 3))
0.1b
(-.f64 (+.f64 (*.f64 (pow.f64 m 3) (/.f64 1 v)) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
Compiler

Compiled 4347 to 2423 computations (44.3% saved)

localize13.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (/.f64 (pow.f64 m 2) v))
0.0b
(+.f64 (/.f64 m v) m)
7.8b
(*.f64 (pow.f64 m 3) (/.f64 1 v))
15.1b
(/.f64 (pow.f64 m 2) v)

series13.0ms (0.5%)

Counts
1 → 24
Calls

6 calls:

3.0ms
(*.f64 (pow.f64 m 3) (/.f64 1 v))
v
0
3.0ms
(*.f64 (pow.f64 m 3) (/.f64 1 v))
v
-inf
2.0ms
(*.f64 (pow.f64 m 3) (/.f64 1 v))
v
inf
2.0ms
(*.f64 (pow.f64 m 3) (/.f64 1 v))
m
-inf
2.0ms
(*.f64 (pow.f64 m 3) (/.f64 1 v))
m
inf

rewrite32.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
652×log1p-expm1-u_binary64
652×expm1-log1p-u_binary64
341×log-prod_binary64
128×expm1-udef_binary64
128×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
087
11657
219047
Stop Event
node limit
Counts
1 → 30

simplify53.0ms (1.9%)

Algorithm
egg-herbie
Rules
390×associate-/r/_binary64
382×associate-*r/_binary64
368×associate-/r*_binary64
367×*-commutative_binary64
362×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
114168
225168
346168
493168
5253168
6978168
73047168
83714168
93922168
104083168
114362168
124740168
Stop Event
node limit
Counts
54 → 30

prune168.0ms (6.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1540154
Fresh044
Picked011
Done000
Total1545159
Error
0b
Counts
159 → 5
Alt Table
StatusErrorProgram
0.1b
(*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))
0.1b
(+.f64 -1 (+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2)))))
4.8b
(/.f64 (*.f64 (-.f64 1 (pow.f64 m 3)) (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) (+.f64 1 (fma.f64 m m m)))
0.7b
(*.f64 (-.f64 1 m) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) 3))
0.1b
(-.f64 (+.f64 (*.f64 (pow.f64 m 3) (/.f64 1 v)) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
Compiler

Compiled 4389 to 2590 computations (41% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2)))
0.0b
(+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2))))
0.1b
(*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2))
0.2b
(*.f64 m (/.f64 m v))

series54.0ms (2%)

Counts
4 → 96
Calls

24 calls:

4.0ms
(+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2))))
v
-inf
4.0ms
(*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2))
v
-inf
3.0ms
(+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2))))
v
0
3.0ms
(+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2))))
v
inf
3.0ms
(+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2)))
v
0

rewrite71.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
383×fma-neg_binary64
231×expm1-udef_binary64
231×log1p-udef_binary64
142×egg-rr
128×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01058
124654
2405454
Stop Event
node limit
Counts
4 → 142

simplify46.0ms (1.7%)

Algorithm
egg-herbie
Rules
870×fma-neg_binary64
380×fma-def_binary64
252×distribute-rgt-out--_binary64
240×distribute-rgt-neg-in_binary64
207×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0381452
11041191
22451184
36741077
426851077
Stop Event
node limit
Counts
238 → 165

prune180.0ms (6.6%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1641165
Fresh123
Picked011
Done011
Total1655170
Error
0b
Counts
170 → 5
Alt Table
StatusErrorProgram
0.1b
(+.f64 -1 (+.f64 (/.f64 m v) (+.f64 m (*.f64 (*.f64 m (/.f64 m v)) (+.f64 m -2)))))
4.8b
(/.f64 (*.f64 (-.f64 1 (pow.f64 m 3)) (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) (+.f64 1 (fma.f64 m m m)))
0.7b
(*.f64 (-.f64 1 m) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 m) (/.f64 m v) -1)) 3))
0.0b
(+.f64 -1 (+.f64 (/.f64 m v) (+.f64 m (*.f64 (/.f64 1 (/.f64 v (*.f64 m m))) (+.f64 m -2)))))
0.1b
(-.f64 (+.f64 (*.f64 (pow.f64 m 3) (/.f64 1 v)) (+.f64 (/.f64 m v) m)) (+.f64 1 (*.f64 2 (/.f64 (pow.f64 m 2) v))))
Compiler

Compiled 4539 to 2385 computations (47.5% saved)

regimes324.0ms (11.9%)

Accuracy

Total 0.1b remaining (80%)

Threshold costs 0.1b (80%)

Counts
106 → 1
Compiler

Compiled 5793 to 3906 computations (32.6% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01528
12228
Stop Event
saturated

end86.0ms (3.2%)

Stop Event
fuel
Compiler

Compiled 147 to 100 computations (32% saved)

Profiling

Loading profile data...