Details

Time bar (total: 3.9s)

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

sample2.9s (73.2%)

Alt Table
StatusErrorProgram
57.9b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
Results
1.8s4193×body1024valid
544.0ms2016×body512valid
211.0ms413×body2048valid
178.0ms993×body256valid
68.0ms641×body128valid
0.0msbody128invalid
Compiler

Compiled 47 to 37 computations (21.3% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
4.9b
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))

series2.0ms (0.1%)

Counts
1 → 8
Calls

1 calls:

2.0ms
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))

rewrite17.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
68×add-sqr-sqrt_binary64
65×log1p-expm1-u_binary64
65×expm1-log1p-u_binary64
64×add-log-exp_binary64
62×add-cbrt-cube_binary64
Counts
1 → 0
Calls

1 calls:

17.0ms
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066
11306
2716
000
100

prune8.0ms (0.2%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New718
Fresh000
Picked011
Done000
Total729
Error
0.0b
Counts
9 → 2
Alt Table
StatusErrorProgram
0.6b
(/.f64 (+.f64 (*.f64 1/60 (pow.f64 x 5)) (+.f64 (*.f64 1/2520 (pow.f64 x 7)) (+.f64 (*.f64 1/3 (pow.f64 x 3)) (*.f64 2 x)))) 2)
57.9b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
Compiler

Compiled 150 to 119 computations (20.7% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1/60 (pow.f64 x 5)) (+.f64 (*.f64 1/2520 (pow.f64 x 7)) (+.f64 (*.f64 1/3 (pow.f64 x 3)) (*.f64 2 x))))
0.0b
(*.f64 1/60 (pow.f64 x 5))
0.1b
(*.f64 1/2520 (pow.f64 x 7))
0.1b
(*.f64 1/3 (pow.f64 x 3))

series15.0ms (0.4%)

Counts
4 → 11
Calls

4 calls:

4.0ms
(*.f64 1/3 (pow.f64 x 3))
4.0ms
(+.f64 (*.f64 1/60 (pow.f64 x 5)) (+.f64 (*.f64 1/2520 (pow.f64 x 7)) (+.f64 (*.f64 1/3 (pow.f64 x 3)) (*.f64 2 x))))
3.0ms
(*.f64 1/2520 (pow.f64 x 7))
3.0ms
(*.f64 1/60 (pow.f64 x 5))

rewrite79.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
908×prod-diff_binary64
205×add-sqr-sqrt_binary64
204×log1p-expm1-u_binary64
204×expm1-log1p-u_binary64
195×add-log-exp_binary64
Counts
4 → 76
Calls

4 calls:

77.0ms
(+.f64 (*.f64 1/60 (pow.f64 x 5)) (+.f64 (*.f64 1/2520 (pow.f64 x 7)) (+.f64 (*.f64 1/3 (pow.f64 x 3)) (*.f64 2 x))))
77.0ms
(*.f64 1/60 (pow.f64 x 5))
77.0ms
(*.f64 1/2520 (pow.f64 x 7))
77.0ms
(*.f64 1/3 (pow.f64 x 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01946
143646
2476646
3616246
000
100

prune139.0ms (3.5%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New86187
Fresh000
Picked011
Done011
Total86389
Error
0.0b
Counts
89 → 3
Alt Table
StatusErrorProgram
45.1b
(/.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) 3) (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 3)) (+.f64 (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))) (-.f64 (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 2) (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)))))) 2)
0.6b
(/.f64 (+.f64 (*.f64 1/60 (pow.f64 x 5)) (+.f64 (*.f64 1/2520 (pow.f64 x 7)) (+.f64 (*.f64 1/3 (pow.f64 x 3)) (*.f64 2 x)))) 2)
57.9b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
Compiler

Compiled 2719 to 2255 computations (17.1% saved)

localize23.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)))
0.0b
(fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))
0.1b
(*.f64 1/2520 (pow.f64 x 7))
44.0b
(/.f64 (+.f64 (pow.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) 3) (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 3)) (+.f64 (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))) (-.f64 (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 2) (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2))))))

series21.0ms (0.5%)

Counts
4 → 36
Calls

4 calls:

6.0ms
(/.f64 (+.f64 (pow.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) 3) (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 3)) (+.f64 (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))) (-.f64 (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 2) (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2))))))
5.0ms
(*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)))
5.0ms
(*.f64 1/2520 (pow.f64 x 7))
5.0ms
(fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))

rewrite71.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
264×log1p-expm1-u_binary64
264×expm1-log1p-u_binary64
252×add-cbrt-cube_binary64
249×add-log-exp_binary64
248×add-cube-cbrt_binary64
Counts
4 → 57
Calls

4 calls:

69.0ms
(*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)))
69.0ms
(fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))
69.0ms
(*.f64 1/2520 (pow.f64 x 7))
69.0ms
(/.f64 (+.f64 (pow.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) 3) (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 3)) (+.f64 (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))) (-.f64 (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 2) (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025145
1570145
24818145
34785145
000
100

prune415.0ms (10.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2130213
Fresh000
Picked011
Done022
Total2133216
Error
0.0b
Counts
216 → 3
Alt Table
StatusErrorProgram
45.1b
(/.f64 (/.f64 (+.f64 (pow.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) 3) (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 3)) (+.f64 (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7)))) (-.f64 (pow.f64 (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)) 2) (*.f64 (fma.f64 1/60 (pow.f64 x 5) (*.f64 1/2520 (pow.f64 x 7))) (fma.f64 1/3 (pow.f64 x 3) (*.f64 x 2)))))) 2)
0.6b
(/.f64 (+.f64 (*.f64 1/60 (pow.f64 x 5)) (+.f64 (*.f64 1/2520 (pow.f64 x 7)) (+.f64 (*.f64 1/3 (pow.f64 x 3)) (*.f64 2 x)))) 2)
57.9b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
Compiler

Compiled 16338 to 13501 computations (17.4% saved)

regimes122.0ms (3.1%)

Accuracy

Total 0.5b remaining (99.2%)

Threshold costs 0.5b (99.2%)

Counts
26 → 1
Compiler

Compiled 3507 to 2900 computations (17.3% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
*-lft-identity_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01928
12328
22228

end112.0ms (2.9%)

Compiler

Compiled 154 to 126 computations (18.2% saved)

Profiling

Loading profile data...