Details

Time bar (total: 5.0s)

analyze193.0ms (3.8%)

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)

sample126.0ms (2.5%)

Algorithm
intervals
Results
82.0ms66×body1024valid
10.0ms37×body512valid
7.0ms127×body128valid
6.0msbody2048valid
2.0ms17×body256valid
0.0msbody128overflowed
Compiler

Compiled 19 to 15 computations (21.1% saved)

simplify10.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
1810
2810

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 16 to 12 computations (25% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(+.f64 (exp.f64 a) (exp.f64 b))
3.2b
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))

rewrite26.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
31.6b
Rules
*-un-lft-identity_binary64
add-log-exp_binary64
log-prod_binary64
add-exp-log_binary64
add-sqr-sqrt_binary64
Counts
2 → 27
Calls

2 calls:

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

Compiled 332 to 84 computations (74.7% saved)

series58.0ms (1.2%)

Error
0.3b
Counts
2 → 23
Calls

2 calls:

30.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
10.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 770 to 564 computations (26.8% saved)

simplify58.0ms (1.2%)

Algorithm
egg-herbie
Rules
625×associate-/r*_binary64
301×associate-+l+_binary64
284×associate-/r/_binary64
266×associate-/l/_binary64
174×associate-+r+_binary64
Counts
50 → 30
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0106916
1269869
2751833
32553822
45361822

prune28.0ms (0.6%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New24630
Fresh000
Picked101
Done000
Total25631
Error
0.3b
Counts
31 → 6
Alt Table
StatusErrorProgram
32.5b
(*.f64 (*.f64 (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
31.7b
(cbrt.f64 (pow.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))) 3))
32.1b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
32.2b
(log.f64 (+.f64 1 (+.f64 b (+.f64 (exp.f64 a) (*.f64 b (*.f64 b (+.f64 1/2 (*.f64 b 1/6))))))))
0.3b
(+.f64 (log.f64 (+.f64 1 (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)))))))
31.7b
(log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3)) (+.f64 (pow.f64 (exp.f64 a) 2) (*.f64 (exp.f64 b) (-.f64 (exp.f64 b) (exp.f64 a))))))
Compiler

Compiled 714 to 359 computations (49.7% saved)

localize24.0ms (0.5%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 b (+.f64 1 (exp.f64 a)))
0.0b
(/.f64 b (+.f64 1 (exp.f64 a)))
0.1b
(+.f64 1/2 (/.f64 -1/2 (+.f64 1 (exp.f64 a))))
0.1b
(log.f64 (+.f64 1 (exp.f64 a)))

rewrite120.0ms (2.4%)

Algorithm
rewrite-expression-head
Error
0.3b
Rules
43×*-un-lft-identity_binary64
24×times-frac_binary64
23×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
10×distribute-lft-out_binary64
Counts
4 → 93
Calls

4 calls:

7.0ms
(+.f64 1/2 (/.f64 -1/2 (+.f64 1 (exp.f64 a))))
4.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
4.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
3.0ms
(log.f64 (+.f64 1 (exp.f64 a)))
Compiler

Compiled 3093 to 1980 computations (36% saved)

series81.0ms (1.6%)

Error
0.3b
Counts
4 → 24
Calls

4 calls:

24.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
19.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
13.0ms
(log.f64 (+.f64 1 (exp.f64 a)))
10.0ms
(+.f64 1/2 (/.f64 -1/2 (+.f64 1 (exp.f64 a))))
Compiler

Compiled 1725 to 1197 computations (30.6% saved)

simplify128.0ms (2.6%)

Algorithm
egg-herbie
Rules
451×times-frac_binary64
405×div-sub_binary64
396×associate-/l*_binary64
279×distribute-rgt-in_binary64
211×distribute-lft-in_binary64
Counts
117 → 52
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01271777
12911639
25761629
314951629
441301629
549481625
648581625

prune50.0ms (1%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New51152
Fresh145
Picked011
Done000
Total52658
Error
0.3b
Counts
58 → 6
Alt Table
StatusErrorProgram
32.5b
(*.f64 (*.f64 (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
27.9b
(+.f64 (-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (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)))))))
32.1b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
32.2b
(log.f64 (+.f64 1 (+.f64 b (+.f64 (exp.f64 a) (*.f64 b (*.f64 b (+.f64 1/2 (*.f64 b 1/6))))))))
0.3b
(+.f64 (log.f64 (+.f64 1 (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)))))))
31.7b
(log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3)) (+.f64 (pow.f64 (exp.f64 a) 2) (*.f64 (exp.f64 b) (-.f64 (exp.f64 b) (exp.f64 a))))))
Compiler

Compiled 1606 to 1036 computations (35.5% saved)

localize21.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.1b
(log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2)))
0.2b
(-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (exp.f64 a))))
3.0b
(-.f64 1 (exp.f64 a))
3.0b
(-.f64 1 (pow.f64 (exp.f64 a) 2))

rewrite196.0ms (3.9%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
43×add-sqr-sqrt_binary64
39×*-un-lft-identity_binary64
30×log-prod_binary64
29×difference-of-squares_binary64
15×cancel-sign-sub-inv_binary64
Counts
4 → 110
Calls

4 calls:

12.0ms
(-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (exp.f64 a))))
5.0ms
(-.f64 1 (pow.f64 (exp.f64 a) 2))
5.0ms
(log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2)))
3.0ms
(-.f64 1 (exp.f64 a))
Compiler

Compiled 4693 to 3161 computations (32.6% saved)

series59.0ms (1.2%)

Error
0.3b
Counts
4 → 18
Calls

4 calls:

18.0ms
(-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (exp.f64 a))))
14.0ms
(log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2)))
10.0ms
(-.f64 1 (pow.f64 (exp.f64 a) 2))
9.0ms
(-.f64 1 (exp.f64 a))
Compiler

Compiled 1628 to 1155 computations (29.1% saved)

simplify212.0ms (4.2%)

Algorithm
egg-herbie
Rules
475×associate-*l*_binary64
426×associate-*r*_binary64
413×exp-prod_binary64
221×sub-neg_binary64
202×distribute-rgt-neg-out_binary64
Counts
128 → 75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02012371
14271927
29831912
332601902
443751902
549051902
649971902
749951902
848631902

prune65.0ms (1.3%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New74175
Fresh044
Picked011
Done011
Total74781
Error
0.3b
Counts
81 → 7
Alt Table
StatusErrorProgram
32.5b
(*.f64 (*.f64 (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
27.9b
(+.f64 (-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (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)))))))
32.1b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
32.2b
(log.f64 (+.f64 1 (+.f64 b (+.f64 (exp.f64 a) (*.f64 b (*.f64 b (+.f64 1/2 (*.f64 b 1/6))))))))
0.3b
(+.f64 (log.f64 (+.f64 1 (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)))))))
31.7b
(log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3)) (+.f64 (pow.f64 (exp.f64 a) 2) (*.f64 (exp.f64 b) (-.f64 (exp.f64 b) (exp.f64 a))))))
27.9b
(+.f64 (+.f64 (-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3)))) (log.f64 (+.f64 (*.f64 1 1) (+.f64 (*.f64 (exp.f64 a) (exp.f64 a)) (*.f64 1 (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)))))))
Compiler

Compiled 2450 to 1620 computations (33.9% saved)

localize32.0ms (0.6%)

Local error

Found 4 expressions with local error:

0.2b
(log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3)))
0.3b
(-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3))))
3.0b
(-.f64 1 (pow.f64 (exp.f64 a) 3))
3.0b
(-.f64 1 (pow.f64 (exp.f64 a) 2))

rewrite315.0ms (6.3%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
61×add-sqr-sqrt_binary64
47×*-un-lft-identity_binary64
41×difference-of-squares_binary64
36×log-prod_binary64
24×cancel-sign-sub-inv_binary64
Counts
4 → 131
Calls

4 calls:

13.0ms
(-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3))))
8.0ms
(-.f64 1 (pow.f64 (exp.f64 a) 3))
7.0ms
(log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3)))
5.0ms
(-.f64 1 (pow.f64 (exp.f64 a) 2))
Compiler

Compiled 7334 to 4850 computations (33.9% saved)

series123.0ms (2.5%)

Error
0.3b
Counts
4 → 18
Calls

4 calls:

24.0ms
(-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3))))
16.0ms
(log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3)))
13.0ms
(-.f64 1 (pow.f64 (exp.f64 a) 3))
12.0ms
(-.f64 1 (pow.f64 (exp.f64 a) 2))
Compiler

Compiled 2322 to 1605 computations (30.9% saved)

simplify224.0ms (4.5%)

Algorithm
egg-herbie
Rules
563×cancel-sign-sub-inv_binary64
539×exp-prod_binary64
281×unswap-sqr_binary64
251×sub-neg_binary64
242×*-commutative_binary64
Counts
149 → 98
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02312990
14932741
213382650
328252634
443272625
547802625
649912625
749912625
848532625

prune85.0ms (1.7%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New97198
Fresh044
Picked101
Done022
Total987105
Error
0.2b
Counts
105 → 7
Alt Table
StatusErrorProgram
32.5b
(*.f64 (*.f64 (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))) (cbrt.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
27.9b
(+.f64 (-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (log.f64 (-.f64 1 (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)))))))
32.1b
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
28.3b
(+.f64 (+.f64 (-.f64 (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 2))) (+.f64 (log.f64 (+.f64 1 (pow.f64 (exp.f64 a) 3/2))) (log.f64 (-.f64 1 (pow.f64 (exp.f64 a) 3/2))))) (log.f64 (+.f64 (*.f64 1 1) (+.f64 (*.f64 (exp.f64 a) (exp.f64 a)) (*.f64 1 (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)))))))
32.2b
(log.f64 (+.f64 1 (+.f64 b (+.f64 (exp.f64 a) (*.f64 b (*.f64 b (+.f64 1/2 (*.f64 b 1/6))))))))
0.3b
(+.f64 (log.f64 (+.f64 1 (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)))))))
31.7b
(log.f64 (/.f64 (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3)) (+.f64 (pow.f64 (exp.f64 a) 2) (*.f64 (exp.f64 b) (-.f64 (exp.f64 b) (exp.f64 a))))))
Compiler

Compiled 3552 to 2327 computations (34.5% saved)

regimes401.0ms (8%)

Accuracy

Total 0.4b remaining (36.1%)

Threshold costs 0.4b (36.1%)

Compiler

Compiled 11416 to 7646 computations (33% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01647
12447
22347

end7.0ms (0.1%)

Compiler

Compiled 96 to 66 computations (31.3% saved)

sample2.4s (47.2%)

Algorithm
intervals
Results
997.0ms1981×body1024valid
262.0ms993×body512valid
236.0ms4390×body128valid
143.0ms195×body2048valid
63.0ms441×body256valid
7.0ms148×body128overflowed
Compiler

Compiled 268 to 174 computations (35.1% saved)

Profiling

Loading profile data...