Details

Time bar (total: 4.1s)

analyze109.0ms (2.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
25%74.9%0.1%5
37.5%62.4%0.1%6
37.5%40.6%22%7
43.7%32.8%23.5%8
43.7%21.1%35.2%9
46.8%16.8%36.4%10
46.8%10.7%42.4%11
48.4%8.5%43.1%12
48.4%5.4%46.2%13
49.2%4.3%46.6%14
Compiler

Compiled 9 to 6 computations (33.3% saved)

sample812.0ms (19.9%)

Results
744.0ms8256×body128valid
54.0ms536×body128invalid
Compiler

Compiled 18 to 12 computations (33.3% saved)

preprocess53.0ms (1.3%)

Algorithm
egg-herbie
Rules
428×unswap-sqr_binary64
334×associate-/l/_binary64
292×sqr-pow_binary64
271×associate-*r/_binary64
263×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0918
11518
22218
34018
49518
527118
685418
7142418
8374918
9401918
10445918
022
Stop Event
saturated
node limit
Compiler

Compiled 8 to 5 computations (37.5% saved)

simplify42.0ms (1%)

Algorithm
egg-herbie
Rules
445×associate-*l*_binary64
407×associate-*l/_binary64
368×unswap-sqr_binary64
264×associate-*r*_binary64
252×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
199
2139
3229
4519
51409
64259
714299
826609
940229
1044069
1149819
Stop Event
node limit
Counts
1 → 2

prune2.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
Compiler

Compiled 30 to 18 computations (40% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (exp.f64 y) y)
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))

series243.0ms (6%)

Counts
2 → 36
Calls

9 calls:

103.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
x
0
64.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
x
-inf
62.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
x
inf
6.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
y
inf
2.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
y
-inf

rewrite48.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
505×log1p-expm1-u_binary64
505×expm1-log1p-u_binary64
428×unpow-prod-down_binary64
289×log-prod_binary64
155×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
112015
2142115
Stop Event
node limit
Counts
2 → 65

simplify48.0ms (1.2%)

Algorithm
egg-herbie
Rules
521×fma-def_binary64
436×distribute-rgt-out_binary64
393×associate-*l*_binary64
376×*-commutative_binary64
320×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
031330
177322
2192315
3585311
42229311
54304311
64795311
Stop Event
node limit
Counts
101 → 83

prune61.0ms (1.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New81283
Fresh000
Picked011
Done000
Total81384
Error
0.0b
Counts
84 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
0.5b
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 6) x)) (+.f64 (*.f64 (pow.f64 y 2) x) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 4) x)) x)))
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
Compiler

Compiled 1203 to 576 computations (52.1% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2))
0.0b
(sqrt.f64 (exp.f64 y))
0.0b
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
0.0b
(*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y))

series650.0ms (15.9%)

Counts
4 → 52
Calls

15 calls:

246.0ms
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
x
0
190.0ms
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
x
inf
190.0ms
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
x
-inf
6.0ms
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
y
inf
4.0ms
(*.f64 x (*.f64 (pow.f64 (sqrt.f64 (exp.f64 y)) (*.f64 y 1/2)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
y
-inf

rewrite49.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
572×log-prod_binary64
227×log-pow_binary64
187×expm1-udef_binary64
187×log1p-udef_binary64
174×pow3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01252
125329
2296829
Stop Event
node limit
Counts
4 → 86

simplify63.0ms (1.5%)

Algorithm
egg-herbie
Rules
445×*-commutative_binary64
420×unswap-sqr_binary64
329×distribute-lft-out_binary64
280×fma-def_binary64
223×distribute-rgt-out_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0741137
11801091
2455821
31485818
42456690
54246570
Stop Event
node limit
Counts
138 → 117

prune182.0ms (4.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1492151
Fresh011
Picked101
Done011
Total1504154
Error
0.0b
Counts
154 → 4
Alt Table
StatusErrorProgram
0.5b
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 6) x)) (+.f64 (*.f64 (pow.f64 y 2) x) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 4) x)) x)))
0.0b
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
0.0b
(*.f64 (exp.f64 (*.f64 1/2 (*.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3))) y))) (*.f64 x (exp.f64 (*.f64 1/2 (*.f64 y (log.f64 (sqrt.f64 (exp.f64 y))))))))
Compiler

Compiled 3440 to 1803 computations (47.6% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2)))
0.0b
(sqrt.f64 (exp.f64 y))
0.0b
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
0.0b
(*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y))

series616.0ms (15.1%)

Counts
2 → 36
Calls

9 calls:

241.0ms
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
x
0
177.0ms
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
x
-inf
173.0ms
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
x
inf
8.0ms
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
y
inf
5.0ms
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
y
-inf

rewrite54.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
652×log-prod_binary64
236×log-pow_binary64
221×expm1-udef_binary64
221×log1p-udef_binary64
168×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01457
130025
2360625
Stop Event
node limit
Counts
2 → 35

simplify41.0ms (1%)

Algorithm
egg-herbie
Rules
546×fma-def_binary64
525×unswap-sqr_binary64
502×associate-*l*_binary64
393×distribute-rgt-out_binary64
364×associate-*r*_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
045918
1114854
2261763
3780703
42923591
Stop Event
node limit
Counts
71 → 54

prune133.0ms (3.3%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1102112
Fresh202
Picked011
Done011
Total1124116
Error
0.0b
Counts
116 → 4
Alt Table
StatusErrorProgram
0.0b
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
0.5b
(fma.f64 x (fma.f64 1/2 (pow.f64 y 4) (fma.f64 1/6 (pow.f64 y 6) (*.f64 y y))) x)
0.0b
(*.f64 (exp.f64 (*.f64 1/2 (*.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3))) y))) (*.f64 (exp.f64 (*.f64 1/4 (pow.f64 y 2))) x))
Compiler

Compiled 2150 to 1277 computations (40.6% saved)

localize14.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (exp.f64 (*.f64 1/4 (pow.f64 y 2))) x)
0.0b
(sqrt.f64 (pow.f64 (exp.f64 y) 3))
0.1b
(pow.f64 (exp.f64 y) 3)
6.8b
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3)))

series278.0ms (6.8%)

Counts
4 → 16
Calls

15 calls:

120.0ms
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3)))
y
inf
117.0ms
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3)))
y
-inf
12.0ms
(log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3)))
y
0
5.0ms
(*.f64 (exp.f64 (*.f64 1/4 (pow.f64 y 2))) x)
x
0
4.0ms
(*.f64 (exp.f64 (*.f64 1/4 (pow.f64 y 2))) x)
x
-inf

rewrite50.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
542×log-prod_binary64
210×expm1-udef_binary64
210×log1p-udef_binary64
204×log-pow_binary64
189×pow3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01432
127728
2292428
Stop Event
node limit
Counts
4 → 114

simplify57.0ms (1.4%)

Algorithm
egg-herbie
Rules
1926×fma-def_binary64
420×*-commutative_binary64
269×distribute-lft-out_binary64
228×unswap-sqr_binary64
170×associate-+l+_binary64
Iterations

Useful iterations: 9 (0.0ms)

IterNodesCost
047165
1121161
2334146
31088133
42722133
53547133
63755133
73915133
84086133
94307127
Stop Event
node limit
Counts
130 → 134

prune180.0ms (4.4%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1340134
Fresh011
Picked011
Done022
Total1344138
Error
0.0b
Counts
138 → 4
Alt Table
StatusErrorProgram
0.0b
(*.f64 x (*.f64 (pow.f64 (exp.f64 y) (/.f64 y 4)) (pow.f64 (*.f64 (sqrt.f64 (exp.f64 y)) (exp.f64 y)) (*.f64 y 1/2))))
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
0.5b
(fma.f64 x (fma.f64 1/2 (pow.f64 y 4) (fma.f64 1/6 (pow.f64 y 6) (*.f64 y y))) x)
0.0b
(*.f64 (exp.f64 (*.f64 1/2 (*.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 3))) y))) (*.f64 (exp.f64 (*.f64 1/4 (pow.f64 y 2))) x))
Compiler

Compiled 3193 to 2366 computations (25.9% saved)

regimes188.0ms (4.6%)

Accuracy

Total 0.0b remaining (71.9%)

Threshold costs 0.0b (71.9%)

Counts
41 → 1
Compiler

Compiled 3749 to 2808 computations (25.1% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
179
Stop Event
saturated

end77.0ms (1.9%)

Stop Event
fuel
Compiler

Compiled 85 to 58 computations (31.8% saved)

Profiling

Loading profile data...