Details

Time bar (total: 1.7s)

analyze39.0ms (2.3%)

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
25%74.9%0.1%4
37.5%62.4%0.1%5
62.4%37.5%0.1%6
87.4%12.5%0.1%7
87.4%12.5%0.1%8
93.7%6.2%0.1%9
93.7%6.2%0.1%10
96.8%3.1%0.1%11
96.8%3.1%0.1%12
98.3%1.6%0.1%13
98.3%1.6%0.1%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample934.0ms (55%)

Results
818.0ms8256×body128valid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify73.0ms (4.3%)

Algorithm
egg-herbie
Rules
694×fma-def_binary64
621×fma-neg_binary64
457×times-frac_binary64
316×div-sub_binary64
141×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0712
11812
23812
37112
415212
520712
659710
793710
8131410
9133710
10134210
11136910
12137910
13137910
14127410

prune3.0ms (0.2%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
Compiler

Compiled 35 to 18 computations (48.6% saved)

localize5.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))

series13.0ms (0.8%)

Counts
1 → 24
Calls

1 calls:

13.0ms
(/.f64 (+.f64 f n) (-.f64 n f))

rewrite9.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
34×*-un-lft-identity_binary64
22×add-sqr-sqrt_binary64
20×times-frac_binary64
12×add-cube-cbrt_binary64
distribute-lft-out_binary64
Counts
1 → 47
Calls

1 calls:

6.0ms
(/.f64 (+.f64 f n) (-.f64 n f))

simplify83.0ms (4.9%)

Algorithm
egg-herbie
Rules
360×cancel-sign-sub-inv_binary64
305×neg-mul-1_binary64
284×div-sub_binary64
252×fma-def_binary64
243×fma-neg_binary64
Counts
71 → 57
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081291
12741214
27951163
325941145
444361145
551071145

prune69.0ms (4%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New55257
Fresh000
Picked101
Done000
Total56258
Error
0b
Counts
58 → 2
Alt Table
StatusErrorProgram
0.0b
(log1p.f64 (expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
31.4b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
Compiler

Compiled 903 to 304 computations (66.3% saved)

localize8.0ms (0.5%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 (expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
0.0b
(/.f64 (+.f64 f n) (-.f64 n f))
0.5b
(expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f)))

series30.0ms (1.8%)

Counts
2 → 48
Calls

2 calls:

20.0ms
(expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f)))
11.0ms
(log1p.f64 (expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f))))

rewrite1.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
log1p-expm1-u_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 22
Calls

2 calls:

0.0ms
(expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f)))
0.0ms
(log1p.f64 (expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f))))

simplify78.0ms (4.6%)

Algorithm
egg-herbie
Rules
472×fma-neg_binary64
450×cancel-sign-sub-inv_binary64
423×times-frac_binary64
309×associate-/l*_binary64
256×fma-def_binary64
Counts
70 → 60
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01001424
12621306
28521222
335731207
449531207
549661207

prune57.0ms (3.3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1170117
Fresh011
Picked011
Done000
Total1172119
Error
0b
Counts
119 → 2
Alt Table
StatusErrorProgram
0.0b
(log1p.f64 (expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
31.4b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
Compiler

Compiled 1919 to 788 computations (58.9% saved)

localize10.0ms (0.6%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 n f) 1)
0.1b
(*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f))

series19.0ms (1.1%)

Counts
2 → 48
Calls

2 calls:

14.0ms
(*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f))
5.0ms
(+.f64 (/.f64 n f) 1)

rewrite25.0ms (1.5%)

Algorithm
rewrite-expression-head
Rules
22×add-sqr-sqrt_binary64
21×*-un-lft-identity_binary64
19×times-frac_binary64
17×add-cube-cbrt_binary64
13×fma-def_binary64
Counts
2 → 66
Calls

2 calls:

16.0ms
(*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f))
5.0ms
(+.f64 (/.f64 n f) 1)

simplify79.0ms (4.6%)

Algorithm
egg-herbie
Rules
332×associate-*l*_binary64
268×associate-*r*_binary64
245×associate-*l/_binary64
242×associate-*r/_binary64
228×distribute-rgt-in_binary64
Counts
114 → 95
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0991388
12351221
27791141
326121140
440701128
549761128

prune48.0ms (2.8%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New95095
Fresh000
Picked011
Done011
Total95297
Error
0b
Counts
97 → 2
Alt Table
StatusErrorProgram
0.0b
(log1p.f64 (expm1.f64 (/.f64 (+.f64 f n) (-.f64 n f))))
31.4b
(fma.f64 (*.f64 (+.f64 (/.f64 n f) 1) (/.f64 n f)) -2 -1)
Compiler

Compiled 1819 to 884 computations (51.4% saved)

regimes67.0ms (4%)

Accuracy

Total 0.0b remaining (40.5%)

Threshold costs 0.0b (40.5%)

Counts
25 → 1
Compiler

Compiled 820 to 616 computations (24.9% saved)

simplify3.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01017
11817
22217
32417
42517
52317

end44.0ms (2.6%)

Compiler

Compiled 51 to 34 computations (33.3% saved)

Profiling

Loading profile data...