Details

Time bar (total: 5.8s)

analyze374.0ms (6.4%)

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
0%99.9%0.1%5
0%74.9%25.1%6
6.2%68.6%25.1%7
9.4%65.5%25.1%8
14%35.9%50.1%9
21.1%28.9%50.1%10
24.6%25.4%50.1%11
28.7%21.3%50.1%12
33.4%16.5%50.1%13
35.8%14.1%50.1%14
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample1.2s (20.5%)

Results
1.1s8254×body128valid
10.0ms38×body128invalid
1.0msbody1024valid
Compiler

Compiled 47 to 32 computations (31.9% saved)

simplify128.0ms (2.2%)

Algorithm
egg-herbie
Rules
782×fma-neg_binary64
610×unsub-neg_binary64
567×distribute-rgt-in_binary64
442×sub-neg_binary64
412×fma-def_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01118
12518
27516
325316
465416
5176716
6216716
7228416
8237516
9237416
10239116
11270116
12341716
13487716
14471316
15496716

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
Compiler

Compiled 56 to 35 computations (37.5% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))
0.1b
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
0.2b
(*.f64 (+.f64 y 1/2) (log.f64 y))

series174.0ms (3%)

Counts
3 → 60
Calls

3 calls:

83.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
83.0ms
(-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))
8.0ms
(*.f64 (+.f64 y 1/2) (log.f64 y))

rewrite87.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
556×fma-def_binary64
305×fma-neg_binary64
199×expm1-udef_binary64
199×log1p-udef_binary64
183×egg-rr
Counts
3 → 183
Calls

3 calls:

80.0ms
(-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))
80.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
80.0ms
(*.f64 (+.f64 y 1/2) (log.f64 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0936
121136
2292336
3507336
000
100

simplify140.0ms (2.4%)

Algorithm
egg-herbie
Rules
740×fma-def_binary64
684×sub-neg_binary64
510×unsub-neg_binary64
405×neg-sub0_binary64
377×+-commutative_binary64
Counts
243 → 213
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053676
1168672
2468658
31118584
42968584
53435584
64121584
74432584
84631584
94600584
105012584

prune178.0ms (3.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2067213
Fresh000
Picked101
Done000
Total2077214
Error
0.0b
Counts
214 → 7
Alt Table
StatusErrorProgram
0.9b
(-.f64 (pow.f64 (cbrt.f64 (+.f64 y (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))))) 3) z)
26.2b
(-.f64 (+.f64 (-.f64 x (pow.f64 (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) 2)) y) z)
34.6b
(-.f64 (-.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) 2) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y))) (/.f64 (*.f64 y y) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y)))) z)
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.5b
(-.f64 (+.f64 (fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x) y) z)
42.9b
(-.f64 (fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) y) z)
0.5b
(-.f64 (+.f64 (-.f64 x (pow.f64 (cbrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y))) 3)) y) z)
Compiler

Compiled 4804 to 2726 computations (43.3% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x)
0.2b
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)

series53.0ms (0.9%)

Counts
2 → 36
Calls

2 calls:

45.0ms
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x)
7.0ms
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)

rewrite55.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
597×prod-diff_binary64
402×log-prod_binary64
257×fma-def_binary64
167×expm1-udef_binary64
167×log1p-udef_binary64
Counts
2 → 84
Calls

2 calls:

53.0ms
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x)
53.0ms
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0823
117823
2231323
3513623
000
100

simplify105.0ms (1.8%)

Algorithm
egg-herbie
Rules
917×fma-neg_binary64
757×sub-neg_binary64
558×fma-def_binary64
556×neg-sub0_binary64
539×neg-mul-1_binary64
Counts
120 → 100
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
048451
1136443
2347441
3930385
42322385
54232385
64439385
74595385
84989385
95045385

prune95.0ms (1.6%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New955100
Fresh336
Picked011
Done000
Total989107
Error
0.0b
Counts
107 → 9
Alt Table
StatusErrorProgram
0.6b
(-.f64 (+.f64 (*.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) (pow.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) 2)) x) z)
34.6b
(-.f64 (-.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) 2) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y))) (/.f64 (*.f64 y y) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y)))) z)
0.6b
(-.f64 (fma.f64 (*.f64 (log.f64 y) (pow.f64 (cbrt.f64 (-.f64 -1/2 y)) 2)) (cbrt.f64 (-.f64 -1/2 y)) (+.f64 y x)) z)
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) (-.f64 -1/2 y)) (+.f64 y x)) z)
0.1b
(-.f64 (fma.f64 1 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x)) z)
0.5b
(-.f64 (+.f64 (fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x) y) z)
42.9b
(-.f64 (fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) y) z)
0.6b
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) 3) x) z)
Compiler

Compiled 2196 to 1246 computations (43.3% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 1 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
0.2b
(*.f64 (log.f64 y) (-.f64 -1/2 y))

series55.0ms (0.9%)

Counts
2 → 36
Calls

2 calls:

46.0ms
(fma.f64 1 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
9.0ms
(*.f64 (log.f64 y) (-.f64 -1/2 y))

rewrite110.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
711×prod-diff_binary64
527×fma-udef_binary64
318×fma-def_binary64
197×fma-neg_binary64
188×expm1-udef_binary64
Counts
2 → 54
Calls

2 calls:

109.0ms
(fma.f64 1 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x))
109.0ms
(*.f64 (log.f64 y) (-.f64 -1/2 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
120922
2258622
3474822
4467622
5504722
000
100

simplify146.0ms (2.5%)

Algorithm
egg-herbie
Rules
1254×unsub-neg_binary64
803×sub-neg_binary64
735×+-commutative_binary64
616×fma-def_binary64
516×distribute-neg-in_binary64
Counts
90 → 75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
050436
1143432
2373412
3979374
42573374
53514374
64247374
74671374
84927374
94925374
105000374
115873374

prune71.0ms (1.2%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New75075
Fresh077
Picked011
Done011
Total75984
Error
0.0b
Counts
84 → 9
Alt Table
StatusErrorProgram
0.6b
(-.f64 (+.f64 (*.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) (pow.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) 2)) x) z)
34.6b
(-.f64 (-.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) 2) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y))) (/.f64 (*.f64 y y) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y)))) z)
0.6b
(-.f64 (fma.f64 (*.f64 (log.f64 y) (pow.f64 (cbrt.f64 (-.f64 -1/2 y)) 2)) (cbrt.f64 (-.f64 -1/2 y)) (+.f64 y x)) z)
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) (-.f64 -1/2 y)) (+.f64 y x)) z)
0.1b
(-.f64 (fma.f64 1 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x)) z)
0.5b
(-.f64 (+.f64 (fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x) y) z)
42.9b
(-.f64 (fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) y) z)
0.6b
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) 3) x) z)
Compiler

Compiled 1576 to 884 computations (43.9% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2))
0.2b
(fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x)
0.5b
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
0.6b
(cbrt.f64 (log.f64 y))

series1.2s (20%)

Counts
4 → 60
Calls

4 calls:

368.0ms
(fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x)
351.0ms
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
347.0ms
(cbrt.f64 (log.f64 y))
97.0ms
(*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2))

rewrite90.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
490×log-prod_binary64
198×expm1-udef_binary64
198×log1p-udef_binary64
177×pow3_binary64
170×log-pow_binary64
Counts
4 → 103
Calls

4 calls:

88.0ms
(*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2))
88.0ms
(fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x)
88.0ms
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
88.0ms
(cbrt.f64 (log.f64 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01253
125635
2269433
3497933
4484633
000
100

simplify83.0ms (1.4%)

Algorithm
egg-herbie
Rules
616×fma-def_binary64
427×neg-sub0_binary64
422×neg-mul-1_binary64
396×cancel-sign-sub-inv_binary64
355×distribute-neg-in_binary64
Counts
163 → 132
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
066661
1210638
2502589
31323551
43566551
54513551
64901551

prune154.0ms (2.6%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New1601161
Fresh156
Picked011
Done022
Total1619170
Error
0.0b
Counts
170 → 9
Alt Table
StatusErrorProgram
0.4b
(-.f64 (+.f64 (fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (pow.f64 (log.f64 y) 2) 1/3)) (cbrt.f64 (log.f64 y)) x) y) z)
42.9b
(-.f64 (fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y 1/2) (log.f64 y)))) y) z)
34.6b
(-.f64 (-.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) 2) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y))) (/.f64 (*.f64 y y) (-.f64 x (fma.f64 (+.f64 y 1/2) (log.f64 y) y)))) z)
0.6b
(-.f64 (fma.f64 (*.f64 (log.f64 y) (pow.f64 (cbrt.f64 (-.f64 -1/2 y)) 2)) (cbrt.f64 (-.f64 -1/2 y)) (+.f64 y x)) z)
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) (-.f64 -1/2 y)) (+.f64 y x)) z)
0.1b
(-.f64 (fma.f64 1 (*.f64 (log.f64 y) (-.f64 -1/2 y)) (+.f64 y x)) z)
0.5b
(-.f64 (+.f64 (fma.f64 (*.f64 (neg.f64 (+.f64 y 1/2)) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) x) y) z)
0.6b
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y)) 3) x) z)
Compiler

Compiled 3611 to 1995 computations (44.8% saved)

regimes479.0ms (8.2%)

Accuracy

Total 0.1b remaining (76.6%)

Threshold costs 0.1b (76.6%)

Counts
97 → 1
Compiler

Compiled 8760 to 5906 computations (32.6% saved)

simplify5.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01016
11516
22316
32716
42916
52916

end846.0ms (14.5%)

Compiler

Compiled 229 to 149 computations (34.9% saved)

Profiling

Loading profile data...