Details

Time bar (total: 2.5min)

analyze498.0ms (0.3%)

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 22 to 17 computations (22.7% saved)

sample2.4s (1.6%)

Results
1.1s6286×body128valid
478.0ms546×body1024valid
403.0ms822×body512valid
322.0ms600×body256valid
54.0ms320×body128invalid
2.0msbody2048valid
Compiler

Compiled 65 to 50 computations (23.1% saved)

simplify96.0ms (0.1%)

Algorithm
egg-herbie
Rules
735×unsub-neg_binary64
674×sub-neg_binary64
591×distribute-rgt-in_binary64
584×fma-def_binary64
542×fma-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01524
13123
26523
312923
430823
576523
6152723
7223123
8217223
9224923
10226423
11227423
12308423
13520223

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.1b
(-.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y)))) t)
6.2b
(-.f64 (+.f64 (*.f64 (-.f64 x 1) (log.f64 y)) (*.f64 (-.f64 z 1) (log.f64 (-.f64 1 y)))) t)
Compiler

Compiled 116 to 85 computations (26.7% saved)

localize13.0ms (0%)

Local error

Found 3 expressions with local error:

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

series441.0ms (0.3%)

Counts
3 → 108
Calls

3 calls:

235.0ms
(-.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y)))) t)
157.0ms
(fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y))))
49.0ms
(*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y)))

rewrite71.0ms (0%)

Algorithm
batch-egg-rewrite
Rules
872×prod-diff_binary64
152×add-sqr-sqrt_binary64
145×expm1-log1p-u_binary64
144×log1p-expm1-u_binary64
140×add-log-exp_binary64
Counts
3 → 98
Calls

3 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01454
129848
2343848
3502548
000
100

simplify92.0ms (0.1%)

Algorithm
egg-herbie
Rules
706×sub-neg_binary64
543×distribute-neg-in_binary64
417×cancel-sign-sub-inv_binary64
334×associate-+r+_binary64
297×associate-+l+_binary64
Counts
206 → 191
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02223405
18223040
231813018
352953018

prune194.0ms (0.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1856191
Fresh101
Picked011
Done000
Total1867193
Error
0.1b
Counts
193 → 7
Alt Table
StatusErrorProgram
27.4b
(-.f64 (expm1.f64 (log1p.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))))) t)
6.2b
(-.f64 (-.f64 (+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
26.4b
(-.f64 (pow.f64 (sqrt.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y)))) 2) t)
0.1b
(-.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y)))) t)
36.1b
(*.f64 (-.f64 (pow.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (+.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) t)))
31.3b
(-.f64 (cbrt.f64 (pow.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) 3)) t)
8.4b
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y)))) 3) t)
Compiler

Compiled 5464 to 3204 computations (41.4% saved)

localize12.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x))
0.0b
(-.f64 (+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y)))
0.3b
(*.f64 (log.f64 y) x)
4.0b
(log.f64 (-.f64 1 y))

series632.0ms (0.4%)

Counts
4 → 56
Calls

4 calls:

287.0ms
(-.f64 (+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y)))
196.0ms
(*.f64 (log.f64 y) x)
146.0ms
(+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x))
3.0ms
(log.f64 (-.f64 1 y))

rewrite88.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
512×fma-neg_binary64
267×expm1-udef_binary64
267×log1p-udef_binary64
148×add-sqr-sqrt_binary64
144×log1p-expm1-u_binary64
Counts
4 → 141
Calls

4 calls:

84.0ms
(+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x))
84.0ms
(-.f64 (+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y)))
84.0ms
(*.f64 (log.f64 y) x)
84.0ms
(log.f64 (-.f64 1 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01353
129148
2404948
3539048
000
100

simplify76.0ms (0.1%)

Algorithm
egg-herbie
Rules
936×fma-neg_binary64
418×sub-neg_binary64
403×distribute-neg-in_binary64
263×cancel-sign-sub-inv_binary64
253×distribute-rgt-in_binary64
Counts
197 → 220
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01751350
16111206
221751160
345751154
452381154

prune282.0ms (0.2%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2623265
Fresh235
Picked011
Done011
Total2648272
Error
0.1b
Counts
272 → 8
Alt Table
StatusErrorProgram
27.4b
(-.f64 (expm1.f64 (log1p.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))))) t)
6.2b
(-.f64 (-.f64 (+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
32.9b
(-.f64 (fma.f64 (sqrt.f64 (fma.f64 (log1p.f64 (neg.f64 y)) z (*.f64 (log.f64 y) x))) (sqrt.f64 (fma.f64 (log1p.f64 (neg.f64 y)) z (*.f64 (log.f64 y) x))) (neg.f64 (log.f64 (*.f64 y (-.f64 1 y))))) t)
0.1b
(-.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y)))) t)
28.8b
(-.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 (log1p.f64 (neg.f64 y)) z (*.f64 (log.f64 y) x)) 3)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
36.1b
(*.f64 (-.f64 (pow.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (+.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) t)))
8.4b
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y)))) 3) t)
0.3b
(-.f64 (-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) (pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
Compiler

Compiled 8265 to 4114 computations (50.2% saved)

localize21.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) (pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2))
0.5b
(pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2)
0.6b
(cbrt.f64 (log1p.f64 (neg.f64 y)))
4.0b
(log.f64 (-.f64 1 y))

series35.0ms (0%)

Counts
3 → 36
Calls

3 calls:

18.0ms
(pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2)
14.0ms
(cbrt.f64 (log1p.f64 (neg.f64 y)))
3.0ms
(*.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) (pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2))

rewrite81.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
447×expm1-log1p-u_binary64
446×log1p-expm1-u_binary64
404×prod-diff_binary64
339×unpow-prod-down_binary64
230×log-prod_binary64
Counts
3 → 105
Calls

3 calls:

79.0ms
(*.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) (pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2))
79.0ms
(pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2)
79.0ms
(cbrt.f64 (log1p.f64 (neg.f64 y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0822
114316
2120716
3478116
4516716
000
100

simplify77.0ms (0.1%)

Algorithm
egg-herbie
Rules
548×times-frac_binary64
352×cancel-sign-sub-inv_binary64
347×fma-neg_binary64
235×neg-mul-1_binary64
231×fma-def_binary64
Counts
141 → 177
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02221880
17281612
224481468
346111399
450391399

prune413.0ms (0.3%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New2930293
Fresh055
Picked011
Done022
Total2938301
Error
0.1b
Counts
301 → 8
Alt Table
StatusErrorProgram
27.4b
(-.f64 (expm1.f64 (log1p.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))))) t)
6.2b
(-.f64 (-.f64 (+.f64 (*.f64 (log.f64 (-.f64 1 y)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
32.9b
(-.f64 (fma.f64 (sqrt.f64 (fma.f64 (log1p.f64 (neg.f64 y)) z (*.f64 (log.f64 y) x))) (sqrt.f64 (fma.f64 (log1p.f64 (neg.f64 y)) z (*.f64 (log.f64 y) x))) (neg.f64 (log.f64 (*.f64 y (-.f64 1 y))))) t)
0.1b
(-.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 (neg.f64 y)))) t)
28.8b
(-.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 (log1p.f64 (neg.f64 y)) z (*.f64 (log.f64 y) x)) 3)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
36.1b
(*.f64 (-.f64 (pow.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) 2) (*.f64 t t)) (/.f64 1 (+.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))) t)))
8.4b
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y)))) 3) t)
0.3b
(-.f64 (-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) (pow.f64 (cbrt.f64 (log1p.f64 (neg.f64 y))) 2)) z) (*.f64 (log.f64 y) x)) (+.f64 (log.f64 (-.f64 1 y)) (log.f64 y))) t)
Compiler

Compiled 12084 to 6673 computations (44.8% saved)

localize14.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 z 1) (log1p.f64 y))
0.2b
(fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y)))
0.5b
(cbrt.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y))))
0.7b
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 x 1) (log.f64 y) (*.f64 (-.f64 z 1) (log1p.f64 y)))) 3)

series2.4min (96.3%)

Profiling

Loading profile data...