Details

Time bar (total: 18.5s)

analyze977.0ms (5.3%)

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
0%99.9%0.1%4
12.5%87.4%0.1%5
12.5%78%9.5%6
20.3%68.7%11%7
21.1%62.4%16.5%8
25.4%57%17.7%9
26%52.1%22%10
28.3%49%22.7%11
28.6%47.2%24.2%12
29.8%45.6%24.7%13
29.9%43.9%26.2%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample15.3s (82.6%)

Results
11.3s4935×body8192exit
1.9s3339×body1024invalid
1.1s8256×body128valid
585.0ms1691×body512invalid
204.0ms903×body256invalid
91.0ms649×body128invalid
7.0msbody8192invalid
5.0msbody4096invalid
Compiler

Compiled 22 to 16 computations (27.3% saved)

preprocess48.0ms (0.3%)

Algorithm
egg-herbie
Rules
409×associate-*l*_binary64
386×associate-/l*_binary64
325×associate-*r*_binary64
318×associate-/r*_binary64
273×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01326
13126
26722
315722
449522
5215322
6394822
7410522
8433722
9478722
022
Stop Event
saturated
node limit
Compiler

Compiled 10 to 7 computations (30% saved)

simplify42.0ms (0.2%)

Algorithm
egg-herbie
Rules
656×unswap-sqr_binary64
607×times-frac_binary64
203×associate-*l*_binary64
192×associate-/l*_binary64
177×sqr-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11913
23811
38511
426011
5110511
6405511
7415411
8427811
9451511
10495811
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.3b
(/.f64 (pow.f64 l (exp.f64 w)) (exp.f64 w))
0.3b
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
Compiler

Compiled 55 to 32 computations (41.8% saved)

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
0.3b
(pow.f64 l (exp.f64 w))

series232.0ms (1.3%)

Counts
2 → 44
Calls

12 calls:

44.0ms
(pow.f64 l (exp.f64 w))
w
inf
43.0ms
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
w
-inf
42.0ms
(*.f64 (exp.f64 (neg.f64 w)) (pow.f64 l (exp.f64 w)))
w
inf
41.0ms
(pow.f64 l (exp.f64 w))
w
-inf
11.0ms
(pow.f64 l (exp.f64 w))
l
inf

rewrite31.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
555×log1p-expm1-u_binary64
555×expm1-log1p-u_binary64
315×log-prod_binary64
114×expm1-udef_binary64
114×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0819
115917
2203117
Stop Event
node limit
Counts
2 → 39

simplify28.0ms (0.2%)

Algorithm
egg-herbie
Rules
832×fma-def_binary64
433×associate-+l+_binary64
421×associate-*l*_binary64
321×associate-+r+_binary64
313×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
076694
1255663
2913588
Stop Event
node limit
Counts
83 → 60

prune47.0ms (0.3%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New54660
Fresh101
Picked101
Done000
Total56662
Error
0.1b
Counts
62 → 6
Alt Table
StatusErrorProgram
1.4b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))))
27.0b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (cbrt.f64 (pow.f64 l (exp.f64 w))) (cbrt.f64 (pow.f64 l (*.f64 2 (exp.f64 w))))))
10.4b
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
8.5b
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (fma.f64 (*.f64 l (pow.f64 w 3)) (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) 1/2))) (fma.f64 1/2 (*.f64 (*.f64 l (*.f64 w w)) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 l (+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (pow.f64 (log.f64 l) 3))) (*.f64 (log.f64 l) w)))))))
5.1b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
26.7b
(*.f64 (exp.f64 (neg.f64 w)) (sqrt.f64 (pow.f64 l (*.f64 2 (exp.f64 w)))))
Compiler

Compiled 1288 to 582 computations (54.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (cbrt.f64 l) (exp.f64 w))
0.3b
(pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w))
0.5b
(pow.f64 (cbrt.f64 l) 2)
0.6b
(cbrt.f64 l)

series483.0ms (2.6%)

Counts
4 → 24
Calls

18 calls:

111.0ms
(pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w))
w
-inf
105.0ms
(pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w))
w
inf
82.0ms
(pow.f64 (cbrt.f64 l) (exp.f64 w))
w
-inf
82.0ms
(pow.f64 (cbrt.f64 l) (exp.f64 w))
w
inf
21.0ms
(pow.f64 (pow.f64 (cbrt.f64 l) 2) (exp.f64 w))
l
-inf

rewrite43.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
689×log1p-expm1-u_binary64
689×expm1-log1p-u_binary64
141×expm1-udef_binary64
141×log1p-udef_binary64
88×egg-rr
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118428
2208128
Stop Event
node limit
Counts
4 → 88

simplify35.0ms (0.2%)

Algorithm
egg-herbie
Rules
736×fma-def_binary64
378×distribute-rgt-out_binary64
368×*-commutative_binary64
347×distribute-lft-out_binary64
326×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
076628
1251593
21052529
33785474
Stop Event
node limit
Counts
112 → 107

prune80.0ms (0.4%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1263129
Fresh235
Picked101
Done000
Total1296135
Error
0.1b
Counts
135 → 6
Alt Table
StatusErrorProgram
5.1b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
3.7b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))))
10.4b
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
8.5b
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (fma.f64 (*.f64 l (pow.f64 w 3)) (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) 1/2))) (fma.f64 1/2 (*.f64 (*.f64 l (*.f64 w w)) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 l (+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (pow.f64 (log.f64 l) 3))) (*.f64 (log.f64 l) w)))))))
4.5b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (pow.f64 (exp.f64 (log.f64 (cbrt.f64 l))) 2) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))))
28.6b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (pow.f64 (pow.f64 l 2) 1/3) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))))
Compiler

Compiled 3479 to 1552 computations (55.4% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w))
0.4b
(*.f64 (sqrt.f64 l) (pow.f64 l 1/6))
0.6b
(cbrt.f64 l)
4.2b
(pow.f64 l 1/6)

series283.0ms (1.5%)

Counts
3 → 16
Calls

12 calls:

121.0ms
(pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w))
w
inf
114.0ms
(pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w))
w
-inf
9.0ms
(pow.f64 l 1/6)
l
-inf
7.0ms
(pow.f64 l 1/6)
l
inf
7.0ms
(pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w))
l
-inf

rewrite37.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
783×log1p-expm1-u_binary64
783×expm1-log1p-u_binary64
91×add-sqr-sqrt_binary64
86×add-log-exp_binary64
85×add-cube-cbrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0927
118825
2223825
Stop Event
node limit
Counts
3 → 52

simplify34.0ms (0.2%)

Algorithm
egg-herbie
Rules
889×distribute-rgt-out_binary64
675×associate-*l*_binary64
575×associate-*r*_binary64
343×fma-def_binary64
162×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
049426
1146399
2556325
33788284
Stop Event
node limit
Counts
68 → 64

prune55.0ms (0.3%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New84286
Fresh145
Picked101
Done000
Total86692
Error
0.0b
Counts
92 → 6
Alt Table
StatusErrorProgram
5.1b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
3.8b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w)) (pow.f64 (exp.f64 (log.f64 (cbrt.f64 l))) (exp.f64 w))))
10.4b
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
8.5b
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (fma.f64 (*.f64 l (pow.f64 w 3)) (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) 1/2))) (fma.f64 1/2 (*.f64 (*.f64 l (*.f64 w w)) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 l (+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (pow.f64 (log.f64 l) 3))) (*.f64 (log.f64 l) w)))))))
3.6b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w)) (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 l)) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)) (exp.f64 w))))
28.6b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (pow.f64 (pow.f64 l 2) 1/3) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))))
Compiler

Compiled 2435 to 1046 computations (57% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)
0.6b
(cbrt.f64 l)
0.6b
(cbrt.f64 (cbrt.f64 l))
4.2b
(pow.f64 l 1/6)

series253.0ms (1.4%)

Counts
2 → 24
Calls

6 calls:

117.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)
l
-inf
106.0ms
(cbrt.f64 (cbrt.f64 l))
l
-inf
9.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)
l
0
8.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)
l
inf
7.0ms
(cbrt.f64 (cbrt.f64 l))
l
inf

rewrite34.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
404×log1p-expm1-u_binary64
404×expm1-log1p-u_binary64
356×pow1_binary64
304×unpow-prod-down_binary64
204×log-prod_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0613
111713
2121112
Stop Event
node limit
Counts
2 → 90

simplify67.0ms (0.4%)

Algorithm
egg-herbie
Rules
581×sqr-pow_binary64
540×unswap-sqr_binary64
352×fma-def_binary64
345×*-commutative_binary64
223×associate-*l*_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
017396
145396
295396
3254396
4987280
52061280
62234280
72517280
82918280
93361280
103948280
114691280
Stop Event
node limit
Counts
114 → 97

prune135.0ms (0.7%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New2180218
Fresh055
Picked011
Done000
Total2186224
Error
0.0b
Counts
224 → 6
Alt Table
StatusErrorProgram
5.1b
(*.f64 (exp.f64 (neg.f64 w)) (exp.f64 (*.f64 (log.f64 l) (exp.f64 w))))
3.8b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w)) (pow.f64 (exp.f64 (log.f64 (cbrt.f64 l))) (exp.f64 w))))
10.4b
(fma.f64 w (-.f64 (*.f64 l (log.f64 l)) l) l)
8.5b
(*.f64 (exp.f64 (neg.f64 w)) (+.f64 l (fma.f64 (*.f64 l (pow.f64 w 3)) (*.f64 (log.f64 l) (+.f64 1/6 (*.f64 (log.f64 l) 1/2))) (fma.f64 1/2 (*.f64 (*.f64 l (*.f64 w w)) (+.f64 (log.f64 l) (pow.f64 (log.f64 l) 2))) (*.f64 l (+.f64 (*.f64 1/6 (*.f64 (pow.f64 w 3) (pow.f64 (log.f64 l) 3))) (*.f64 (log.f64 l) w)))))))
3.6b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (*.f64 (sqrt.f64 l) (pow.f64 l 1/6)) (exp.f64 w)) (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 l)) (pow.f64 (cbrt.f64 (cbrt.f64 l)) 2)) (exp.f64 w))))
28.6b
(*.f64 (exp.f64 (neg.f64 w)) (*.f64 (pow.f64 (pow.f64 (pow.f64 l 2) 1/3) (exp.f64 w)) (pow.f64 (cbrt.f64 l) (exp.f64 w))))
Compiler

Compiled 6864 to 3319 computations (51.6% saved)

regimes115.0ms (0.6%)

Accuracy

Total 0.2b remaining (73%)

Threshold costs 0.2b (73%)

Counts
40 → 1
Compiler

Compiled 2483 to 1582 computations (36.3% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11313
21513
31613
Stop Event
saturated

end112.0ms (0.6%)

Stop Event
fuel
Compiler

Compiled 169 to 111 computations (34.3% saved)

Profiling

Loading profile data...