Details

Time bar (total: 5.1s)

analyze47.0ms (0.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
25%74.9%0.1%3
62.4%37.5%0.1%4
68.7%31.2%0.1%5
68.7%18.7%12.6%6
68.7%17.2%14.1%7
68.7%10.1%21.2%8
68.7%9%22.3%9
68.7%5.3%26%10
68.7%4.6%26.7%11
68.7%2.7%28.6%12
68.7%2.3%29%13
68.7%1.4%30%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample849.0ms (16.6%)

Results
818.0ms8256×body128valid
3.0ms31×body128invalid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify8.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
1813
2813

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 30 to 18 computations (40% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series32.0ms (0.6%)

Counts
2 → 48
Calls

2 calls:

28.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
4.0ms
(+.f64 (exp.f64 a) (exp.f64 b))

rewrite12.0ms (0.2%)

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:

5.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
3.0ms
(+.f64 (exp.f64 a) (exp.f64 b))

simplify86.0ms (1.7%)

Algorithm
egg-herbie
Rules
806×fma-neg_binary64
536×times-frac_binary64
493×fma-def_binary64
389×associate-/l*_binary64
245×associate-/r*_binary64
Counts
100 → 108
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01681981
14491869
214031853
349151853
456401853

prune118.0ms (2.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1053108
Fresh000
Picked101
Done000
Total1063109
Error
0b
Counts
109 → 3
Alt Table
StatusErrorProgram
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
10.0b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (/.f64 a (+.f64 1 (exp.f64 b)))) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))
0.5b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
Compiler

Compiled 2299 to 865 computations (62.4% saved)

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 b) (exp.f64 a))
0.2b
(sqrt.f64 (exp.f64 a))
0.3b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
0.4b
(/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a)))

series73.0ms (1.4%)

Counts
4 → 60
Calls

4 calls:

36.0ms
(/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a)))
28.0ms
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
4.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
3.0ms
(sqrt.f64 (exp.f64 a))

rewrite39.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
69×*-un-lft-identity_binary64
58×add-sqr-sqrt_binary64
52×times-frac_binary64
41×add-cube-cbrt_binary64
38×sqrt-prod_binary64
Counts
4 → 143
Calls

4 calls:

16.0ms
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
6.0ms
(/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a)))
3.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
2.0ms
(sqrt.f64 (exp.f64 a))

simplify141.0ms (2.8%)

Algorithm
egg-herbie
Rules
480×fma-neg_binary64
329×associate-/l/_binary64
271×cancel-sign-sub-inv_binary64
183×sub-neg_binary64
166×distribute-rgt-in_binary64
Counts
203 → 204
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02914659
17774419
228544329
348204329
450614329

prune168.0ms (3.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2300230
Fresh022
Picked011
Done000
Total2303233
Error
0b
Counts
233 → 3
Alt Table
StatusErrorProgram
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
10.0b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (/.f64 a (+.f64 1 (exp.f64 b)))) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))
0.5b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
Compiler

Compiled 5836 to 1826 computations (68.7% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series539.0ms (10.6%)

Counts
2 → 48
Calls

2 calls:

512.0ms
(log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b))))
27.0ms
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))

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

simplify77.0ms (1.5%)

Algorithm
egg-herbie
Rules
357×times-frac_binary64
337×cancel-sign-sub-inv_binary64
229×associate-/r*_binary64
225×unswap-sqr_binary64
211×associate-/l*_binary64
Counts
70 → 67
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02513192
17733027
236742850
350382850

prune182.0ms (3.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1750175
Fresh011
Picked011
Done011
Total1753178
Error
0b
Counts
178 → 3
Alt Table
StatusErrorProgram
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
10.0b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (/.f64 a (+.f64 1 (exp.f64 b)))) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))
0.5b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
Compiler

Compiled 6017 to 3094 computations (48.6% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series182.0ms (3.6%)

Counts
4 → 40
Calls

4 calls:

78.0ms
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (/.f64 a (+.f64 1 (exp.f64 b)))) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))
72.0ms
(/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2))
25.0ms
(/.f64 a (+.f64 1 (exp.f64 b)))
7.0ms
(pow.f64 (+.f64 1 (exp.f64 b)) 2)

rewrite309.0ms (6.1%)

Algorithm
rewrite-expression-head
Rules
1602×*-un-lft-identity_binary64
1022×times-frac_binary64
558×prod-diff_binary64
493×distribute-lft-out_binary64
445×add-sqr-sqrt_binary64
Counts
4 → 752
Calls

4 calls:

61.0ms
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (/.f64 a (+.f64 1 (exp.f64 b)))) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))
6.0ms
(/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2))
5.0ms
(/.f64 a (+.f64 1 (exp.f64 b)))
3.0ms
(pow.f64 (+.f64 1 (exp.f64 b)) 2)

simplify792.0ms (15.5%)

Algorithm
egg-herbie
Rules
583×fma-neg_binary64
276×exp-prod_binary64
245×distribute-rgt-neg-in_binary64
240×fma-udef_binary64
217×distribute-neg-frac_binary64
Counts
792 → 590
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
063550189
1144232072
2303923144
3444623138
4488223138

prune819.0ms (16.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New5900590
Fresh000
Picked011
Done022
Total5903593
Error
0b
Counts
593 → 3
Alt Table
StatusErrorProgram
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
10.0b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (/.f64 a (+.f64 1 (exp.f64 b)))) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))
0.5b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
Compiler

Compiled 35857 to 23331 computations (34.9% saved)

regimes533.0ms (10.5%)

Accuracy

Total 0.4b remaining (57.5%)

Threshold costs 0.4b (57.5%)

Counts
116 → 1
Compiler

Compiled 10423 to 7223 computations (30.7% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0915
11215
21715
31915
42015
52015

end63.0ms (1.2%)

Compiler

Compiled 73 to 49 computations (32.9% saved)

Profiling

Loading profile data...