Details

Time bar (total: 6.2s)

analyze212.0ms (3.4%)

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)

sample202.0ms (3.2%)

Algorithm
intervals
Results
149.0ms65×body1024valid
15.0ms17×body256valid
9.0ms31×body512valid
8.0ms139×body128valid
3.0msbody2048valid
0.0msbody128overflowed
Compiler

Compiled 19 to 15 computations (21.1% saved)

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

Compiled 24 to 18 computations (25% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite12.0ms (0.2%)

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:

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

series795.0ms (12.8%)

Counts
2 → 48
Calls

2 calls:

775.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
20.0ms
(+.f64 (exp.f64 a) (exp.f64 b))

simplify95.0ms (1.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 → 120
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231238
13341183
210341155
340621151
448281151
549731151

prune44.0ms (0.7%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1191120
Fresh000
Picked011
Done000
Total1192121
Error
0.6b
Counts
121 → 2
Alt Table
StatusErrorProgram
1.2b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))
30.5b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 1305 to 592 computations (54.6% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite9.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
22×*-un-lft-identity_binary64
12×times-frac_binary64
12×add-sqr-sqrt_binary64
12×add-cube-cbrt_binary64
distribute-lft-out_binary64
Counts
2 → 52
Calls

2 calls:

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

series38.0ms (0.6%)

Counts
2 → 8
Calls

2 calls:

37.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
1.0ms
(+.f64 1 (exp.f64 a))

simplify68.0ms (1.1%)

Algorithm
egg-herbie
Rules
795×fma-def_binary64
766×times-frac_binary64
380×associate-*l*_binary64
309×associate-*r*_binary64
305×associate-/l*_binary64
Counts
60 → 85
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0101816
1240750
2571740
31389730
44215730
55275730

prune50.0ms (0.8%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New82385
Fresh000
Picked101
Done011
Total83487
Error
0.6b
Counts
87 → 4
Alt Table
StatusErrorProgram
1.2b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))))
2.0b
(+.f64 (log1p.f64 (exp.f64 a)) (*.f64 (*.f64 (cbrt.f64 b) (cbrt.f64 b)) (/.f64 (cbrt.f64 b) (+.f64 1 (exp.f64 a)))))
27.4b
(+.f64 (log1p.f64 (exp.f64 a)) (exp.f64 (-.f64 (log.f64 b) (log1p.f64 (exp.f64 a)))))
30.5b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 1266 to 659 computations (47.9% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

rewrite4.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64
10×add-sqr-sqrt_binary64
10×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
2 → 40
Calls

2 calls:

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

series1.1s (17.1%)

Counts
2 → 36
Calls

2 calls:

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

simplify82.0ms (1.3%)

Algorithm
egg-herbie
Rules
738×fma-neg_binary64
665×cancel-sign-sub-inv_binary64
433×times-frac_binary64
257×associate-*r*_binary64
245×associate-/l*_binary64
Counts
76 → 138
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01281141
1305989
2849986
32833976
44834976
55163976

prune85.0ms (1.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1651166
Fresh112
Picked011
Done011
Total1664170
Error
0.6b
Counts
170 → 4
Alt Table
StatusErrorProgram
1.2b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))))
2.5b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (expm1.f64 (*.f64 (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))))))
27.4b
(+.f64 (log1p.f64 (exp.f64 a)) (exp.f64 (-.f64 (log.f64 b) (log1p.f64 (exp.f64 a)))))
30.5b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 2300 to 1386 computations (39.7% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))))
0.8b
(cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))
0.8b
(cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))
0.8b
(cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))

rewrite13.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
21×pow1_binary64
10×pow1/3_binary64
pow-prod-up_binary64
add-sqr-sqrt_binary64
cbrt-prod_binary64
Counts
2 → 51
Calls

2 calls:

9.0ms
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))))
1.0ms
(cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))

series784.0ms (12.6%)

Counts
2 → 24
Calls

2 calls:

527.0ms
(cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))
257.0ms
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))))

simplify71.0ms (1.1%)

Algorithm
egg-herbie
Rules
571×fma-neg_binary64
348×associate-*l*_binary64
332×unswap-sqr_binary64
319×fma-def_binary64
310×associate-*r*_binary64
Counts
75 → 120
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081181
12551096
27181059
323691049
450031049

prune129.0ms (2.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2361237
Fresh011
Picked101
Done022
Total2374241
Error
0.6b
Counts
241 → 4
Alt Table
StatusErrorProgram
27.4b
(+.f64 (log1p.f64 (exp.f64 a)) (exp.f64 (-.f64 (log.f64 b) (log1p.f64 (exp.f64 a)))))
2.7b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (expm1.f64 (*.f64 (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))) (sqrt.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))))) (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a)))) (sqrt.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))))))))
1.2b
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 a))))))
30.5b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 4135 to 2901 computations (29.8% saved)

regimes142.0ms (2.3%)

Accuracy

Total 0.6b remaining (51.1%)

Threshold costs 0.6b (51.1%)

Compiler

Compiled 2957 to 2120 computations (28.3% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
1917
2917

end7.0ms (0.1%)

Compiler

Compiled 36 to 21 computations (41.7% saved)

sample2.3s (36.4%)

Algorithm
intervals
Results
995.0ms1973×body1024valid
259.0ms985×body512valid
239.0ms4389×body128valid
116.0ms173×body2048valid
69.0ms480×body256valid
7.0ms143×body128overflowed
Compiler

Compiled 96 to 68 computations (29.2% saved)

Profiling

Loading profile data...