Details

Time bar (total: 2.5s)

analyze111.0ms (4.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%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.8%)

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

Compiled 23 to 15 computations (34.8% saved)

simplify8.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
1813
2813

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.8b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.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))
0.8b
(/.f64 (exp.f64 a) (+.f64 (exp.f64 a) (exp.f64 b)))

series36.0ms (1.5%)

Counts
2 → 48
Calls

2 calls:

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

simplify86.0ms (3.5%)

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

prune100.0ms (4.1%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1035108
Fresh000
Picked101
Done000
Total1045109
Error
0.2b
Counts
109 → 5
Alt Table
StatusErrorProgram
8.6b
(/.f64 1 (+.f64 1 (exp.f64 b)))
20.9b
(*.f64 (/.f64 (exp.f64 a) (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3))) (+.f64 (*.f64 (exp.f64 a) (exp.f64 a)) (-.f64 (*.f64 (exp.f64 b) (exp.f64 b)) (*.f64 (exp.f64 a) (exp.f64 b)))))
0.8b
(*.f64 (exp.f64 a) (/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b))))
0.8b
(/.f64 1 (/.f64 (+.f64 (exp.f64 a) (exp.f64 b)) (exp.f64 a)))
22.7b
(-.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 2367 to 903 computations (61.9% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series48.0ms (1.9%)

Counts
2 → 48
Calls

2 calls:

32.0ms
(/.f64 1 (/.f64 (+.f64 (exp.f64 a) (exp.f64 b)) (exp.f64 a)))
16.0ms
(/.f64 (+.f64 (exp.f64 a) (exp.f64 b)) (exp.f64 a))

rewrite27.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
108×times-frac_binary64
92×*-un-lft-identity_binary64
60×add-sqr-sqrt_binary64
60×add-cube-cbrt_binary64
19×associate-/r*_binary64
Counts
2 → 125
Calls

2 calls:

11.0ms
(/.f64 1 (/.f64 (+.f64 (exp.f64 a) (exp.f64 b)) (exp.f64 a)))
6.0ms
(/.f64 (+.f64 (exp.f64 a) (exp.f64 b)) (exp.f64 a))

simplify142.0ms (5.8%)

Algorithm
egg-herbie
Rules
794×times-frac_binary64
487×fma-def_binary64
362×fma-neg_binary64
211×associate-/r/_binary64
194×distribute-rgt-in_binary64
Counts
173 → 194
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02124260
15393945
217483867
344603864
450133864

prune193.0ms (7.8%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2321233
Fresh044
Picked101
Done000
Total2335238
Error
0b
Counts
238 → 5
Alt Table
StatusErrorProgram
22.5b
(/.f64 1 (+.f64 1 (*.f64 (exp.f64 (neg.f64 a)) (+.f64 b 1))))
20.9b
(*.f64 (/.f64 (exp.f64 a) (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3))) (+.f64 (*.f64 (exp.f64 a) (exp.f64 a)) (-.f64 (*.f64 (exp.f64 b) (exp.f64 b)) (*.f64 (exp.f64 a) (exp.f64 b)))))
8.6b
(/.f64 1 (+.f64 1 (exp.f64 b)))
0.8b
(*.f64 (exp.f64 a) (/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b))))
22.7b
(-.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 5173 to 1825 computations (64.7% saved)

localize6.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (exp.f64 a) (exp.f64 b))
0.0b
(/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b)))
0.7b
(*.f64 (exp.f64 a) (/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b))))

series61.0ms (2.5%)

Counts
2 → 48
Calls

2 calls:

33.0ms
(*.f64 (exp.f64 a) (/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b))))
28.0ms
(/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b)))

rewrite20.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
35×*-un-lft-identity_binary64
27×add-sqr-sqrt_binary64
26×times-frac_binary64
20×add-cube-cbrt_binary64
18×associate-*r*_binary64
Counts
2 → 82
Calls

2 calls:

10.0ms
(*.f64 (exp.f64 a) (/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b))))
5.0ms
(/.f64 1 (+.f64 (exp.f64 a) (exp.f64 b)))

simplify107.0ms (4.4%)

Algorithm
egg-herbie
Rules
818×times-frac_binary64
528×fma-def_binary64
510×associate-/l*_binary64
486×fma-neg_binary64
198×distribute-rgt-in_binary64
Counts
130 → 140
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01852760
15042537
217312510
349992510
453242510

prune168.0ms (6.8%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1781179
Fresh134
Picked101
Done000
Total1804184
Error
0b
Counts
184 → 4
Alt Table
StatusErrorProgram
22.5b
(/.f64 1 (+.f64 1 (*.f64 (exp.f64 (neg.f64 a)) (+.f64 b 1))))
20.9b
(*.f64 (/.f64 (exp.f64 a) (+.f64 (pow.f64 (exp.f64 a) 3) (pow.f64 (exp.f64 b) 3))) (+.f64 (*.f64 (exp.f64 a) (exp.f64 a)) (-.f64 (*.f64 (exp.f64 b) (exp.f64 b)) (*.f64 (exp.f64 a) (exp.f64 b)))))
8.6b
(/.f64 1 (+.f64 1 (exp.f64 b)))
22.7b
(*.f64 (exp.f64 a) (-.f64 (/.f64 1 (+.f64 1 (exp.f64 a))) (/.f64 b (pow.f64 (+.f64 1 (exp.f64 a)) 2))))
Compiler

Compiled 4123 to 1874 computations (54.5% 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.4%)

Counts
2 → 8
Calls

2 calls:

8.0ms
(/.f64 1 (+.f64 1 (exp.f64 b)))
2.0ms
(+.f64 1 (exp.f64 b))

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

simplify74.0ms (3%)

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

prune51.0ms (2.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New74175
Fresh123
Picked101
Done000
Total76379
Error
0b
Counts
79 → 3
Alt Table
StatusErrorProgram
8.6b
(exp.f64 (neg.f64 (log1p.f64 (exp.f64 b))))
22.7b
(*.f64 (exp.f64 a) (-.f64 (/.f64 1 (+.f64 1 (exp.f64 a))) (/.f64 b (pow.f64 (+.f64 1 (exp.f64 a)) 2))))
22.5b
(/.f64 1 (+.f64 1 (*.f64 (exp.f64 (neg.f64 a)) (+.f64 b 1))))
Compiler

Compiled 910 to 666 computations (26.8% saved)

regimes546.0ms (22.2%)

Accuracy

Total 0.5b remaining (96.1%)

Threshold costs 0.5b (96.1%)

Counts
136 → 1
Compiler

Compiled 11955 to 8121 computations (32.1% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
cancel-sign-sub-inv_binary64
+-commutative_binary64
sub-neg_binary64
distribute-neg-in_binary64
neg-sub0_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01017
11717
22517
33715
44815
55115
64715

end0.0ms (0%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

sample603.0ms (24.6%)

Algorithm
intervals
Results
295.0ms8000×body128valid
22.0ms670×body128overflowed
Compiler

Compiled 64 to 48 computations (25% saved)

Profiling

Loading profile data...