Details

Time bar (total: 2.6s)

analyze134.0ms (5.1%)

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)

sample912.0ms (35%)

Results
766.0ms8256×body128valid
48.0ms521×body128invalid
Compiler

Compiled 26 to 17 computations (34.6% saved)

simplify89.0ms (3.4%)

Algorithm
egg-herbie
Rules
457×associate-*l*_binary64
414×associate-*l/_binary64
380×sqr-pow_binary64
368×unswap-sqr_binary64
321×exp-prod_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
199
2139
3229
4489
51109
62689
77779
814449
923619
1026759
1131609
1242429
1349649
1447819

prune1.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.0b
(*.f64 x (exp.f64 (*.f64 y y)))
Compiler

Compiled 24 to 15 computations (37.5% saved)

localize4.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series13.0ms (0.5%)

Counts
2 → 36
Calls

2 calls:

11.0ms
(*.f64 x (exp.f64 (*.f64 y y)))
2.0ms
(exp.f64 (*.f64 y y))

rewrite5.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-log-exp_binary64
Counts
2 → 32
Calls

2 calls:

3.0ms
(*.f64 x (exp.f64 (*.f64 y y)))
1.0ms
(exp.f64 (*.f64 y y))

simplify83.0ms (3.2%)

Algorithm
egg-herbie
Rules
775×fma-def_binary64
516×distribute-rgt-out_binary64
343×distribute-rgt-in_binary64
316×*-commutative_binary64
302×distribute-lft-in_binary64
Counts
68 → 58
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
066688
1138631
2387624
3888620
41789620
53558620
64549620
74896620

prune35.0ms (1.4%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New56258
Fresh000
Picked101
Done000
Total57259
Error
0.0b
Counts
59 → 2
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 (pow.f64 (exp.f64 y) y))
Compiler

Compiled 695 to 265 computations (61.9% saved)

localize6.0ms (0.2%)

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))

series201.0ms (7.7%)

Counts
2 → 36
Calls

2 calls:

199.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
2.0ms
(pow.f64 (exp.f64 y) y)

rewrite8.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
13×add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
associate-*r*_binary64
unpow-prod-down_binary64
Counts
2 → 49
Calls

2 calls:

4.0ms
(*.f64 x (pow.f64 (exp.f64 y) y))
2.0ms
(pow.f64 (exp.f64 y) y)

simplify64.0ms (2.5%)

Algorithm
egg-herbie
Rules
876×fma-def_binary64
377×associate-*l*_binary64
317×associate-*r*_binary64
306×distribute-rgt-in_binary64
282×distribute-lft-in_binary64
Counts
85 → 89
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
094889
1192837
2555830
31530824
44236822
54950822

prune58.0ms (2.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New88189
Fresh011
Picked011
Done000
Total88391
Error
0b
Counts
91 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y))) (sqrt.f64 (pow.f64 (exp.f64 y) y)))
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 1085 to 394 computations (63.7% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

series383.0ms (14.7%)

Counts
3 → 60
Calls

3 calls:

192.0ms
(*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y)))
187.0ms
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y))) (sqrt.f64 (pow.f64 (exp.f64 y) y)))
4.0ms
(sqrt.f64 (pow.f64 (exp.f64 y) y))

rewrite21.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
24×sqrt-prod_binary64
21×add-sqr-sqrt_binary64
20×associate-*r*_binary64
12×*-un-lft-identity_binary64
12×add-cube-cbrt_binary64
Counts
3 → 78
Calls

3 calls:

10.0ms
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y))) (sqrt.f64 (pow.f64 (exp.f64 y) y)))
5.0ms
(*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y)))
2.0ms
(sqrt.f64 (pow.f64 (exp.f64 y) y))

simplify81.0ms (3.1%)

Algorithm
egg-herbie
Rules
764×fma-def_binary64
639×distribute-rgt-in_binary64
579×distribute-lft-in_binary64
474×unswap-sqr_binary64
259×*-commutative_binary64
Counts
138 → 139
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01261788
12841700
28191641
312801624
423071624
550531624

prune168.0ms (6.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2561257
Fresh101
Picked011
Done011
Total2573260
Error
0b
Counts
260 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y))) (sqrt.f64 (pow.f64 (exp.f64 y) y)))
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
0.5b
(fma.f64 x (fma.f64 1/6 (pow.f64 y 6) (fma.f64 y y (*.f64 1/2 (pow.f64 y 4)))) x)
Compiler

Compiled 4725 to 1203 computations (74.5% saved)

localize12.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 1/6 (pow.f64 y 6) (fma.f64 y y (*.f64 1/2 (pow.f64 y 4))))
0.0b
(*.f64 1/2 (pow.f64 y 4))

series6.0ms (0.2%)

Counts
2 → 12
Calls

2 calls:

4.0ms
(fma.f64 1/6 (pow.f64 y 6) (fma.f64 y y (*.f64 1/2 (pow.f64 y 4))))
3.0ms
(*.f64 1/2 (pow.f64 y 4))

rewrite6.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt_binary64
associate-*r*_binary64
add-exp-log_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
2 → 37
Calls

2 calls:

4.0ms
(*.f64 1/2 (pow.f64 y 4))
1.0ms
(fma.f64 1/6 (pow.f64 y 6) (fma.f64 y y (*.f64 1/2 (pow.f64 y 4))))

simplify47.0ms (1.8%)

Algorithm
egg-herbie
Rules
853×associate-+l+_binary64
835×associate-+r+_binary64
329×*-commutative_binary64
327×distribute-rgt-in_binary64
320×distribute-lft-in_binary64
Counts
49 → 60
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
072717
1126656
2271637
3834631
42138631
55778631

prune60.0ms (2.3%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New60060
Fresh000
Picked011
Done022
Total60363
Error
0b
Counts
63 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 (*.f64 x (sqrt.f64 (pow.f64 (exp.f64 y) y))) (sqrt.f64 (pow.f64 (exp.f64 y) y)))
0.0b
(*.f64 x (pow.f64 (exp.f64 y) y))
0.5b
(fma.f64 x (fma.f64 1/6 (pow.f64 y 6) (fma.f64 y y (*.f64 1/2 (pow.f64 y 4)))) x)
Compiler

Compiled 1303 to 873 computations (33% saved)

regimes140.0ms (5.4%)

Accuracy

Total 0.0b remaining (59.3%)

Threshold costs 0.0b (59.3%)

Counts
31 → 1
Compiler

Compiled 2618 to 1421 computations (45.7% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069
179
279

end55.0ms (2.1%)

Compiler

Compiled 57 to 34 computations (40.4% saved)

Profiling

Loading profile data...