Details

Time bar (total: 6.7s)

analyze4.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
50%25%25%4
50%12.5%37.5%5
50%6.2%43.8%6
50%3.1%46.9%7
50%1.6%48.5%8
50%0.8%49.2%9
50.4%0.4%49.2%10
50.4%0.2%49.4%11
50.4%0.1%49.5%12
50.4%0%49.6%13
50.4%0%49.6%14
Compiler

Compiled 10 to 8 computations (20% saved)

sample5.0s (74.9%)

Results
3.5s4262×body2048valid
901.0ms2148×body1024valid
381.0ms984×body512valid
106.0ms494×body256valid
64.0ms368×body128valid
Compiler

Compiled 29 to 23 computations (20.7% saved)

simplify65.0ms (1%)

Algorithm
egg-herbie
Rules
819×div-sub_binary64
801×associate-/l*_binary64
624×fma-def_binary64
581×fma-neg_binary64
548×unswap-sqr_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
12013
23513
35713
411213
522313
648113
789013
8157013
9477813
10581513

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
31.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
31.1b
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Compiler

Compiled 27 to 21 computations (22.2% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (exp.f64 x) 2)
4.0b
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))

series4.0ms (0.1%)

Counts
2 → 16
Calls

2 calls:

3.0ms
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
2.0ms
(-.f64 (exp.f64 x) 2)

rewrite16.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
27×*-un-lft-identity_binary64
22×add-sqr-sqrt_binary64
18×prod-diff_binary64
18×add-cube-cbrt_binary64
13×associate-+l+_binary64
Counts
2 → 69
Calls

2 calls:

9.0ms
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
3.0ms
(-.f64 (exp.f64 x) 2)

simplify77.0ms (1.1%)

Algorithm
egg-herbie
Rules
650×fma-neg_binary64
326×fma-def_binary64
296×distribute-rgt-in_binary64
282×distribute-lft-in_binary64
268×distribute-rgt-out_binary64
Counts
85 → 114
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01451174
1295959
2717942
32801932
44435932
54838932

prune63.0ms (0.9%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1131114
Fresh000
Picked011
Done000
Total1132115
Error
0.0b
Counts
115 → 2
Alt Table
StatusErrorProgram
31.1b
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.2b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
Compiler

Compiled 2063 to 1172 computations (43.2% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))
0.0b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
0.0b
(*.f64 1/20160 (pow.f64 x 8))

series14.0ms (0.2%)

Counts
3 → 24
Calls

3 calls:

6.0ms
(*.f64 1/20160 (pow.f64 x 8))
4.0ms
(fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))
4.0ms
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))

rewrite6.0ms (0.1%)

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

3 calls:

4.0ms
(*.f64 1/20160 (pow.f64 x 8))
0.0ms
(fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))
0.0ms
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))

simplify84.0ms (1.3%)

Algorithm
egg-herbie
Rules
668×fma-def_binary64
628×unswap-sqr_binary64
530×*-commutative_binary64
354×log-prod_binary64
302×associate-+r+_binary64
Counts
71 → 69
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0921093
11621007
2375989
31442989
43258983
54893983
65054983

prune63.0ms (0.9%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New67269
Fresh000
Picked011
Done011
Total67471
Error
0b
Counts
71 → 4
Alt Table
StatusErrorProgram
31.1b
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.2b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
1.0b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (*.f64 (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
3.3b
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
Compiler

Compiled 1684 to 1263 computations (25% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/20160 (pow.f64 x 8))
0.2b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
0.4b
(*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
28.4b
(cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))

series76.0ms (1.1%)

Counts
3 → 36
Calls

3 calls:

37.0ms
(cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))
33.0ms
(*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
5.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))

rewrite24.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64
24×add-sqr-sqrt_binary64
23×cbrt-prod_binary64
16×pow1/3_binary64
14×*-un-lft-identity_binary64
Counts
3 → 93
Calls

3 calls:

12.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
4.0ms
(*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
1.0ms
(cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))

simplify115.0ms (1.7%)

Algorithm
egg-herbie
Rules
409×associate-*l*_binary64
390×unswap-sqr_binary64
345×associate-*r*_binary64
329×fma-def_binary64
306×fma-neg_binary64
Counts
129 → 168
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01943616
14713274
211632714
337502504
451632504

prune532.0ms (8%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New3420342
Fresh011
Picked011
Done022
Total3424346
Error
0b
Counts
346 → 4
Alt Table
StatusErrorProgram
31.1b
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.2b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
1.0b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (*.f64 (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
3.3b
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
Compiler

Compiled 16260 to 12260 computations (24.6% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
0.0b
(*.f64 1/20160 (pow.f64 x 8))
3.1b
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
28.5b
(log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))))

series12.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

7.0ms
(log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))))
4.0ms
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))

rewrite4.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
log-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
exp-prod_binary64
Counts
2 → 31
Calls

2 calls:

2.0ms
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
1.0ms
(log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))))

simplify76.0ms (1.1%)

Algorithm
egg-herbie
Rules
493×associate-+l+_binary64
429×associate-+r+_binary64
258×times-frac_binary64
238×fma-def_binary64
226×exp-prod_binary64
Counts
55 → 87
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01021604
12201416
25271402
317411394
446181394
550701394

prune217.0ms (3.2%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1430143
Fresh000
Picked011
Done033
Total1434147
Error
0b
Counts
147 → 4
Alt Table
StatusErrorProgram
31.1b
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.2b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))
1.0b
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (*.f64 (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8))))) (cbrt.f64 (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
3.3b
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 x x (*.f64 1/20160 (pow.f64 x 8)))))))
Compiler

Compiled 3688 to 2839 computations (23% saved)

regimes70.0ms (1.1%)

Accuracy

Total 0.5b remaining (96.9%)

Threshold costs 0.5b (96.9%)

Counts
38 → 1
Compiler

Compiled 1420 to 1072 computations (24.5% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01525
11625
21625

end111.0ms (1.7%)

Compiler

Compiled 127 to 94 computations (26% saved)

Profiling

Loading profile data...