Details

Time bar (total: 16.2s)

analyze808.0ms (5%)

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
50%50%0.1%5
50%50%0.1%6
50%50%0.1%7
50%50%0.1%8
50%50%0.1%9
50%50%0.1%10
50%50%0.1%11
50%50%0.1%12
50%50%0.1%13
50%50%0.1%14
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample13.5s (83.1%)

Symmetry

(sort a b)

Results
10.5s7977×body8192exit
1.5s1954×body1024valid
624.0ms4584×body128valid
441.0ms996×body512valid
177.0ms193×body2048valid
144.0ms529×body256valid
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify6.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
1810
2810

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
29.3b
Counts
2 → 1
Alt Table
StatusErrorProgram
29.3b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 24 to 18 computations (25% saved)

localize5.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 a) (exp.f64 b))
6.1b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))

series320.0ms (2%)

Counts
2 → 48
Calls

2 calls:

316.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
4.0ms
(+.f64 (exp.f64 a) (exp.f64 b))

rewrite47.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
666×log1p-expm1-u_binary64
666×expm1-log1p-u_binary64
455×prod-diff_binary64
71×add-sqr-sqrt_binary64
68×add-log-exp_binary64
Counts
2 → 60
Calls

2 calls:

46.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
46.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0718
113718
2170118
3495218
000
100

simplify67.0ms (0.4%)

Algorithm
egg-herbie
Rules
630×fma-neg_binary64
407×associate-+l+_binary64
328×fma-def_binary64
238×times-frac_binary64
222×associate-+r+_binary64
Counts
108 → 91
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082746
1244742
2857714
33662710
44952710
54990710

prune51.0ms (0.3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New90191
Fresh000
Picked011
Done000
Total90292
Error
0.0b
Counts
92 → 2
Alt Table
StatusErrorProgram
0.7b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
29.3b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 1415 to 693 computations (51% saved)

localize6.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 (exp.f64 a))
0.0b
(/.f64 b (+.f64 1 (exp.f64 a)))
0.0b
(+.f64 1 (exp.f64 a))

series161.0ms (1%)

Counts
3 → 20
Calls

3 calls:

142.0ms
(log1p.f64 (exp.f64 a))
17.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
1.0ms
(+.f64 1 (exp.f64 a))

rewrite49.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
761×expm1-log1p-u_binary64
760×log1p-expm1-u_binary64
140×log1p-udef_binary64
108×prod-diff_binary64
93×egg-rr
Counts
3 → 93
Calls

3 calls:

47.0ms
(log1p.f64 (exp.f64 a))
47.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
47.0ms
(+.f64 1 (exp.f64 a))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0820
115720
2195120
3514020
000
100

simplify59.0ms (0.4%)

Algorithm
egg-herbie
Rules
828×fma-def_binary64
574×distribute-rgt-neg-in_binary64
513×distribute-lft-neg-in_binary64
477×associate-*l*_binary64
384×associate-*r*_binary64
Counts
113 → 113
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047194
1131186
2353174
3984159
43103159
54619159
65026159

prune61.0ms (0.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1121113
Fresh000
Picked011
Done011
Total1123115
Error
0b
Counts
115 → 3
Alt Table
StatusErrorProgram
0.7b
(+.f64 (expm1.f64 (log1p.f64 (log1p.f64 (exp.f64 a)))) (/.f64 b (+.f64 1 (exp.f64 a))))
29.3b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
0.7b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
Compiler

Compiled 1781 to 955 computations (46.4% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 (exp.f64 a))
0.0b
(expm1.f64 (log1p.f64 (log1p.f64 (exp.f64 a))))
0.0b
(log1p.f64 (log1p.f64 (exp.f64 a)))
0.0b
(+.f64 1 (exp.f64 a))

series527.0ms (3.2%)

Counts
2 → 24
Calls

2 calls:

385.0ms
(log1p.f64 (log1p.f64 (exp.f64 a)))
141.0ms
(expm1.f64 (log1p.f64 (log1p.f64 (exp.f64 a))))

rewrite76.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
366×expm1-log1p-u_binary64
364×log1p-expm1-u_binary64
328×add-log-exp_binary64
319×pow1_binary64
221×unpow-prod-down_binary64
Counts
2 → 73
Calls

2 calls:

75.0ms
(expm1.f64 (log1p.f64 (log1p.f64 (exp.f64 a))))
75.0ms
(log1p.f64 (log1p.f64 (exp.f64 a)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0612
19212
297812
3486312
4500012
000
100

simplify59.0ms (0.4%)

Algorithm
egg-herbie
Rules
718×associate-/l*_binary64
599×fma-neg_binary64
515×cancel-sign-sub-inv_binary64
485×associate-/r*_binary64
200×associate-/r/_binary64
Counts
97 → 90
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
049305
1138305
2399288
31549282
44610282
54973282
64969282

prune101.0ms (0.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1600160
Fresh000
Picked011
Done022
Total1603163
Error
0b
Counts
163 → 3
Alt Table
StatusErrorProgram
0.7b
(+.f64 (expm1.f64 (log1p.f64 (log1p.f64 (exp.f64 a)))) (/.f64 b (+.f64 1 (exp.f64 a))))
29.3b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
0.7b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
Compiler

Compiled 2962 to 1649 computations (44.3% saved)

regimes121.0ms (0.7%)

Accuracy

Total 0.5b remaining (51.7%)

Threshold costs 0.5b (51.7%)

Counts
23 → 1
Compiler

Compiled 1865 to 1418 computations (24% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
11316
21216

end197.0ms (1.2%)

Compiler

Compiled 82 to 56 computations (31.7% saved)

Profiling

Loading profile data...