Details

Time bar (total: 2.9s)

analyze43.0ms (1.5%)

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)

sample828.0ms (28.5%)

Results
793.0ms8256×body128valid
4.0ms31×body128invalid
Compiler

Compiled 32 to 20 computations (37.5% saved)

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

Compiled 30 to 18 computations (40% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series34.0ms (1.2%)

Counts
2 → 48
Calls

2 calls:

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

rewrite11.0ms (0.4%)

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

simplify91.0ms (3.1%)

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

prune105.0ms (3.6%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1053108
Fresh000
Picked101
Done000
Total1063109
Error
0.6b
Counts
109 → 3
Alt Table
StatusErrorProgram
1.8b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
13.7b
(/.f64 1 (+.f64 1 (exp.f64 b)))
21.6b
(-.f64 (/.f64 (exp.f64 a) (+.f64 1 (exp.f64 a))) (/.f64 (*.f64 b (exp.f64 a)) (pow.f64 (+.f64 1 (exp.f64 a)) 2)))
Compiler

Compiled 2285 to 855 computations (62.6% saved)

localize10.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 b) (exp.f64 a))
1.5b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
1.7b
(/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a)))

series69.0ms (2.4%)

Counts
3 → 56
Calls

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

rewrite37.0ms (1.3%)

Algorithm
rewrite-expression-head
Rules
66×*-un-lft-identity_binary64
54×add-sqr-sqrt_binary64
52×times-frac_binary64
38×add-cube-cbrt_binary64
35×sqrt-prod_binary64
Counts
3 → 125
Calls

3 calls:

14.0ms
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
7.0ms
(/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a)))
5.0ms
(+.f64 (exp.f64 b) (exp.f64 a))

simplify142.0ms (4.9%)

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
181 → 178
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02754490
17494258
227834168
347184168
449624168

prune115.0ms (3.9%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1780178
Fresh022
Picked011
Done000
Total1783181
Error
0.6b
Counts
181 → 3
Alt Table
StatusErrorProgram
1.8b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
13.7b
(/.f64 1 (+.f64 1 (exp.f64 b)))
21.6b
(-.f64 (/.f64 (exp.f64 a) (+.f64 1 (exp.f64 a))) (/.f64 (*.f64 b (exp.f64 a)) (pow.f64 (+.f64 1 (exp.f64 a)) 2)))
Compiler

Compiled 4904 to 1576 computations (67.9% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series9.0ms (0.3%)

Counts
2 → 8
Calls

2 calls:

7.0ms
(/.f64 1 (+.f64 1 (exp.f64 b)))
1.0ms
(+.f64 1 (exp.f64 b))

rewrite9.0ms (0.3%)

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

2 calls:

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

simplify70.0ms (2.4%)

Algorithm
egg-herbie
Rules
561×fma-neg_binary64
525×fma-def_binary64
498×unswap-sqr_binary64
428×associate-+l+_binary64
349×cancel-sign-sub-inv_binary64
Counts
64 → 75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
081733
1185669
2382663
3887653
42169653
53922653
65318653

prune64.0ms (2.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New74175
Fresh011
Picked101
Done011
Total75378
Error
0.6b
Counts
78 → 3
Alt Table
StatusErrorProgram
1.8b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
14.0b
(/.f64 1 (expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))))
21.6b
(-.f64 (/.f64 (exp.f64 a) (+.f64 1 (exp.f64 a))) (/.f64 (*.f64 b (exp.f64 a)) (pow.f64 (+.f64 1 (exp.f64 a)) 2)))
Compiler

Compiled 947 to 687 computations (27.5% saved)

localize7.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series172.0ms (5.9%)

Counts
3 → 36
Calls

3 calls:

160.0ms
(log1p.f64 (+.f64 1 (exp.f64 b)))
9.0ms
(/.f64 1 (expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))))
2.0ms
(expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 b))))

rewrite5.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
times-frac_binary64
add-exp-log_binary64
Counts
3 → 55
Calls

3 calls:

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

simplify90.0ms (3.1%)

Algorithm
egg-herbie
Rules
1280×fma-neg_binary64
597×fma-def_binary64
454×unswap-sqr_binary64
379×*-commutative_binary64
332×cancel-sign-sub-inv_binary64
Counts
91 → 108
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0941000
1176907
2395898
3884884
42051884
53311884
64761884
74896884

prune98.0ms (3.4%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1332135
Fresh011
Picked011
Done011
Total1335138
Error
0.6b
Counts
138 → 5
Alt Table
StatusErrorProgram
1.8b
(*.f64 (sqrt.f64 (exp.f64 a)) (/.f64 (sqrt.f64 (exp.f64 a)) (+.f64 (exp.f64 b) (exp.f64 a))))
14.2b
(/.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))) (sqrt.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))))))
14.8b
(/.f64 1 (expm1.f64 (*.f64 (*.f64 (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 b))))) (cbrt.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))))))
14.0b
(/.f64 1 (expm1.f64 (log1p.f64 (+.f64 1 (exp.f64 b)))))
21.6b
(-.f64 (/.f64 (exp.f64 a) (+.f64 1 (exp.f64 a))) (/.f64 (*.f64 b (exp.f64 a)) (pow.f64 (+.f64 1 (exp.f64 a)) 2)))
Compiler

Compiled 1791 to 1386 computations (22.6% saved)

regimes799.0ms (27.5%)

Accuracy

Total 0.4b remaining (71%)

Threshold costs 0.4b (71%)

Counts
172 → 1
Compiler

Compiled 14714 to 10897 computations (25.9% saved)

simplify2.0ms (0.1%)

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

end84.0ms (2.9%)

Compiler

Compiled 111 to 81 computations (27% saved)

Profiling

Loading profile data...