Details

Time bar (total: 3.6s)

analyze19.0ms (0.5%)

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%1.6%48.5%9
50.4%1.2%48.5%10
50.4%1.2%48.5%11
50.4%1.1%48.6%12
50.4%1%48.6%13
50.5%0.9%48.6%14
Compiler

Compiled 15 to 8 computations (46.7% saved)

sample3.2s (87.3%)

Alt Table
StatusErrorProgram
58.1b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
Results
1.9s4094×body1024valid
622.0ms2020×body512valid
263.0ms415×body2048valid
188.0ms988×body256valid
86.0ms739×body128valid
0.0msbody128invalid
Compiler

Compiled 72 to 37 computations (48.6% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
0.7b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
4.8b
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))

series19.0ms (0.5%)

Counts
3 → 24
Calls

3 calls:

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

rewrite73.0ms (2%)

Algorithm
batch-egg-rewrite
egg-rewrite
Rules
97×add-sqr-sqrt_binary64
92×log1p-expm1-u_binary64
92×expm1-log1p-u_binary64
91×add-log-exp_binary64
89×add-cbrt-cube_binary64
Counts
3 → 0
Calls

3 calls:

73.0ms
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
73.0ms
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
73.0ms
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
118618
22618
066
11306
2716
083
11863
2263
066
11296
2196
000
100

prune17.0ms (0.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New22224
Fresh000
Picked011
Done000
Total22325
Error
0.7b
Counts
25 → 3
Alt Table
StatusErrorProgram
58.1b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
1.4b
(/.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)))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
1.7b
x
Compiler

Compiled 427 to 241 computations (43.6% saved)

localize18.0ms (0.5%)

Local error

Found 4 expressions with local error:

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

series14.0ms (0.4%)

Counts
4 → 9
Calls

4 calls:

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

rewrite63.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
334×fma-def_binary64
293×expm1-udef_binary64
293×log1p-udef_binary64
171×add-sqr-sqrt_binary64
170×fma-neg_binary64
Counts
4 → 92
Calls

4 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01732
137032
2388332
3494532
000
100

prune123.0ms (3.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1010101
Fresh011
Picked011
Done011
Total1013104
Error
0.7b
Counts
104 → 3
Alt Table
StatusErrorProgram
58.1b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
1.4b
(/.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)))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
1.7b
x
Compiler

Compiled 3291 to 2190 computations (33.5% saved)

localize1.0ms (0%)

prune3.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done022
Total033
Error
0.7b
Counts
3 → 3
Alt Table
StatusErrorProgram
58.1b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
1.4b
(/.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)))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
1.7b
x
Compiler

Compiled 45 to 31 computations (31.1% saved)

regimes27.0ms (0.7%)

Accuracy

Total 0.6b remaining (43.6%)

Threshold costs 0.6b (43.6%)

Counts
12 → 1
Compiler

Compiled 486 to 362 computations (25.5% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02443
13643
23843
33943
43943

end77.0ms (2.1%)

Compiler

Compiled 103 to 77 computations (25.2% saved)

Profiling

Loading profile data...