Details

Time bar (total: 8.4s)

analyze318.0ms (3.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%74.9%25.1%3
0%74.9%25.1%4
0%62.4%37.6%5
0%56.2%43.8%6
6.2%49.9%43.8%7
9.4%43.7%47%8
14%37.4%48.5%9
21.1%30.4%48.5%10
24.6%26.1%49.3%11
28.7%21.6%49.7%12
33.4%16.9%49.7%13
35.8%14.3%49.9%14
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample1.3s (16%)

Results
1.1s8254×body128valid
6.0ms61×body128invalid
1.0msbody512valid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify149.0ms (1.8%)

Algorithm
egg-herbie
Rules
3353×fma-neg_binary64
476×distribute-rgt-in_binary64
425×unsub-neg_binary64
361×fma-def_binary64
308×distribute-lft-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
11612
23612
37612
413112
523112
634212
767812
8136512
9206812
10235612
11251812
12262712
13266012
14266412
15286612
16276712
17277912
18279112
19279912
20279912
21531112

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.1b
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)
Compiler

Compiled 33 to 21 computations (36.4% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series384.0ms (4.6%)

Counts
3 → 96
Calls

3 calls:

207.0ms
(*.f64 x (log.f64 y))
94.0ms
(-.f64 (*.f64 x (log.f64 y)) z)
83.0ms
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)

rewrite81.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
503×fma-def_binary64
463×log-prod_binary64
303×fma-neg_binary64
272×egg-rr
172×expm1-udef_binary64
Counts
3 → 272
Calls

3 calls:

73.0ms
(-.f64 (*.f64 x (log.f64 y)) z)
73.0ms
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)
73.0ms
(*.f64 x (log.f64 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0827
117927
2244227
3509327
000
100

simplify251.0ms (3%)

Algorithm
egg-herbie
Rules
3264×fma-neg_binary64
799×associate--r-_binary64
593×fma-def_binary64
426×sub-neg_binary64
392×unsub-neg_binary64
Counts
368 → 288
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034813
193813
2205813
3372813
4894813
51824813
61860813
71754813
81856813
91896813
101906813
111959813
121920813
131920813
144536813
155250813

prune205.0ms (2.4%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New2826288
Fresh000
Picked011
Done000
Total2827289
Error
0.0b
Counts
289 → 7
Alt Table
StatusErrorProgram
29.6b
(-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 2) z) y)
0.4b
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (+.f64 y z)))
35.0b
(fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) z)) (neg.f64 y))
26.1b
(fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))
0.1b
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)
Compiler

Compiled 4862 to 1378 computations (71.7% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series2.9s (34%)

Counts
3 → 84
Calls

3 calls:

1.5s
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
701.0ms
(cbrt.f64 (*.f64 x (log.f64 y)))
695.0ms
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2)

rewrite58.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
528×log-prod_binary64
287×fma-def_binary64
200×expm1-udef_binary64
200×log1p-udef_binary64
178×log-pow_binary64
Counts
3 → 91
Calls

3 calls:

56.0ms
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
56.0ms
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2)
56.0ms
(cbrt.f64 (*.f64 x (log.f64 y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01246
125229
2274227
3500627
000
100

simplify137.0ms (1.6%)

Algorithm
egg-herbie
Rules
1120×prod-exp_binary64
925×unswap-sqr_binary64
627×fma-neg_binary64
436×fma-def_binary64
175×times-frac_binary64
Counts
175 → 123
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0802014
12251547
24671366
31497944
44529936
53556936
64431936
75885936

prune210.0ms (2.5%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1952197
Fresh145
Picked011
Done011
Total1968204
Error
0.0b
Counts
204 → 8
Alt Table
StatusErrorProgram
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (cbrt.f64 (log.f64 y))) (neg.f64 (+.f64 y z)))
26.1b
(fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))
29.6b
(-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 2) z) y)
0.4b
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (+.f64 y z)))
35.0b
(fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) z)) (neg.f64 y))
0.4b
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.1b
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)
Compiler

Compiled 3971 to 1315 computations (66.9% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (cbrt.f64 (log.f64 y)))
0.6b
(cbrt.f64 (log.f64 y))
0.6b
(cbrt.f64 x)
0.6b
(cbrt.f64 (*.f64 x (log.f64 y)))

series1.6s (18.7%)

Counts
3 → 48
Calls

3 calls:

1.1s
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (cbrt.f64 (log.f64 y)))
425.0ms
(cbrt.f64 (log.f64 y))
28.0ms
(cbrt.f64 x)

rewrite47.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
745×log1p-expm1-u_binary64
745×expm1-log1p-u_binary64
152×expm1-udef_binary64
152×log1p-udef_binary64
99×associate-*r*_binary64
Counts
3 → 56
Calls

3 calls:

46.0ms
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (cbrt.f64 (log.f64 y)))
46.0ms
(cbrt.f64 (log.f64 y))
46.0ms
(cbrt.f64 x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01026
118617
2202517
3508217
000
100

simplify118.0ms (1.4%)

Algorithm
egg-herbie
Rules
721×associate-*l*_binary64
644×fma-neg_binary64
398×exp-sum_binary64
359×log-prod_binary64
269×unsub-neg_binary64
Counts
104 → 68
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
053604
1145572
2283500
3844416
43033344
54347344
64318344
74703344
84989344
94859344

prune134.0ms (1.6%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New1373140
Fresh145
Picked011
Done022
Total13810148
Error
0.0b
Counts
148 → 10
Alt Table
StatusErrorProgram
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (cbrt.f64 (log.f64 y))) (neg.f64 (+.f64 y z)))
26.1b
(fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))
0.5b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 3) (cbrt.f64 x)) (cbrt.f64 (log.f64 y))) (neg.f64 (+.f64 y z)))
0.1b
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)
26.2b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (*.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) (cbrt.f64 (pow.f64 (log.f64 y) 2/3)))) (neg.f64 (+.f64 y z)))
26.1b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (pow.f64 (log.f64 y) 1/3)) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (+.f64 y z)))
35.0b
(fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) z)) (neg.f64 y))
0.4b
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
Compiler

Compiled 3927 to 1041 computations (73.5% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

prune130.0ms (1.5%)

Pruning

11 alts after pruning (7 fresh and 4 done)

PrunedKeptTotal
New1133116
Fresh246
Picked011
Done033
Total11511126
Error
0.0b
Counts
126 → 11
Alt Table
StatusErrorProgram
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (cbrt.f64 (log.f64 y))) (neg.f64 (+.f64 y z)))
26.1b
(fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))
0.5b
(fma.f64 (*.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 3)) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.5b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 3) (cbrt.f64 x)) (cbrt.f64 (log.f64 y))) (neg.f64 (+.f64 y z)))
0.1b
(-.f64 (-.f64 (*.f64 x (log.f64 y)) z) y)
26.2b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (*.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 x)) (*.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) (cbrt.f64 (pow.f64 (log.f64 y) 2/3)))) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (+.f64 y z)))
0.5b
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 x)) 3) (cbrt.f64 (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
0.4b
(fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 (+.f64 y z)))
11.4b
(fma.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 (log.f64 y))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 4)) (neg.f64 (+.f64 y z)))
Compiler

Compiled 2836 to 968 computations (65.9% saved)

regimes217.0ms (2.6%)

Accuracy

Total 0.1b remaining (62.3%)

Threshold costs 0.1b (62.3%)

Counts
57 → 1
Compiler

Compiled 4106 to 2656 computations (35.3% saved)

simplify2.0ms (0%)

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
0812
11312
22112
32512
42712
52712

end153.0ms (1.8%)

Compiler

Compiled 263 to 162 computations (38.4% saved)

Profiling

Loading profile data...