Details

Time bar (total: 11.1s)

analyze1.2s (11.1%)

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
0%99.9%0.1%4
0%99.9%0.1%5
12.5%87.4%0.1%6
12.5%85.9%1.7%7
21.9%76.5%1.7%8
23.4%74.1%2.4%9
28.9%68.7%2.4%10
30%67.1%2.8%11
33%64.2%2.8%12
33.7%63.3%3%13
33.7%63.3%3%14
Compiler

Compiled 12 to 9 computations (25% saved)

sample7.1s (63.8%)

Results
5.4s3276×body8192exit
1.2s7607×body128valid
175.0ms255×body1024valid
113.0ms250×body512valid
41.0ms144×body256valid
5.0ms29×body128invalid
Compiler

Compiled 23 to 17 computations (26.1% saved)

simplify100.0ms (0.9%)

Algorithm
egg-herbie
Rules
837×fma-def_binary64
741×fabs-mul_binary64
531×fabs-div_binary64
469×swap-sqr_binary64
420×fma-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0911
11911
22811
34511
45911
58911
612011
714811
818811
920111
1023111
1125711
1233611
1354411
1496711
15293011
16346311
17360011
18389611
19482011
20496911

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.8b
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
Compiler

Compiled 36 to 22 computations (38.9% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
0.7b
(log1p.f64 (exp.f64 x))

series300.0ms (2.7%)

Counts
2 → 36
Calls

2 calls:

208.0ms
(log1p.f64 (exp.f64 x))
92.0ms
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))

rewrite6.0ms (0%)

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

2 calls:

3.0ms
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
0.0ms
(log1p.f64 (exp.f64 x))

simplify80.0ms (0.7%)

Algorithm
egg-herbie
Rules
620×cancel-sign-sub-inv_binary64
339×unswap-sqr_binary64
285×*-commutative_binary64
285×unsub-neg_binary64
252×distribute-rgt-in_binary64
Counts
68 → 56
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
073789
1167742
2426710
31507707
43171707
54588701
64872701

prune39.0ms (0.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New54256
Fresh000
Picked011
Done000
Total54357
Error
0.4b
Counts
57 → 3
Alt Table
StatusErrorProgram
0.8b
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
0.8b
(-.f64 (cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3)) (*.f64 x y))
11.8b
(fma.f64 x (-.f64 1/2 y) (log.f64 2))
Compiler

Compiled 797 to 296 computations (62.9% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3)) (*.f64 x y))
0.7b
(log1p.f64 (exp.f64 x))
0.7b
(pow.f64 (log1p.f64 (exp.f64 x)) 3)
0.7b
(cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3))

series513.0ms (4.6%)

Counts
3 → 48
Calls

3 calls:

211.0ms
(pow.f64 (log1p.f64 (exp.f64 x)) 3)
207.0ms
(cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3))
95.0ms
(-.f64 (cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3)) (*.f64 x y))

rewrite16.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
36×cbrt-prod_binary64
17×*-un-lft-identity_binary64
17×add-sqr-sqrt_binary64
17×add-cube-cbrt_binary64
15×fma-neg_binary64
Counts
3 → 92
Calls

3 calls:

7.0ms
(-.f64 (cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3)) (*.f64 x y))
2.0ms
(cbrt.f64 (pow.f64 (log1p.f64 (exp.f64 x)) 3))
2.0ms
(pow.f64 (log1p.f64 (exp.f64 x)) 3)

simplify100.0ms (0.9%)

Algorithm
egg-herbie
Rules
612×associate-*l*_binary64
532×fma-def_binary64
437×fma-neg_binary64
300×log-prod_binary64
245×cancel-sign-sub-inv_binary64
Counts
140 → 127
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01401758
13101614
29421481
330731474
446051474
548871474

prune141.0ms (1.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1461147
Fresh011
Picked101
Done011
Total1473150
Error
0.4b
Counts
150 → 3
Alt Table
StatusErrorProgram
0.8b
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
11.8b
(fma.f64 x (-.f64 1/2 y) (log.f64 2))
14.0b
(-.f64 (cbrt.f64 (+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8))))) (*.f64 x y))
Compiler

Compiled 2623 to 1274 computations (51.4% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

series11.0ms (0.1%)

Counts
1 → 24
Calls

1 calls:

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

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 x (-.f64 1/2 y) (log.f64 2))

simplify64.0ms (0.6%)

Algorithm
egg-herbie
Rules
855×fma-neg_binary64
478×neg-sub0_binary64
433×neg-mul-1_binary64
375×*-commutative_binary64
362×distribute-rgt-in_binary64
Counts
34 → 22
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
028459
152346
2104346
3328346
41670346
52981346
64467346
74969346

prune21.0ms (0.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New22022
Fresh011
Picked011
Done011
Total22325
Error
0.4b
Counts
25 → 3
Alt Table
StatusErrorProgram
0.8b
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
11.8b
(fma.f64 x (-.f64 1/2 y) (log.f64 2))
14.0b
(-.f64 (cbrt.f64 (+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8))))) (*.f64 x y))
Compiler

Compiled 310 to 241 computations (22.3% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (log.f64 2) (*.f64 x x))
1.0b
(pow.f64 (log.f64 2) 2)
7.8b
(+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8))))
10.2b
(cbrt.f64 (+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8)))))

series107.0ms (1%)

Counts
4 → 36
Calls

4 calls:

73.0ms
(cbrt.f64 (+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8)))))
21.0ms
(*.f64 (log.f64 2) (*.f64 x x))
12.0ms
(+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8))))
0.0ms
(pow.f64 (log.f64 2) 2)

rewrite44.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
56×associate-*r/_binary64
40×frac-add_binary64
34×flip-+_binary64
34×flip3-+_binary64
14×cbrt-div_binary64
Counts
4 → 102
Calls

4 calls:

11.0ms
(+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8))))
11.0ms
(cbrt.f64 (+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8)))))
4.0ms
(*.f64 (log.f64 2) (*.f64 x x))
2.0ms
(pow.f64 (log.f64 2) 2)

simplify165.0ms (1.5%)

Algorithm
egg-herbie
Rules
462×fma-def_binary64
362×distribute-rgt-in_binary64
352×distribute-lft-in_binary64
247×times-frac_binary64
211×associate-/r*_binary64
Counts
138 → 193
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
043611195
1149110172
2502910172

prune464.0ms (4.2%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1912193
Fresh000
Picked101
Done022
Total1924196
Error
0.4b
Counts
196 → 4
Alt Table
StatusErrorProgram
0.8b
(-.f64 (log1p.f64 (exp.f64 x)) (*.f64 x y))
15.7b
(-.f64 (expm1.f64 (log1p.f64 (cbrt.f64 (+.f64 (+.f64 (*.f64 (pow.f64 (log.f64 2) 2) (+.f64 (log.f64 2) (*.f64 x 3/2))) (*.f64 (*.f64 (log.f64 2) (*.f64 x x)) (+.f64 (*.f64 (log.f64 2) 3/8) 3/4))) (*.f64 (pow.f64 x 3) (+.f64 1/8 (*.f64 (log.f64 2) 3/8))))))) (*.f64 x y))
59.5b
(-.f64 (-.f64 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (log.f64 2) 2) (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x))))))) (*.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2))) x))) (+.f64 (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x)))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (log.f64 2) (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x))))))) (*.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2))) x))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (log.f64 2) 2) (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x))))))) (*.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2))) (pow.f64 x 2))))))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 (log.f64 2) 3) (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x))))))) (*.f64 (pow.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2))) 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/64 (/.f64 (*.f64 (pow.f64 (log.f64 2) 4) (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x))))))) (*.f64 (pow.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2))) 2) (pow.f64 x 2)))) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 (log.f64 2) 2) (exp.f64 (*.f64 1/3 (-.f64 (log.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2)))) (*.f64 3 (log.f64 (/.f64 1 x))))))) (*.f64 (pow.f64 (+.f64 1/8 (*.f64 3/8 (log.f64 2))) 2) (pow.f64 x 2))))))) (*.f64 x y))
11.8b
(fma.f64 x (-.f64 1/2 y) (log.f64 2))
Compiler

Compiled 17785 to 15410 computations (13.4% saved)

regimes374.0ms (3.4%)

Accuracy

Total 0.3b remaining (62.8%)

Threshold costs 0.3b (62.8%)

Counts
103 → 1
Compiler

Compiled 7670 to 6049 computations (21.1% saved)

simplify3.0ms (0%)

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
0711
11311
22311
32911
43311
53411
63411

end197.0ms (1.8%)

Compiler

Compiled 320 to 288 computations (10% saved)

Profiling

Loading profile data...