Details

Time bar (total: 5.8s)

analyze117.0ms (2%)

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%18.7%12.6%7
68.7%12.5%18.8%8
68.7%12.5%18.8%9
68.7%9.4%22%10
68.7%9.4%22%11
68.7%7.8%23.5%12
68.7%7.8%23.5%13
68.7%7%24.3%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample19.0ms (0.3%)

Algorithm
intervals
Results
9.0ms256×body128valid
1.0ms20×body128overflowed
Compiler

Compiled 23 to 15 computations (34.8% saved)

simplify11.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
1813
2813

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.8b
Counts
1 → 1
Alt Table
StatusErrorProgram
0.8b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 20 to 12 computations (40% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(+.f64 (exp.f64 a) (exp.f64 b))
0.7b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))

rewrite40.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.7b
Rules
21×*-un-lft-identity_binary64
12×times-frac_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
distribute-lft-out_binary64
Counts
2 → 45
Calls

2 calls:

5.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
4.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 676 to 135 computations (80% saved)

series55.0ms (0.9%)

Error
0.4b
Counts
2 → 24
Calls

2 calls:

31.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
10.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 1199 to 779 computations (35% saved)

simplify110.0ms (1.9%)

Algorithm
egg-herbie
Rules
536×times-frac_binary64
389×associate-/l*_binary64
245×associate-/r*_binary64
241×associate--l+_binary64
209×associate--r+_binary64
Counts
69 → 49
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01641707
14281601
213271577
347211574
449831574
549651574

prune47.0ms (0.8%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New45449
Fresh000
Picked011
Done000
Total45550
Error
0.4b
Counts
50 → 5
Alt Table
StatusErrorProgram
0.8b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
1.1b
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
9.8b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))
15.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.8b
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))
Compiler

Compiled 1144 to 510 computations (55.4% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (exp.f64 b) (exp.f64 a))
0.0b
(pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)
0.0b
(cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3))
0.7b
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))

rewrite156.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
0.4b
Rules
70×*-un-lft-identity_binary64
70×cbrt-prod_binary64
51×times-frac_binary64
44×add-sqr-sqrt_binary64
44×add-cube-cbrt_binary64
Counts
4 → 149
Calls

4 calls:

10.0ms
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))
6.0ms
(pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)
4.0ms
(cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3))
3.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
Compiler

Compiled 2558 to 962 computations (62.4% saved)

series122.0ms (2.1%)

Error
0.4b
Counts
4 → 48
Calls

4 calls:

31.0ms
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))
27.0ms
(pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)
13.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
12.0ms
(cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3))
Compiler

Compiled 2562 to 1719 computations (32.9% saved)

simplify173.0ms (3%)

Algorithm
egg-herbie
Rules
909×times-frac_binary64
317×associate-+r+_binary64
298×unswap-sqr_binary64
209×+-commutative_binary64
189×associate-+l+_binary64
Counts
197 → 151
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03254865
17894483
229104464
348074464
450844464

prune92.0ms (1.6%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1510151
Fresh033
Picked011
Done011
Total1515156
Error
0.4b
Counts
156 → 5
Alt Table
StatusErrorProgram
0.8b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
1.1b
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
9.8b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))
15.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.8b
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))
Compiler

Compiled 2065 to 969 computations (53.1% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (exp.f64 a) (exp.f64 b))
0.0b
(+.f64 (exp.f64 b) (exp.f64 a))
0.7b
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
0.9b
(/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a))))

rewrite240.0ms (4.1%)

Algorithm
rewrite-expression-head
Error
0.4b
Rules
378×times-frac_binary64
304×*-un-lft-identity_binary64
224×sqrt-prod_binary64
188×add-sqr-sqrt_binary64
188×add-cube-cbrt_binary64
Counts
4 → 309
Calls

4 calls:

21.0ms
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
6.0ms
(/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
5.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
3.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 6878 to 923 computations (86.6% saved)

series151.0ms (2.6%)

Error
0.4b
Counts
4 → 48
Calls

4 calls:

53.0ms
(/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
33.0ms
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
11.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
11.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 3470 to 2191 computations (36.9% saved)

simplify420.0ms (7.2%)

Algorithm
egg-herbie
Rules
448×cancel-sign-sub-inv_binary64
282×associate-/l/_binary64
219×neg-mul-1_binary64
218×neg-sub0_binary64
200×sub-neg_binary64
Counts
357 → 297
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
049114928
1115014327
2315713342
3468713099
4506313099

prune124.0ms (2.1%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2970297
Fresh022
Picked011
Done022
Total2975302
Error
0.4b
Counts
302 → 5
Alt Table
StatusErrorProgram
0.8b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
1.1b
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
9.8b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))
15.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.8b
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))
Compiler

Compiled 4291 to 1301 computations (69.7% saved)

localize25.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.1b
(+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))
0.1b
(*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))
1.7b
(/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))
8.9b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))

rewrite541.0ms (9.3%)

Algorithm
rewrite-expression-head
Error
0.4b
Rules
41×add-log-exp_binary64
38×frac-add_binary64
33×add-exp-log_binary64
27×*-un-lft-identity_binary64
21×frac-sub_binary64
Counts
4 → 136
Calls

4 calls:

54.0ms
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))
32.0ms
(+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))
10.0ms
(*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))
9.0ms
(/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))
Compiler

Compiled 13586 to 8592 computations (36.8% saved)

series342.0ms (5.9%)

Error
0.4b
Counts
4 → 36
Calls

4 calls:

155.0ms
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))
74.0ms
(+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))
39.0ms
(/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))
35.0ms
(*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))
Compiler

Compiled 4579 to 3224 computations (29.6% saved)

simplify235.0ms (4%)

Algorithm
egg-herbie
Rules
636×distribute-rgt-in_binary64
619×distribute-lft-in_binary64
177×times-frac_binary64
150×*-commutative_binary64
142×cancel-sign-sub-inv_binary64
Counts
172 → 142
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
044414940
1151913781
2498413781

prune198.0ms (3.4%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New1411142
Fresh101
Picked011
Done033
Total1425147
Error
0.4b
Counts
147 → 5
Alt Table
StatusErrorProgram
44.9b
(-.f64 (+.f64 (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a a) (+.f64 1 (exp.f64 b)))) (/.f64 a (+.f64 1 (exp.f64 b))))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 2))) (/.f64 a (+.f64 1 (*.f64 (exp.f64 b) (+.f64 2 (exp.f64 b)))))))
0.8b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
1.1b
(/.f64 (/.f64 (exp.f64 a) (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (sqrt.f64 (+.f64 (exp.f64 a) (exp.f64 b))))
9.8b
(-.f64 (+.f64 (/.f64 1 (+.f64 1 (exp.f64 b))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a)) (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3))))) (+.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (*.f64 3/2 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a))))
0.8b
(/.f64 (exp.f64 a) (cbrt.f64 (pow.f64 (+.f64 (exp.f64 b) (exp.f64 a)) 3)))
Compiler

Compiled 9284 to 5688 computations (38.7% saved)

regimes1.3s (22.1%)

Accuracy

Total 0.3b remaining (46.5%)

Threshold costs 0.3b (46.5%)

Compiler

Compiled 23270 to 15222 computations (34.6% saved)

simplify8.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

end1.0ms (0%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

sample1.3s (21.9%)

Algorithm
intervals
Results
602.0ms8000×body128valid
40.0ms681×body128overflowed
Compiler

Compiled 179 to 116 computations (35.2% saved)

Profiling

Loading profile data...