Details

Time bar (total: 2.9s)

analyze393.0ms (13.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
25%75%0%3
25%50%25%4
25%37.5%37.5%5
25%31.2%43.8%6
25%28.1%46.9%7
25%26.5%48.5%8
25%25.8%49.2%9
25%25.4%49.6%10
25%25.2%49.8%11
25%25.1%49.9%12
25%25%50%13
25%25%50%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample1.8s (62.2%)

Results
873.0ms8256×body128valid
778.0ms8161×body128invalid
Compiler

Compiled 32 to 23 computations (28.1% saved)

simplify151.0ms (5.1%)

Algorithm
egg-herbie
Rules
871×fma-neg_binary64
804×unsub-neg_binary64
461×distribute-neg-in_binary64
434×sub-neg_binary64
338×distribute-rgt-out_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
11812
22212
33712
46412
511312
624712
750012
8156012
9251312
10321812
11360212
12380312
13397412
14407512
15439212
16483612
17489812
18490112

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
33.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
33.8b
(log.f64 (+.f64 x (sqrt.f64 (fma.f64 x x -1))))
Compiler

Compiled 36 to 24 computations (33.3% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (+.f64 x (sqrt.f64 (fma.f64 x x -1))))
0.0b
(+.f64 x (sqrt.f64 (fma.f64 x x -1)))
31.4b
(sqrt.f64 (fma.f64 x x -1))

series13.0ms (0.4%)

Counts
3 → 36
Calls

3 calls:

6.0ms
(log.f64 (+.f64 x (sqrt.f64 (fma.f64 x x -1))))
4.0ms
(sqrt.f64 (fma.f64 x x -1))
3.0ms
(+.f64 x (sqrt.f64 (fma.f64 x x -1)))

rewrite9.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-log-exp_binary64
pow1_binary64
Counts
3 → 49
Calls

3 calls:

4.0ms
(+.f64 x (sqrt.f64 (fma.f64 x x -1)))
3.0ms
(log.f64 (+.f64 x (sqrt.f64 (fma.f64 x x -1))))
1.0ms
(sqrt.f64 (fma.f64 x x -1))

simplify78.0ms (2.6%)

Algorithm
egg-herbie
Rules
583×fma-neg_binary64
330×sub-neg_binary64
301×fma-def_binary64
254×distribute-neg-frac_binary64
210×associate-+l+_binary64
Counts
85 → 118
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01591395
14011305
210521265
334241265
447731265
549151265

prune62.0ms (2.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1162118
Fresh000
Picked101
Done000
Total1172119
Error
0b
Counts
119 → 2
Alt Table
StatusErrorProgram
33.8b
(log.f64 (+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))))
0.4b
(log.f64 (fma.f64 x 2 (/.f64 -1/2 x)))
Compiler

Compiled 1903 to 1421 computations (25.3% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (fma.f64 x 2 (/.f64 -1/2 x)))

series4.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

4.0ms
(log.f64 (fma.f64 x 2 (/.f64 -1/2 x)))

rewrite1.0ms (0%)

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

1 calls:

1.0ms
(log.f64 (fma.f64 x 2 (/.f64 -1/2 x)))

simplify93.0ms (3.2%)

Algorithm
egg-herbie
Rules
732×fma-def_binary64
535×times-frac_binary64
409×cancel-sign-sub-inv_binary64
345×sub-neg_binary64
309×fma-neg_binary64
Counts
26 → 38
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
079493
1184449
2525449
31696449
44117449
54962449
64996449
74927449

prune21.0ms (0.7%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New38038
Fresh011
Picked011
Done000
Total38240
Error
0b
Counts
40 → 2
Alt Table
StatusErrorProgram
33.8b
(log.f64 (+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))))
0.4b
(log.f64 (fma.f64 x 2 (/.f64 -1/2 x)))
Compiler

Compiled 615 to 472 computations (23.3% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))))
0.0b
(+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1)))))
5.9b
(expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))
31.4b
(sqrt.f64 (fma.f64 x x -1))

series14.0ms (0.5%)

Counts
3 → 36
Calls

3 calls:

7.0ms
(log.f64 (+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))))
4.0ms
(expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))
3.0ms
(+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1)))))

rewrite6.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-log-exp_binary64
log-prod_binary64
Counts
3 → 46
Calls

3 calls:

2.0ms
(+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1)))))
2.0ms
(log.f64 (+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))))
0.0ms
(expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))

simplify77.0ms (2.6%)

Algorithm
egg-herbie
Rules
580×fma-neg_binary64
333×sub-neg_binary64
297×fma-def_binary64
254×distribute-neg-frac_binary64
206×associate-+l+_binary64
Counts
82 → 136
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01571433
13981295
210331291
334071245
447541245
549001245

prune87.0ms (3%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1740174
Fresh000
Picked011
Done011
Total1742176
Error
0b
Counts
176 → 2
Alt Table
StatusErrorProgram
33.8b
(log.f64 (+.f64 x (expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x x -1))))))
0.4b
(log.f64 (fma.f64 x 2 (/.f64 -1/2 x)))
Compiler

Compiled 2902 to 2206 computations (24% saved)

regimes42.0ms (1.4%)

Accuracy

Total 0.2b remaining (84.4%)

Threshold costs 0.2b (84.4%)

Counts
16 → 1
Compiler

Compiled 423 to 307 computations (27.4% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
1710

end40.0ms (1.4%)

Compiler

Compiled 35 to 26 computations (25.7% saved)

Profiling

Loading profile data...