Details

Time bar (total: 18.3s)

analyze788.0ms (4.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
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.1s (71.6%)

Symmetry

(sort a b)

Results
10.2s7961×body8192exit
1.5s2060×body1024valid
601.0ms4499×body128valid
428.0ms984×body512valid
176.0ms193×body2048valid
138.0ms520×body256valid
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify5.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
30.3b
Counts
2 → 1
Alt Table
StatusErrorProgram
30.3b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 24 to 18 computations (25% saved)

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

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

series320.0ms (1.8%)

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))

rewrite7.0ms (0%)

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:

3.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
3.0ms
(+.f64 (exp.f64 a) (exp.f64 b))

simplify89.0ms (0.5%)

Algorithm
egg-herbie
Rules
618×fma-neg_binary64
418×associate-+l+_binary64
392×fma-def_binary64
238×times-frac_binary64
229×associate-+r+_binary64
Counts
82 → 83
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231238
13341183
210341155
340621151
448281151
549731151

prune61.0ms (0.3%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New79483
Fresh000
Picked101
Done000
Total80484
Error
0.2b
Counts
84 → 4
Alt Table
StatusErrorProgram
31.2b
(*.f64 (*.f64 (cbrt.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b))))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))))
0.4b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
32.9b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
30.8b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))))
Compiler

Compiled 1429 to 642 computations (55.1% saved)

localize6.0ms (0%)

Local error

Found 3 expressions with local error:

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

series211.0ms (1.2%)

Counts
3 → 32
Calls

3 calls:

190.0ms
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
18.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
2.0ms
(+.f64 1 (exp.f64 a))

rewrite18.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
26×*-un-lft-identity_binary64
14×add-sqr-sqrt_binary64
14×add-cube-cbrt_binary64
12×times-frac_binary64
add-log-exp_binary64
Counts
3 → 70
Calls

3 calls:

7.0ms
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
4.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
3.0ms
(+.f64 1 (exp.f64 a))

simplify85.0ms (0.5%)

Algorithm
egg-herbie
Rules
534×fma-neg_binary64
435×associate-/l*_binary64
384×fma-def_binary64
381×cancel-sign-sub-inv_binary64
224×distribute-rgt-in_binary64
Counts
102 → 103
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01381554
13541479
28671463
323901452
449391451
550661451

prune74.0ms (0.4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1021103
Fresh033
Picked011
Done000
Total1025107
Error
0.2b
Counts
107 → 5
Alt Table
StatusErrorProgram
31.2b
(*.f64 (*.f64 (cbrt.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b))))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))))
0.4b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
32.9b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
30.8b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))))
0.7b
(expm1.f64 (log1p.f64 (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
Compiler

Compiled 1877 to 968 computations (48.4% saved)

localize9.0ms (0%)

Local error

Found 4 expressions with local error:

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

series712.0ms (3.9%)

Counts
2 → 48
Calls

2 calls:

452.0ms
(log1p.f64 (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a)))))
259.0ms
(expm1.f64 (log1p.f64 (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
expm1-log1p-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
(log1p.f64 (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a)))))
0.0ms
(expm1.f64 (log1p.f64 (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))

simplify103.0ms (0.6%)

Algorithm
egg-herbie
Rules
427×associate-+r+_binary64
269×associate-+l+_binary64
268×+-commutative_binary64
226×cancel-sign-sub-inv_binary64
216×times-frac_binary64
Counts
70 → 76
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02813342
18793194
237483133
349633133
449763133

prune197.0ms (1.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1512153
Fresh123
Picked101
Done011
Total1535158
Error
0.2b
Counts
158 → 5
Alt Table
StatusErrorProgram
30.8b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))))
63.7b
(expm1.f64 (-.f64 (+.f64 (/.f64 (exp.f64 a) b) (+.f64 (log.f64 (/.f64 1 (+.f64 1 (exp.f64 a)))) (+.f64 (/.f64 1 b) (+.f64 (/.f64 (log.f64 (+.f64 1 (exp.f64 a))) b) (/.f64 (*.f64 (log.f64 (+.f64 1 (exp.f64 a))) (exp.f64 a)) b))))) (log.f64 (/.f64 1 b))))
1.9b
(expm1.f64 (+.f64 (log1p.f64 (log1p.f64 (exp.f64 a))) (/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a)))))))
0.4b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
32.9b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
Compiler

Compiled 5584 to 3385 computations (39.4% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series1.6s (8.7%)

Counts
3 → 72
Calls

3 calls:

629.0ms
(+.f64 (log1p.f64 (log1p.f64 (exp.f64 a))) (/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a))))))
532.0ms
(expm1.f64 (+.f64 (log1p.f64 (log1p.f64 (exp.f64 a))) (/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a)))))))
438.0ms
(/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a)))))

rewrite19.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
associate-/r/_binary64
*-un-lft-identity_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
flip-+_binary64
Counts
3 → 60
Calls

3 calls:

8.0ms
(/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a)))))
6.0ms
(+.f64 (log1p.f64 (log1p.f64 (exp.f64 a))) (/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a))))))
0.0ms
(expm1.f64 (+.f64 (log1p.f64 (log1p.f64 (exp.f64 a))) (/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a)))))))

simplify113.0ms (0.6%)

Algorithm
egg-herbie
Rules
492×times-frac_binary64
425×fma-def_binary64
414×associate-*r*_binary64
361×associate-/l*_binary64
311×associate-/r*_binary64
Counts
132 → 129
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
04556958
114836821
253856821

prune208.0ms (1.1%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1550155
Fresh033
Picked011
Done011
Total1555160
Error
0.2b
Counts
160 → 5
Alt Table
StatusErrorProgram
30.8b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b)))))
63.7b
(expm1.f64 (-.f64 (+.f64 (/.f64 (exp.f64 a) b) (+.f64 (log.f64 (/.f64 1 (+.f64 1 (exp.f64 a)))) (+.f64 (/.f64 1 b) (+.f64 (/.f64 (log.f64 (+.f64 1 (exp.f64 a))) b) (/.f64 (*.f64 (log.f64 (+.f64 1 (exp.f64 a))) (exp.f64 a)) b))))) (log.f64 (/.f64 1 b))))
1.9b
(expm1.f64 (+.f64 (log1p.f64 (log1p.f64 (exp.f64 a))) (/.f64 b (*.f64 (+.f64 1 (exp.f64 a)) (+.f64 1 (log1p.f64 (exp.f64 a)))))))
0.4b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
32.9b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
Compiler

Compiled 8859 to 6337 computations (28.5% saved)

regimes319.0ms (1.7%)

Accuracy

Total 0.5b remaining (51.9%)

Threshold costs 0.5b (51.9%)

Counts
65 → 1
Compiler

Compiled 5231 to 3949 computations (24.5% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
11316
21216

end225.0ms (1.2%)

Compiler

Compiled 152 to 98 computations (35.5% saved)

Profiling

Loading profile data...