Details

Time bar (total: 6.5s)

analyze80.0ms (1.2%)

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%37.5%12.6%6
50%25%25.1%7
50%18.7%31.3%8
50%12.5%37.6%9
50%9.4%40.7%10
50%6.2%43.8%11
50%4.7%45.4%12
50%3.1%46.9%13
50%2.3%47.7%14
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample116.0ms (1.8%)

Algorithm
intervals
Symmetry

(sort a b)

Results
37.0ms67×body1024valid
7.0ms29×body512valid
7.0ms144×body128valid
3.0msbody2048valid
2.0ms12×body256valid
0.0msbody128overflowed
Compiler

Compiled 19 to 15 computations (21.1% saved)

simplify6.0ms (0.1%)

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

Compiled 24 to 18 computations (25% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series585.0ms (9%)

Counts
2 → 48
Calls

2 calls:

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

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:

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

simplify82.0ms (1.3%)

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

prune89.0ms (1.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New80383
Fresh000
Picked101
Done000
Total81384
Error
0.6b
Counts
84 → 3
Alt Table
StatusErrorProgram
1.1b
(+.f64 (log1p.f64 (exp.f64 a)) (+.f64 (/.f64 b (+.f64 1 (exp.f64 a))) (*.f64 (*.f64 (/.f64 b (+.f64 1 (exp.f64 a))) b) (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))))))
1.2b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
32.8b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
Compiler

Compiled 1405 to 648 computations (53.9% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series381.0ms (5.9%)

Counts
4 → 64
Calls

4 calls:

309.0ms
(+.f64 (log1p.f64 (exp.f64 a)) (+.f64 (/.f64 b (+.f64 1 (exp.f64 a))) (*.f64 (*.f64 (/.f64 b (+.f64 1 (exp.f64 a))) b) (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))))))
52.0ms
(*.f64 (*.f64 (/.f64 b (+.f64 1 (exp.f64 a))) b) (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))))
10.0ms
(/.f64 1/2 (+.f64 1 (exp.f64 a)))
9.0ms
(-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a))))

rewrite96.0ms (1.5%)

Algorithm
rewrite-expression-head
Rules
252×*-un-lft-identity_binary64
176×add-sqr-sqrt_binary64
166×add-cube-cbrt_binary64
162×prod-diff_binary64
158×times-frac_binary64
Counts
4 → 323
Calls

4 calls:

22.0ms
(*.f64 (*.f64 (/.f64 b (+.f64 1 (exp.f64 a))) b) (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))))
12.0ms
(-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a))))
10.0ms
(+.f64 (log1p.f64 (exp.f64 a)) (+.f64 (/.f64 b (+.f64 1 (exp.f64 a))) (*.f64 (*.f64 (/.f64 b (+.f64 1 (exp.f64 a))) b) (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))))))
4.0ms
(/.f64 1/2 (+.f64 1 (exp.f64 a)))

simplify476.0ms (7.3%)

Algorithm
egg-herbie
Rules
569×associate-*l*_binary64
535×associate-*r*_binary64
250×associate-*r/_binary64
227×associate-*l/_binary64
216×*-commutative_binary64
Counts
387 → 386
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
052218026
1143913892
2411911991
3465011991
4487311991

prune545.0ms (8.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New3851386
Fresh022
Picked101
Done000
Total3863389
Error
0.6b
Counts
389 → 3
Alt Table
StatusErrorProgram
1.2b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
21.6b
(/.f64 (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) 3) (pow.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) 3)) (fma.f64 (log1p.f64 (exp.f64 a)) (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) (-.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) (log1p.f64 (exp.f64 a))))))
32.8b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
Compiler

Compiled 21436 to 14091 computations (34.3% saved)

localize6.0ms (0.1%)

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

series285.0ms (4.4%)

Counts
3 → 32
Calls

3 calls:

263.0ms
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
20.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
2.0ms
(+.f64 1 (exp.f64 a))

rewrite16.0ms (0.2%)

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)))
2.0ms
(+.f64 1 (exp.f64 a))

simplify83.0ms (1.3%)

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

prune123.0ms (1.9%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1003103
Fresh022
Picked101
Done000
Total1015106
Error
0.6b
Counts
106 → 5
Alt Table
StatusErrorProgram
18.5b
(exp.f64 (log.f64 (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
21.6b
(/.f64 (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) 3) (pow.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) 3)) (fma.f64 (log1p.f64 (exp.f64 a)) (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) (-.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) (log1p.f64 (exp.f64 a))))))
1.8b
(+.f64 (log1p.f64 (exp.f64 a)) (expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a))))))
27.8b
(+.f64 (log1p.f64 (exp.f64 a)) (*.f64 1/2 b))
32.8b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
Compiler

Compiled 2011 to 1066 computations (47% saved)

localize8.0ms (0.1%)

Local error

Found 4 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)) (expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a))))))
0.0b
(expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a)))))

series280.0ms (4.3%)

Counts
2 → 48
Calls

2 calls:

260.0ms
(+.f64 (log1p.f64 (exp.f64 a)) (expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a))))))
20.0ms
(expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a)))))

rewrite4.0ms (0.1%)

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

2 calls:

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

simplify89.0ms (1.4%)

Algorithm
egg-herbie
Rules
486×distribute-rgt-neg-in_binary64
438×associate-+r+_binary64
366×cancel-sign-sub-inv_binary64
347×associate-*l*_binary64
332×sub-neg_binary64
Counts
78 → 66
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0801175
12041119
25321103
315441099
436751099
547271099
650331099

prune149.0ms (2.3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1342136
Fresh134
Picked101
Done000
Total1365141
Error
0.6b
Counts
141 → 5
Alt Table
StatusErrorProgram
1.8b
(expm1.f64 (log1p.f64 (+.f64 (log1p.f64 (exp.f64 a)) (expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a))))))))
25.6b
(+.f64 (log1p.f64 (exp.f64 a)) (exp.f64 (log.f64 (expm1.f64 (log1p.f64 (/.f64 b (+.f64 1 (exp.f64 a))))))))
21.6b
(/.f64 (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) 3) (pow.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) 3)) (fma.f64 (log1p.f64 (exp.f64 a)) (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) (-.f64 (fma.f64 (-.f64 1/2 (/.f64 1/2 (+.f64 1 (exp.f64 a)))) (/.f64 (*.f64 b b) (+.f64 1 (exp.f64 a))) (/.f64 b (+.f64 1 (exp.f64 a)))) (log1p.f64 (exp.f64 a))))))
27.8b
(+.f64 (log1p.f64 (exp.f64 a)) (*.f64 1/2 b))
32.8b
(+.f64 (log1p.f64 (exp.f64 b)) (/.f64 a (+.f64 1 (exp.f64 b))))
Compiler

Compiled 2624 to 1477 computations (43.7% saved)

regimes795.0ms (12.3%)

Accuracy

Total 0.4b remaining (42.5%)

Threshold costs 0.4b (42.5%)

Counts
154 → 1
Compiler

Compiled 18897 to 12689 computations (32.9% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01544
12444
23144
33344
43444
53244

end8.0ms (0.1%)

Compiler

Compiled 90 to 60 computations (33.3% saved)

sample2.1s (33.1%)

Algorithm
intervals
Results
963.0ms1934×body1024valid
243.0ms939×body512valid
223.0ms4432×body128valid
139.0ms211×body2048valid
65.0ms484×body256valid
6.0ms133×body128overflowed
Compiler

Compiled 186 to 121 computations (34.9% saved)

Profiling

Loading profile data...