Details

Time bar (total: 4.7s)

analyze402.0ms (8.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%50%0%2
50%50%0%3
62.5%37.5%0%4
68.7%31.2%0%5
71.8%28.1%0%6
73.4%26.5%0%7
74.2%25.8%0%8
74.6%25.4%0%9
74.8%25.2%0%10
74.9%25.1%0%11
74.9%25%0%12
74.9%25%0%13
75%25%0%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample3.3s (69.4%)

Results
1.5s2558×body1024valid
776.0ms1297×body2048valid
493.0ms1290×body512valid
272.0ms2406×body128valid
162.0ms672×body256valid
24.0ms33×body4096valid
Compiler

Compiled 22 to 16 computations (27.3% saved)

preprocess17.0ms (0.4%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
1-exp_binary64
hypot-1-def_binary64
fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
1139
2149
011
Stop Event
saturated
saturated
Compiler

Compiled 10 to 7 computations (30% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
1-exp_binary64
hypot-1-def_binary64
fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0812
1139
2149
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
46.9b
Counts
3 → 1
Alt Table
StatusErrorProgram
46.9b
(log.f64 (+.f64 x (hypot.f64 1 x)))
Compiler

Compiled 30 to 21 computations (30% saved)

localize4.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 1 x)
0.6b
(+.f64 x (hypot.f64 1 x))
3.0b
(log.f64 (+.f64 x (hypot.f64 1 x)))

series10.0ms (0.2%)

Counts
3 → 36
Calls

9 calls:

3.0ms
(+.f64 x (hypot.f64 1 x))
x
-inf
1.0ms
(log.f64 (+.f64 x (hypot.f64 1 x)))
x
-inf
1.0ms
(log.f64 (+.f64 x (hypot.f64 1 x)))
x
inf
1.0ms
(log.f64 (+.f64 x (hypot.f64 1 x)))
x
0
1.0ms
(+.f64 x (hypot.f64 1 x))
x
inf

rewrite43.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
575×log1p-expm1-u_binary64
575×expm1-log1p-u_binary64
462×prod-diff_binary64
165×fma-def_binary64
105×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0620
112120
2153720
Stop Event
node limit
Counts
3 → 81

simplify38.0ms (0.8%)

Algorithm
egg-herbie
Rules
447×cancel-sign-sub-inv_binary64
436×fma-neg_binary64
413×associate-/r*_binary64
338×sub-neg_binary64
314×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
098569
1306549
2863537
32779537
Stop Event
node limit
Counts
117 → 145

prune69.0ms (1.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1423145
Fresh000
Picked011
Done000
Total1424146
Error
0b
Counts
146 → 4
Alt Table
StatusErrorProgram
46.7b
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
46.8b
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
31.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
46.9b
(log.f64 (+.f64 x (hypot.f64 1 x)))
Compiler

Compiled 1968 to 1472 computations (25.2% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (pow.f64 x 3) -1/6 x)

series3.0ms (0.1%)

Counts
1 → 12
Calls

3 calls:

1.0ms
(fma.f64 (pow.f64 x 3) -1/6 x)
x
-inf
1.0ms
(fma.f64 (pow.f64 x 3) -1/6 x)
x
inf
1.0ms
(fma.f64 (pow.f64 x 3) -1/6 x)
x
0

rewrite32.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
493×log1p-expm1-u_binary64
493×expm1-log1p-u_binary64
282×unpow-prod-down_binary64
223×log-prod_binary64
142×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11268
213558
Stop Event
node limit
Counts
1 → 36

simplify29.0ms (0.6%)

Algorithm
egg-herbie
Rules
1047×fma-def_binary64
818×unswap-sqr_binary64
241×associate-*l*_binary64
194×fma-neg_binary64
174×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
09105
123105
26187
319487
442987
5119087
6237487
7326687
Stop Event
node limit
Counts
48 → 41

prune21.0ms (0.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New41041
Fresh022
Picked011
Done011
Total41445
Error
0b
Counts
45 → 4
Alt Table
StatusErrorProgram
46.7b
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
46.8b
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
31.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
46.9b
(log.f64 (+.f64 x (hypot.f64 1 x)))
Compiler

Compiled 597 to 468 computations (21.6% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1/8 (pow.f64 x 3))
0.1b
(/.f64 -1/16 (pow.f64 x 5))
13.8b
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
19.1b
(+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5))))

series13.0ms (0.3%)

Counts
4 → 24
Calls

12 calls:

1.0ms
(+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5))))
x
0
1.0ms
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
x
0
1.0ms
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
x
-inf
1.0ms
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
x
inf
1.0ms
(+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5))))
x
-inf

rewrite81.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
297×log1p-udef_binary64
170×log1p-expm1-u_binary64
170×expm1-log1p-u_binary64
169×add-sqr-sqrt_binary64
168×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01560
135752
2500052
Stop Event
node limit
Counts
4 → 123

simplify31.0ms (0.7%)

Algorithm
egg-herbie
Rules
883×fma-def_binary64
313×associate-/r*_binary64
306×associate-*l*_binary64
236×sub-neg_binary64
220×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075467
1221459
2589457
31816451
Stop Event
node limit
Counts
147 → 154

prune114.0ms (2.4%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1540154
Fresh011
Picked011
Done022
Total1544158
Error
0b
Counts
158 → 4
Alt Table
StatusErrorProgram
46.7b
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
46.8b
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
31.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
46.9b
(log.f64 (+.f64 x (hypot.f64 1 x)))
Compiler

Compiled 3787 to 3069 computations (19% saved)

localize17.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))
0.4b
(/.f64 1 (pow.f64 x 2))
0.5b
(/.f64 1 (pow.f64 x 4))
7.4b
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))

series56.0ms (1.2%)

Counts
4 → 18
Calls

12 calls:

18.0ms
(+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))
x
0
15.0ms
(+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))
x
-inf
12.0ms
(+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))
x
inf
2.0ms
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
x
inf
2.0ms
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
x
-inf

rewrite44.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
212×log1p-expm1-u_binary64
212×expm1-log1p-u_binary64
209×add-sqr-sqrt_binary64
209×add-cbrt-cube_binary64
203×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02142
147636
Stop Event
node limit
Counts
4 → 130

simplify28.0ms (0.6%)

Algorithm
egg-herbie
Rules
482×fma-def_binary64
418×fma-neg_binary64
374×cancel-sign-sub-inv_binary64
370×associate-/r*_binary64
294×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037297
193289
2244289
3704289
41967289
Stop Event
node limit
Counts
148 → 143

prune99.0ms (2.1%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1430143
Fresh000
Picked011
Done033
Total1434147
Error
0b
Counts
147 → 4
Alt Table
StatusErrorProgram
46.7b
(log.f64 (+.f64 (/.f64 1/8 (pow.f64 x 3)) (+.f64 (/.f64 -1/2 x) (/.f64 -1/16 (pow.f64 x 5)))))
46.8b
(-.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
31.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
46.9b
(log.f64 (+.f64 x (hypot.f64 1 x)))
Compiler

Compiled 3843 to 3159 computations (17.8% saved)

regimes137.0ms (2.9%)

Accuracy

Total 0.1b remaining (52.5%)

Threshold costs 0.1b (52.5%)

Counts
35 → 3
Compiler

Compiled 1578 to 1255 computations (20.5% saved)

bsearch40.0ms (0.9%)

Algorithm
binary-search
Calls

2 calls:

21.0ms
x
18.0ms
x
Steps
ItersPointRange
0.0009468969774314637
∈ [
3.0806495832780393e-7
,
19034.37601013665
]
-1.0296531942022684
∈ [
-373.60856981001484
,
-8.738875892567779e-6
]
Compiler

Compiled 2 to 1 computations (50% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02849
13149
Stop Event
saturated

end86.0ms (1.8%)

Stop Event
done
Compiler

Compiled 125 to 97 computations (22.4% saved)

Profiling

Loading profile data...