Details

Time bar (total: 6.4s)

analyze441.0ms (6.9%)

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.3s (35.6%)

Results
977.0ms6121×body128valid
485.0ms648×body1024valid
422.0ms851×body512valid
242.0ms610×body256valid
46.0ms288×body128invalid
27.0ms26×body2048valid
Compiler

Compiled 53 to 38 computations (28.3% saved)

simplify38.0ms (0.6%)

Algorithm
egg-herbie
Rules
821×fma-neg_binary64
312×fma-def_binary64
173×distribute-rgt-in_binary64
132×unsub-neg_binary64
123×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01318
12517
24617
37517
412317
520117
637917
772117
8127917
9201217
10269717
11297317
12298917
13298917
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 58 to 37 computations (36.2% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series542.0ms (8.5%)

Counts
3 → 108
Calls

3 calls:

208.0ms
(-.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y)))) t)
191.0ms
(*.f64 z (log1p.f64 (neg.f64 y)))
142.0ms
(fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 (neg.f64 y))))

rewrite59.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
714×prod-diff_binary64
274×fma-def_binary64
195×expm1-udef_binary64
195×log1p-udef_binary64
149×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01139
122733
2294433
Stop Event
node limit
Counts
3 → 127
Calls

3 calls:

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

simplify46.0ms (0.7%)

Algorithm
egg-herbie
Rules
681×fma-def_binary64
574×associate--r+_binary64
371×distribute-neg-in_binary64
243×sub-neg_binary64
241×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01411970
14871834
215511770
Stop Event
node limit
Counts
235 → 207

prune141.0ms (2.2%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New19710207
Fresh000
Picked101
Done000
Total19810208
Error
0.1b
Counts
208 → 10
Alt Table
StatusErrorProgram
36.0b
(fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (-.f64 (*.f64 z (log1p.f64 y)) t))
29.8b
(fma.f64 (log1p.f64 (neg.f64 y)) z (neg.f64 t))
37.7b
(-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 (*.f64 z (log1p.f64 y)) 3)) (fma.f64 (*.f64 x (log.f64 y)) (*.f64 x (log.f64 y)) (-.f64 (pow.f64 (*.f64 z (log1p.f64 y)) 2) (*.f64 (*.f64 x (log.f64 y)) (*.f64 z (log1p.f64 y)))))) t)
9.7b
(-.f64 (*.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 2)) t)
9.6b
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
0.3b
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)
37.3b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (*.f64 z (log1p.f64 y)) t))
38.6b
(/.f64 1 (/.f64 (fma.f64 x (log.f64 y) (fma.f64 z (log1p.f64 y) t)) (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 2) (*.f64 t t))))
33.5b
(-.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 3)) t)
9.7b
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 3) t)
Compiler

Compiled 4501 to 1654 computations (63.3% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)
0.3b
(*.f64 (log.f64 y) x)

series280.0ms (4.4%)

Counts
2 → 56
Calls

2 calls:

175.0ms
(*.f64 (log.f64 y) x)
105.0ms
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)

rewrite61.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
697×fma-def_binary64
398×fma-neg_binary64
214×expm1-udef_binary64
214×log1p-udef_binary64
153×egg-rr
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01021
122919
2325419
Stop Event
node limit
Counts
2 → 153
Calls

2 calls:

58.0ms
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)
58.0ms
(*.f64 (log.f64 y) x)

simplify126.0ms (2%)

Algorithm
egg-herbie
Rules
2595×fma-neg_binary64
502×fma-def_binary64
411×unsub-neg_binary64
407×sub-neg_binary64
266×distribute-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
034635
195635
2217595
3519595
41339595
53266595
64018595
74649595
84823595
94876595
104887595
114940595
124961595
134961595
144961595
Stop Event
node limit
Counts
209 → 172

prune145.0ms (2.3%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1684172
Fresh369
Picked011
Done000
Total17111182
Error
0.1b
Counts
182 → 11
Alt Table
StatusErrorProgram
29.8b
(fma.f64 (log1p.f64 (neg.f64 y)) z (neg.f64 t))
32.4b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (fma.f64 y z t)))
9.7b
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 3) t)
0.8b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
37.7b
(-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 (*.f64 z (log1p.f64 y)) 3)) (fma.f64 (*.f64 x (log.f64 y)) (*.f64 x (log.f64 y)) (-.f64 (pow.f64 (*.f64 z (log1p.f64 y)) 2) (*.f64 (*.f64 x (log.f64 y)) (*.f64 z (log1p.f64 y)))))) t)
9.7b
(-.f64 (*.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y)))) 2)) t)
17.8b
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 (fma.f64 y z t)))
32.0b
(-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (*.f64 y z)) t)
0.3b
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)
38.6b
(/.f64 1 (/.f64 (fma.f64 x (log.f64 y) (fma.f64 z (log1p.f64 y) t)) (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 2) (*.f64 t t))))
33.5b
(-.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 3)) t)
Compiler

Compiled 3597 to 931 computations (74.1% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
0.2b
(*.f64 (cbrt.f64 (log.f64 y)) x)
0.5b
(cbrt.f64 (log.f64 y))
0.5b
(pow.f64 (cbrt.f64 (log.f64 y)) 2)

series743.0ms (11.7%)

Counts
4 → 96
Calls

4 calls:

350.0ms
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
247.0ms
(*.f64 (cbrt.f64 (log.f64 y)) x)
77.0ms
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
70.0ms
(cbrt.f64 (log.f64 y))

rewrite73.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
530×log-prod_binary64
236×prod-diff_binary64
205×expm1-udef_binary64
205×log1p-udef_binary64
189×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01346
125934
2303932
Stop Event
node limit
Counts
4 → 155
Calls

4 calls:

69.0ms
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
69.0ms
(*.f64 (cbrt.f64 (log.f64 y)) x)
69.0ms
(cbrt.f64 (log.f64 y))
69.0ms
(pow.f64 (cbrt.f64 (log.f64 y)) 2)

simplify52.0ms (0.8%)

Algorithm
egg-herbie
Rules
675×fma-neg_binary64
486×unswap-sqr_binary64
374×associate-*l*_binary64
336×associate-*r*_binary64
228×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
051991
1147983
2330983
3979983
43410983
Stop Event
node limit
Counts
251 → 184

prune175.0ms (2.7%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New2095214
Fresh459
Picked011
Done011
Total21312225
Error
0.0b
Counts
225 → 12
Alt Table
StatusErrorProgram
17.8b
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 (fma.f64 y z t)))
0.9b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 3) x) (neg.f64 (fma.f64 y z t)))
0.6b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (log.f64 (/.f64 1 y)) 1/3)) x) (neg.f64 (fma.f64 y z t)))
29.8b
(fma.f64 (log1p.f64 (neg.f64 y)) z (neg.f64 t))
32.4b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (fma.f64 y z t)))
0.5b
(fma.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
0.3b
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)
34.7b
(+.f64 (fma.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) 2)) (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (fma.f64 y z t))) (pow.f64 (cbrt.f64 (fma.f64 y z t)) 2)))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 y z t)))) (pow.f64 (cbrt.f64 (fma.f64 y z t)) 2) (*.f64 (neg.f64 (cbrt.f64 (fma.f64 y z t))) (pow.f64 (cbrt.f64 (fma.f64 y z t)) 2))))
32.0b
(-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (*.f64 y z)) t)
0.6b
(fma.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 1/3) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
33.5b
(-.f64 (cbrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (*.f64 z (log1p.f64 y))) 3)) t)
0.8b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
Compiler

Compiled 6342 to 1974 computations (68.9% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cbrt.f64 (log.f64 y)) x)
0.5b
(cbrt.f64 (log.f64 y))
0.5b
(cbrt.f64 (pow.f64 (log.f64 y) 2))
0.5b
(pow.f64 (log.f64 y) 2)

series87.0ms (1.4%)

Counts
2 → 20
Calls

2 calls:

64.0ms
(cbrt.f64 (pow.f64 (log.f64 y) 2))
23.0ms
(pow.f64 (log.f64 y) 2)

rewrite42.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
409×log1p-expm1-u_binary64
409×expm1-log1p-u_binary64
358×pow1_binary64
281×unpow-prod-down_binary64
209×log-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0614
111714
2122514
Stop Event
node limit
Counts
2 → 69
Calls

2 calls:

41.0ms
(cbrt.f64 (pow.f64 (log.f64 y) 2))
41.0ms
(pow.f64 (log.f64 y) 2)

simplify29.0ms (0.4%)

Algorithm
egg-herbie
Rules
650×fma-neg_binary64
545×unswap-sqr_binary64
499×associate-*l*_binary64
428×fma-def_binary64
241×unsub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
019160
148144
282144
3242144
4864144
53448144
Stop Event
node limit
Counts
89 → 75

prune143.0ms (2.2%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1235128
Fresh459
Picked101
Done112
Total12911140
Error
0b
Counts
140 → 11
Alt Table
StatusErrorProgram
29.8b
(fma.f64 (log1p.f64 (neg.f64 y)) z (neg.f64 t))
32.4b
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (fma.f64 y z t)))
0.8b
(fma.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) 3) (neg.f64 (fma.f64 y z t)))
0.5b
(fma.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (*.f64 (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 y)))) (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 y)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 y)))))) x) (neg.f64 (fma.f64 y z t)))
34.7b
(+.f64 (fma.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) 2)) (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (fma.f64 y z t))) (pow.f64 (cbrt.f64 (fma.f64 y z t)) 2)))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 y z t)))) (pow.f64 (cbrt.f64 (fma.f64 y z t)) 2) (*.f64 (neg.f64 (cbrt.f64 (fma.f64 y z t))) (pow.f64 (cbrt.f64 (fma.f64 y z t)) 2))))
32.0b
(-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (*.f64 y z)) t)
0.3b
(-.f64 (-.f64 (*.f64 (log.f64 y) x) (*.f64 y z)) t)
0.6b
(fma.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 1/3) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
25.0b
(fma.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (cbrt.f64 (*.f64 (pow.f64 x 3) (log.f64 y))) (neg.f64 (fma.f64 y z t)))
0.6b
(fma.f64 (cbrt.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 y) 2))) 1)) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (fma.f64 y z t)))
0.5b
(fma.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (*.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (log.f64 (/.f64 1 y)) 1/3)) x) (neg.f64 (fma.f64 y z t)))
Compiler

Compiled 2886 to 1098 computations (62% saved)

regimes636.0ms (10%)

Accuracy

Total 0.1b remaining (75.5%)

Threshold costs 0.1b (75.5%)

Counts
89 → 1
Compiler

Compiled 11282 to 6885 computations (39% saved)

simplify5.0ms (0.1%)

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
Stop Event
saturated

end187.0ms (2.9%)

Compiler

Compiled 311 to 189 computations (39.2% saved)

Profiling

Loading profile data...