Details

Time bar (total: 3.8s)

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.0s (79.7%)

Results
1.8s3934×body1024valid
560.0ms2038×body512valid
240.0ms428×body2048valid
192.0ms1039×body256valid
86.0ms817×body128valid
Compiler

Compiled 44 to 23 computations (47.7% saved)

simplify70.0ms (1.9%)

Algorithm
egg-herbie
Rules
720×fma-def_binary64
658×unswap-sqr_binary64
478×fma-neg_binary64
464×times-frac_binary64
388×associate-/r/_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0822
12022
23422
35822
412522
528822
662422
7157722
8379822
9455322
10502322

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 42 to 21 computations (50% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
2.2b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
6.9b
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))

series18.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))))
2.0ms
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
2.0ms
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))

rewrite75.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:

75.0ms
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
75.0ms
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
75.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

simplify69.0ms (1.8%)

Algorithm
egg-herbie
Rules
785×fma-def_binary64
752×fma-neg_binary64
514×cancel-sign-sub-inv_binary64
508×unswap-sqr_binary64
480×associate-*l*_binary64
Counts
24 → 27
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
050321
1137317
2336311
3910309
42632309
54822309
64911309
74936309

prune22.0ms (0.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New25227
Fresh000
Picked011
Done000
Total25328
Error
2.0b
Counts
28 → 3
Alt Table
StatusErrorProgram
58.3b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
3.2b
(fma.f64 (pow.f64 x 7) -17/315 (fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x)))
3.3b
x
Compiler

Compiled 454 to 243 computations (46.5% saved)

localize10.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (pow.f64 x 7) -17/315 (fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x)))
0.0b
(fma.f64 (pow.f64 x 5) 2/15 x)
0.0b
(fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x))

series13.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

6.0ms
(fma.f64 (pow.f64 x 7) -17/315 (fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x)))
3.0ms
(fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x))
3.0ms
(fma.f64 (pow.f64 x 5) 2/15 x)

rewrite57.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
507×log-prod_binary64
239×expm1-udef_binary64
239×log1p-udef_binary64
201×log-pow_binary64
152×prod-diff_binary64
Counts
3 → 92
Calls

3 calls:

54.0ms
(fma.f64 (pow.f64 x 7) -17/315 (fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x)))
54.0ms
(fma.f64 (pow.f64 x 5) 2/15 x)
54.0ms
(fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01445
130245
2302545
3492145
000
100

simplify171.0ms (4.6%)

Algorithm
egg-herbie
Rules
921×distribute-rgt-neg-in_binary64
534×sqr-pow_binary64
477×fma-neg_binary64
432×sub-neg_binary64
398×cancel-sign-sub-inv_binary64
Counts
128 → 110
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
024438
174430
2166408
3431402
41180402
51924402
62643402
73577402
83489402
93665402
103867402
114057402
123819402
134825402
144889402

prune79.0ms (2.1%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1100110
Fresh011
Picked011
Done011
Total1103113
Error
2.0b
Counts
113 → 3
Alt Table
StatusErrorProgram
58.3b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
3.2b
(fma.f64 (pow.f64 x 7) -17/315 (fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x)))
3.3b
x
Compiler

Compiled 2408 to 1884 computations (21.8% saved)

localize1.0ms (0%)

prune2.0ms (0%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done022
Total033
Error
2.0b
Counts
3 → 3
Alt Table
StatusErrorProgram
58.3b
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
3.2b
(fma.f64 (pow.f64 x 7) -17/315 (fma.f64 (pow.f64 x 3) -1/3 (fma.f64 (pow.f64 x 5) 2/15 x)))
3.3b
x
Compiler

Compiled 33 to 21 computations (36.4% saved)

regimes28.0ms (0.7%)

Accuracy

Total 0.7b remaining (40.2%)

Threshold costs 0.7b (40.2%)

Counts
14 → 1
Compiler

Compiled 422 to 306 computations (27.5% saved)

simplify2.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
01730
12330
22530
32630
42630

end120.0ms (3.2%)

Compiler

Compiled 75 to 53 computations (29.3% saved)

Profiling

Loading profile data...