Details

Time bar (total: 4.7s)

analyze402.0ms (8.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%50%0%2
50%50%0%3
62.5%37.5%0%4
68.7%31.2%0%5
71.8%28.1%0%6
73.4%26.5%0%7
74.2%25.8%0%8
74.6%25.4%0%9
74.8%25.2%0%10
74.9%25.1%0%11
74.9%25%0%12
74.9%25%0%13
75%25%0%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample3.4s (72.3%)

Results
1.6s2616×body1024valid
755.0ms1210×body2048valid
555.0ms1271×body512valid
342.0ms2447×body128valid
151.0ms674×body256valid
31.0ms38×body4096valid
Compiler

Compiled 32 to 23 computations (28.1% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
1-exp_binary64
hypot-1-def_binary64
fma-def_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0812
1139
2149
3139

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
44.5b
Counts
3 → 1
Alt Table
StatusErrorProgram
44.5b
(log.f64 (+.f64 x (hypot.f64 1 x)))
Compiler

Compiled 30 to 21 computations (30% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.6b
(+.f64 x (hypot.f64 1 x))
3.0b
(log.f64 (+.f64 x (hypot.f64 1 x)))

series6.0ms (0.1%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(log.f64 (+.f64 x (hypot.f64 1 x)))
2.0ms
(+.f64 x (hypot.f64 1 x))

rewrite7.0ms (0.1%)

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

2 calls:

4.0ms
(+.f64 x (hypot.f64 1 x))
2.0ms
(log.f64 (+.f64 x (hypot.f64 1 x)))

simplify75.0ms (1.6%)

Algorithm
egg-herbie
Rules
665×fma-neg_binary64
426×associate-/r*_binary64
386×cancel-sign-sub-inv_binary64
299×sub-neg_binary64
286×fma-def_binary64
Counts
58 → 81
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0125861
1334805
2827799
32288799
44460799
54998799
64887799

prune44.0ms (0.9%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New76581
Fresh000
Picked011
Done000
Total76682
Error
0.0b
Counts
82 → 6
Alt Table
StatusErrorProgram
48.7b
(+.f64 (/.f64 3/32 (pow.f64 x 4)) (-.f64 (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2)) (/.f64 1/4 (*.f64 x x))))
44.5b
(log.f64 (+.f64 x (hypot.f64 1 x)))
47.2b
(+.f64 (log.f64 2) (log.f64 x))
32.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
44.5b
(+.f64 (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))) (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))))
48.7b
(log.f64 (/.f64 -1/2 x))
Compiler

Compiled 1221 to 926 computations (24.2% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (pow.f64 x 3) -1/6 x)

series4.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

4.0ms
(fma.f64 (pow.f64 x 3) -1/6 x)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 (pow.f64 x 3) -1/6 x)

simplify58.0ms (1.2%)

Algorithm
egg-herbie
Rules
435×neg-mul-1_binary64
394×associate-*l*_binary64
372×associate-*r*_binary64
317×distribute-rgt-out_binary64
261×exp-prod_binary64
Counts
22 → 16
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
020232
135197
287197
3323197
41659197
54536197
65201197

prune10.0ms (0.2%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New16016
Fresh044
Picked011
Done011
Total16622
Error
0.0b
Counts
22 → 6
Alt Table
StatusErrorProgram
48.7b
(+.f64 (/.f64 3/32 (pow.f64 x 4)) (-.f64 (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2)) (/.f64 1/4 (*.f64 x x))))
44.5b
(log.f64 (+.f64 x (hypot.f64 1 x)))
47.2b
(+.f64 (log.f64 2) (log.f64 x))
32.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
44.5b
(+.f64 (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))) (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))))
48.7b
(log.f64 (/.f64 -1/2 x))
Compiler

Compiled 256 to 193 computations (24.6% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(sqrt.f64 (+.f64 x (hypot.f64 1 x)))
0.6b
(+.f64 x (hypot.f64 1 x))
2.8b
(log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x))))

series11.0ms (0.2%)

Counts
2 → 8
Calls

2 calls:

7.0ms
(log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x))))
4.0ms
(sqrt.f64 (+.f64 x (hypot.f64 1 x)))

rewrite7.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
sqrt-prod_binary64
add-sqr-sqrt_binary64
log-prod_binary64
add-cube-cbrt_binary64
Counts
2 → 41
Calls

2 calls:

3.0ms
(log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x))))
3.0ms
(sqrt.f64 (+.f64 x (hypot.f64 1 x)))

simplify105.0ms (2.2%)

Algorithm
egg-herbie
Rules
782×fma-def_binary64
491×sub-neg_binary64
390×distribute-rgt-neg-in_binary64
314×distribute-lft-neg-in_binary64
304×associate-*l*_binary64
Counts
49 → 58
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
084757
1173708
2375700
3935694
42658694
54292694
64822694
74935694

prune120.0ms (2.5%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1951196
Fresh033
Picked011
Done112
Total1966202
Error
0.0b
Counts
202 → 6
Alt Table
StatusErrorProgram
48.7b
(+.f64 (/.f64 3/32 (pow.f64 x 4)) (-.f64 (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2)) (/.f64 1/4 (*.f64 x x))))
47.2b
(+.f64 (log.f64 2) (log.f64 x))
32.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
53.9b
(+.f64 (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))) (-.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 (hypot.f64 1 x) 3)))) (log.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)) (*.f64 x (hypot.f64 1 x))))))))
44.5b
(+.f64 (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))) (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))))
48.7b
(log.f64 (/.f64 -1/2 x))
Compiler

Compiled 4414 to 3341 computations (24.3% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(+.f64 (log.f64 2) (log.f64 x))

series41.0ms (0.9%)

Counts
1 → 12
Calls

1 calls:

41.0ms
(+.f64 (log.f64 2) (log.f64 x))

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
log-prod_binary64
pow1_binary64
log-pow_binary64
distribute-lft-out_binary64
Counts
1 → 27
Calls

1 calls:

4.0ms
(+.f64 (log.f64 2) (log.f64 x))

simplify81.0ms (1.7%)

Algorithm
egg-herbie
Rules
539×sub-neg_binary64
476×fma-def_binary64
458×distribute-neg-in_binary64
398×fma-neg_binary64
397×unsub-neg_binary64
Counts
39 → 38
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
054363
1120344
2274342
3660342
42248342
53872342
64273342
74971342

prune20.0ms (0.4%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New38038
Fresh033
Picked011
Done022
Total38644
Error
0.0b
Counts
44 → 6
Alt Table
StatusErrorProgram
48.7b
(+.f64 (/.f64 3/32 (pow.f64 x 4)) (-.f64 (+.f64 (log.f64 (/.f64 -1 x)) (log.f64 1/2)) (/.f64 1/4 (*.f64 x x))))
47.2b
(+.f64 (log.f64 2) (log.f64 x))
32.1b
(fma.f64 (pow.f64 x 3) -1/6 x)
53.9b
(+.f64 (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))) (-.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 (hypot.f64 1 x) 3)))) (log.f64 (sqrt.f64 (+.f64 (*.f64 x x) (-.f64 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)) (*.f64 x (hypot.f64 1 x))))))))
44.5b
(+.f64 (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))) (log.f64 (sqrt.f64 (+.f64 x (hypot.f64 1 x)))))
48.7b
(log.f64 (/.f64 -1/2 x))
Compiler

Compiled 491 to 356 computations (27.5% saved)

regimes131.0ms (2.8%)

Accuracy

Total 0.2b remaining (88.3%)

Threshold costs 0.2b (88.3%)

Counts
34 → 3
Compiler

Compiled 1332 to 1039 computations (22% saved)

bsearch36.0ms (0.8%)

Steps
ItersRangePoint
9
1.9940700643074258e-9
0.8958851127807921
0.0009794900121172633
8
-239.09968009848868
-0.3289946045222207
-0.9508788240618709
Compiler

Compiled 2 to 1 computations (50% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
distribute-neg-frac_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03258
13958
24558
34758
44858
54658

end121.0ms (2.5%)

Compiler

Compiled 174 to 132 computations (24.1% saved)

Profiling

Loading profile data...