Details

Time bar (total: 6.9s)

analyze492.0ms (7.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%74.9%25.1%3
0%74.9%25.1%4
0%74.9%25.1%5
0%62.4%37.6%6
0%31.2%68.8%7
0%31.2%68.8%8
0%31.2%68.8%9
0%28.1%71.9%10
4.7%21.8%73.5%11
4.7%21.8%73.5%12
7%19.5%73.5%13
8.2%17.5%74.3%14
Compiler

Compiled 18 to 13 computations (27.8% saved)

sample2.6s (37.6%)

Results
1.0s5891×body128valid
613.0ms768×body1024valid
449.0ms927×body512valid
213.0ms650×body256valid
45.0ms282×body128invalid
19.0ms20×body2048valid
Compiler

Compiled 53 to 38 computations (28.3% saved)

simplify57.0ms (0.8%)

Algorithm
egg-herbie
Rules
821×fma-neg_binary64
326×fma-def_binary64
173×distribute-rgt-in_binary64
134×unsub-neg_binary64
124×associate--r+_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01318
12517
24617
37117
411217
517317
629317
743717
868117
9108017
10131217
11152317
12153917
13153917
14149217

prune6.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
Compiler

Compiled 58 to 37 computations (36.2% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
0.0b
(*.f64 z (log1p.f64 (neg.f64 y)))
0.2b
(fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y))))

series716.0ms (10.4%)

Counts
3 → 108
Calls

3 calls:

280.0ms
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
248.0ms
(*.f64 z (log1p.f64 (neg.f64 y)))
187.0ms
(fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y))))

rewrite135.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
714×prod-diff_binary64
470×fma-udef_binary64
320×fma-def_binary64
207×fma-neg_binary64
195×expm1-udef_binary64
Counts
3 → 144
Calls

3 calls:

132.0ms
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
132.0ms
(*.f64 z (log1p.f64 (neg.f64 y)))
132.0ms
(fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01139
122633
2257233
3469333
4471633
5495433
000
100

simplify119.0ms (1.7%)

Algorithm
egg-herbie
Rules
683×fma-def_binary64
580×associate--r+_binary64
405×unsub-neg_binary64
368×distribute-neg-in_binary64
243×sub-neg_binary64
Counts
252 → 223
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01411970
14711834
214721770
347061770
449901770
549991770
649701770

prune159.0ms (2.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New2185223
Fresh000
Picked011
Done000
Total2186224
Error
0.0b
Counts
224 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
36.3b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.3b
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z))))))) t)
36.7b
(*.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 z (log1p.f64 y) t))))
37.4b
(-.f64 (pow.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 2) t)
9.9b
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))
Compiler

Compiled 4574 to 1636 computations (64.2% saved)

localize20.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z)))))))
2.9b
(*.f64 (pow.f64 y 4) z)
4.9b
(*.f64 (pow.f64 y 3) z)
6.7b
(*.f64 (pow.f64 y 2) z)

series178.0ms (2.6%)

Counts
4 → 36
Calls

4 calls:

141.0ms
(fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z)))))))
16.0ms
(*.f64 (pow.f64 y 3) z)
12.0ms
(*.f64 (pow.f64 y 4) z)
9.0ms
(*.f64 (pow.f64 y 2) z)

rewrite74.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
482×log1p-udef_binary64
263×log1p-expm1-u_binary64
263×expm1-log1p-u_binary64
253×add-exp-log_binary64
253×add-log-exp_binary64
Counts
4 → 52
Calls

4 calls:

72.0ms
(fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z)))))))
72.0ms
(*.f64 (pow.f64 y 4) z)
72.0ms
(*.f64 (pow.f64 y 3) z)
72.0ms
(*.f64 (pow.f64 y 2) z)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02663
157363
2488063
3559063
000
100

simplify100.0ms (1.5%)

Algorithm
egg-herbie
Rules
620×distribute-rgt-neg-in_binary64
573×sub-neg_binary64
552×distribute-lft-neg-in_binary64
421×fma-def_binary64
405×neg-mul-1_binary64
Counts
88 → 71
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0521154
1174975
2509918
31693887
43299886
54460886
64967886

prune110.0ms (1.6%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New71071
Fresh044
Picked011
Done011
Total71677
Error
0.0b
Counts
77 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
36.3b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.3b
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z))))))) t)
36.7b
(*.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 z (log1p.f64 y) t))))
37.4b
(-.f64 (pow.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 2) t)
9.9b
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))
Compiler

Compiled 2520 to 1525 computations (39.5% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 z (log1p.f64 y))
0.0b
(-.f64 (*.f64 z (log1p.f64 y)) t)
0.1b
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))

series620.0ms (9%)

Counts
3 → 108
Calls

3 calls:

261.0ms
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))
261.0ms
(*.f64 z (log1p.f64 y))
99.0ms
(-.f64 (*.f64 z (log1p.f64 y)) t)

rewrite130.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
754×prod-diff_binary64
498×fma-udef_binary64
287×fma-def_binary64
226×fma-neg_binary64
191×expm1-udef_binary64
Counts
3 → 151
Calls

3 calls:

126.0ms
(*.f64 z (log1p.f64 y))
126.0ms
(-.f64 (*.f64 z (log1p.f64 y)) t)
126.0ms
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01030
120430
2249530
3482330
4470530
5498630
000
100

simplify95.0ms (1.4%)

Algorithm
egg-herbie
Rules
485×fma-def_binary64
428×associate--r+_binary64
395×associate--l+_binary64
367×times-frac_binary64
281×sub-neg_binary64
Counts
259 → 217
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01141524
13791474
211771394
337781386
446671386
550721386

prune176.0ms (2.6%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New2170217
Fresh033
Picked011
Done022
Total2176223
Error
0.0b
Counts
223 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
36.3b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.3b
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z))))))) t)
36.7b
(*.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 z (log1p.f64 y) t))))
37.4b
(-.f64 (pow.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 2) t)
9.9b
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))
Compiler

Compiled 4077 to 1465 computations (64.1% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 z (log1p.f64 y))
0.0b
(-.f64 (*.f64 z (log1p.f64 y)) t)
0.1b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.2b
(*.f64 (sqrt.f64 x) (log.f64 y))

series233.0ms (3.4%)

Counts
2 → 49
Calls

2 calls:

198.0ms
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
35.0ms
(*.f64 (sqrt.f64 x) (log.f64 y))

rewrite59.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
760×prod-diff_binary64
222×expm1-udef_binary64
222×log1p-udef_binary64
123×add-sqr-sqrt_binary64
117×expm1-log1p-u_binary64
Counts
2 → 40
Calls

2 calls:

57.0ms
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
57.0ms
(*.f64 (sqrt.f64 x) (log.f64 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01230
124325
2293425
3502425
000
100

simplify69.0ms (1%)

Algorithm
egg-herbie
Rules
723×fma-neg_binary64
649×sub-neg_binary64
309×associate--r+_binary64
290×fma-def_binary64
263×times-frac_binary64
Counts
89 → 72
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
083732
1252704
2776682
32642679
44703679
54980679

prune135.0ms (2%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New2261227
Fresh022
Picked011
Done033
Total2267233
Error
0.0b
Counts
233 → 7
Alt Table
StatusErrorProgram
36.5b
(fma.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 x) (log.f64 y))) 3) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.1b
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
36.3b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.3b
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 y 4) z)) (*.f64 1/3 (*.f64 (pow.f64 y 3) z))))))) t)
36.7b
(*.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 z (log1p.f64 y) t))))
37.4b
(-.f64 (pow.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 2) t)
9.9b
(fma.f64 x (log.f64 y) (-.f64 (*.f64 z (log1p.f64 y)) t))
Compiler

Compiled 4866 to 1479 computations (69.6% saved)

regimes441.0ms (6.4%)

Accuracy

Total 0.0b remaining (38.3%)

Threshold costs 0.0b (38.3%)

Counts
66 → 1
Compiler

Compiled 8174 to 5223 computations (36.1% 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
01117
11817
22317
32617
42717
52717

end120.0ms (1.8%)

Compiler

Compiled 183 to 120 computations (34.4% saved)

Profiling

Loading profile data...