Details

Time bar (total: 2.9s)

analyze109.0ms (3.7%)

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)

sample21.0ms (0.7%)

Algorithm
intervals
Results
11.0ms256×body128valid
1.0ms26×body128overflowed
Compiler

Compiled 23 to 15 computations (34.8% saved)

simplify10.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
1813
2813

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 20 to 12 computations (40% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

rewrite38.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0.3b
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))
Compiler

Compiled 753 to 152 computations (79.8% saved)

series70.0ms (2.4%)

Error
0.0b
Counts
2 → 23
Calls

2 calls:

29.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
22.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 1106 to 721 computations (34.8% saved)

simplify94.0ms (3.2%)

Algorithm
egg-herbie
Rules
873×fma-neg_binary64
433×associate-+l+_binary64
393×fma-def_binary64
366×times-frac_binary64
272×associate-/l*_binary64
Counts
75 → 52
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01611647
14151535
212251529
348471529
456791529

prune64.0ms (2.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New49352
Fresh000
Picked101
Done000
Total50353
Error
0b
Counts
53 → 3
Alt Table
StatusErrorProgram
20.8b
(-.f64 (*.f64 (+.f64 (/.f64 (*.f64 b b) (pow.f64 (+.f64 1 (exp.f64 a)) 2)) 1) (/.f64 (exp.f64 a) (+.f64 1 (exp.f64 a)))) (fma.f64 1/2 (*.f64 (/.f64 (*.f64 b (exp.f64 a)) (pow.f64 (+.f64 1 (exp.f64 a)) 2)) b) (/.f64 (*.f64 b (exp.f64 a)) (pow.f64 (+.f64 1 (exp.f64 a)) 2))))
15.7b
(+.f64 (fma.f64 1/6 (/.f64 (pow.f64 a 3) (+.f64 1 (exp.f64 b))) (fma.f64 1/2 (*.f64 (/.f64 a (+.f64 1 (exp.f64 b))) a) (/.f64 1 (+.f64 1 (exp.f64 b))))) (-.f64 (-.f64 (+.f64 (/.f64 a (+.f64 1 (exp.f64 b))) (fma.f64 2 (pow.f64 (/.f64 a (+.f64 1 (exp.f64 b))) 3) (/.f64 (*.f64 a a) (pow.f64 (+.f64 1 (exp.f64 b)) 3)))) (fma.f64 7/6 (/.f64 (pow.f64 a 3) (pow.f64 (+.f64 1 (exp.f64 b)) 2)) (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)))) (*.f64 (*.f64 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2)) a) (+.f64 3/2 (/.f64 a (pow.f64 (+.f64 1 (exp.f64 b)) 2))))))
0.3b
(exp.f64 (-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
Compiler

Compiled 1169 to 513 computations (56.1% saved)

localize8.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(exp.f64 (-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
0.0b
(+.f64 (exp.f64 b) (exp.f64 a))
1.7b
(-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
2.5b
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))

rewrite121.0ms (4.1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
37×*-un-lft-identity_binary64
29×add-sqr-sqrt_binary64
25×add-cube-cbrt_binary64
24×prod-diff_binary64
19×exp-sum_binary64
Counts
4 → 112
Calls

4 calls:

8.0ms
(-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
5.0ms
(exp.f64 (-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
4.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
3.0ms
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
Compiler

Compiled 2317 to 424 computations (81.7% saved)

series128.0ms (4.4%)

Error
0b
Counts
4 → 44
Calls

4 calls:

34.0ms
(exp.f64 (-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))))
28.0ms
(-.f64 a (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
24.0ms
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
11.0ms
(+.f64 (exp.f64 b) (exp.f64 a))
Compiler

Compiled 2125 to 1537 computations (27.7% saved)

simplify137.0ms (4.7%)

Algorithm
egg-herbie
Rules
905×fma-neg_binary64
369×times-frac_binary64
275×exp-prod_binary64
229×sub-neg_binary64
216×cancel-sign-sub-inv_binary64
Counts
156 → 138
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02753427
16652953
221952678
343202673
449612673

prune59.0ms (2%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1362138
Fresh202
Picked101
Done000
Total1392141
Error
0b
Counts
141 → 2
Alt Table
StatusErrorProgram
11.5b
(exp.f64 (-.f64 a (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
Compiler

Compiled 1423 to 553 computations (61.1% saved)

localize8.0ms (0.3%)

Local error

Found 4 expressions with local error:

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.0b
(+.f64 (exp.f64 a) (exp.f64 b))
0.5b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))

rewrite53.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
24×*-un-lft-identity_binary64
14×add-sqr-sqrt_binary64
14×add-cube-cbrt_binary64
12×times-frac_binary64
add-cbrt-cube_binary64
Counts
4 → 74
Calls

4 calls:

9.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
3.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
0.0ms
(log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b))))
0.0ms
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
Compiler

Compiled 1184 to 294 computations (75.2% saved)

series263.0ms (9%)

Error
0b
Counts
4 → 44
Calls

4 calls:

94.0ms
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
80.0ms
(log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b))))
30.0ms
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))
13.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
Compiler

Compiled 5048 to 3623 computations (28.2% saved)

simplify123.0ms (4.2%)

Algorithm
egg-herbie
Rules
374×times-frac_binary64
262×associate-+r+_binary64
242×sub-neg_binary64
221×associate-/r*_binary64
218×+-commutative_binary64
Counts
118 → 103
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03674343
19873656
242533611
350683611

prune54.0ms (1.9%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1030103
Fresh011
Picked011
Done000
Total1032105
Error
0b
Counts
105 → 2
Alt Table
StatusErrorProgram
11.5b
(exp.f64 (-.f64 a (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
Compiler

Compiled 2258 to 1147 computations (49.2% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(exp.f64 (-.f64 a (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
0.0b
(/.f64 b (+.f64 1 (exp.f64 a)))
0.0b
(+.f64 1 (exp.f64 a))
0.3b
(log1p.f64 (exp.f64 a))

rewrite90.0ms (3.1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
46×*-un-lft-identity_binary64
25×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
17×exp-sum_binary64
14×add-log-exp_binary64
Counts
4 → 100
Calls

4 calls:

11.0ms
(exp.f64 (-.f64 a (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
4.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
3.0ms
(+.f64 1 (exp.f64 a))
1.0ms
(log1p.f64 (exp.f64 a))
Compiler

Compiled 2299 to 1187 computations (48.4% saved)

series58.0ms (2%)

Error
0b
Counts
4 → 23
Calls

4 calls:

18.0ms
(exp.f64 (-.f64 a (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
14.0ms
(log1p.f64 (exp.f64 a))
14.0ms
(/.f64 b (+.f64 1 (exp.f64 a)))
4.0ms
(+.f64 1 (exp.f64 a))
Compiler

Compiled 950 to 682 computations (28.2% saved)

simplify192.0ms (6.6%)

Algorithm
egg-herbie
Rules
888×fma-neg_binary64
334×fma-def_binary64
233×exp-prod_binary64
218×exp-diff_binary64
171×associate-*l*_binary64
Counts
123 → 77
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
02052090
14121962
210421933
335051929
449841929
549621929
649901929
749991926
848451926

prune34.0ms (1.2%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New77077
Fresh000
Picked011
Done011
Total77279
Error
0b
Counts
79 → 2
Alt Table
StatusErrorProgram
11.5b
(exp.f64 (-.f64 a (+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 1 (exp.f64 a))))))
0.5b
(expm1.f64 (log1p.f64 (/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))))
Compiler

Compiled 729 to 389 computations (46.6% saved)

regimes573.0ms (19.6%)

Accuracy

Total 0.2b remaining (27.3%)

Threshold costs 0.2b (27.3%)

Compiler

Compiled 14701 to 8544 computations (41.9% saved)

simplify3.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
01017
11517
22117
32317
42417
52317

end1.0ms (0%)

Compiler

Compiled 12 to 9 computations (25% saved)

sample602.0ms (20.5%)

Algorithm
intervals
Results
297.0ms8000×body128valid
23.0ms682×body128overflowed
Compiler

Compiled 52 to 36 computations (30.8% saved)

Profiling

Loading profile data...