Details

Time bar (total: 6.3s)

analyze985.0ms (15.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
9.4%90.4%0.2%10
18.7%70.2%11.1%11
21.1%66.7%12.3%12
31.6%55.9%12.5%13
34.5%52.3%13.2%14
Compiler

Compiled 14 to 9 computations (35.7% saved)

sample1.3s (20.3%)

Results
1.0s8256×body128valid
225.0ms1891×body128invalid
Compiler

Compiled 41 to 26 computations (36.6% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
22×fma-def_binary64
+-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
099
1159
2259
3489
4659
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 68 to 38 computations (44.1% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x y) z)
0.0b
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
0.1b
(*.f64 (+.f64 (*.f64 x y) z) y)

series30.0ms (0.5%)

Counts
3 → 120
Calls

3 calls:

17.0ms
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
8.0ms
(*.f64 (+.f64 (*.f64 x y) z) y)
5.0ms
(+.f64 (*.f64 x y) z)

rewrite71.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
520×log-prod_binary64
465×fma-def_binary64
231×fma-neg_binary64
188×expm1-udef_binary64
188×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0922
119922
2282722
Stop Event
node limit
Counts
3 → 138
Calls

3 calls:

67.0ms
(+.f64 (*.f64 x y) z)
67.0ms
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
67.0ms
(*.f64 (+.f64 (*.f64 x y) z) y)

simplify103.0ms (1.6%)

Algorithm
egg-herbie
Rules
538×associate-*l*_binary64
512×fma-def_binary64
434×unswap-sqr_binary64
370×sqr-pow_binary64
337×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0171061
136993
254870
386804
4189804
5519804
61792804
73127804
83333804
93546804
103766804
114074804
124474804
134984804
Stop Event
node limit
Counts
258 → 155

prune115.0ms (1.8%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1505155
Fresh101
Picked011
Done000
Total1516157
Error
0b
Counts
157 → 6
Alt Table
StatusErrorProgram
33.1b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (fma.f64 x y z)) t)
30.6b
(+.f64 (pow.f64 (sqrt.f64 (*.f64 y (fma.f64 x y z))) 2) t)
0.1b
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
0.6b
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
8.1b
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
22.0b
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z)) t)
Compiler

Compiled 2324 to 815 computations (64.9% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
0.1b
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y)
0.6b
(cbrt.f64 (fma.f64 x y z))
0.7b
(pow.f64 (cbrt.f64 (fma.f64 x y z)) 3)

series1.4s (22.3%)

Counts
4 → 156
Calls

4 calls:

1.3s
(pow.f64 (cbrt.f64 (fma.f64 x y z)) 3)
46.0ms
(cbrt.f64 (fma.f64 x y z))
14.0ms
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
10.0ms
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y)

rewrite55.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
895×prod-diff_binary64
189×expm1-udef_binary64
189×log1p-udef_binary64
106×add-sqr-sqrt_binary64
103×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01129
123029
2274129
Stop Event
node limit
Counts
4 → 101
Calls

4 calls:

53.0ms
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
53.0ms
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y)
53.0ms
(cbrt.f64 (fma.f64 x y z))
53.0ms
(pow.f64 (cbrt.f64 (fma.f64 x y z)) 3)

simplify77.0ms (1.2%)

Algorithm
egg-herbie
Rules
636×fma-def_binary64
276×unswap-sqr_binary64
273×cancel-sign-sub-inv_binary64
216×associate-*r*_binary64
212×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02244005
17773821
231213420
Stop Event
node limit
Counts
257 → 193

prune140.0ms (2.2%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1930193
Fresh044
Picked011
Done011
Total1936199
Error
0b
Counts
199 → 6
Alt Table
StatusErrorProgram
33.1b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (fma.f64 x y z)) t)
30.6b
(+.f64 (pow.f64 (sqrt.f64 (*.f64 y (fma.f64 x y z))) 2) t)
0.1b
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
0.6b
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
8.1b
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
22.0b
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z)) t)
Compiler

Compiled 4805 to 2606 computations (45.8% saved)

localize72.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
0.3b
(*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y)))
0.6b
(cbrt.f64 y)
21.6b
(cbrt.f64 (*.f64 y y))

series616.0ms (9.8%)

Counts
4 → 108
Calls

4 calls:

403.0ms
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
156.0ms
(*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y)))
29.0ms
(cbrt.f64 (*.f64 y y))
28.0ms
(cbrt.f64 y)

rewrite57.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
891×log1p-expm1-u_binary64
891×expm1-log1p-u_binary64
138×prod-diff_binary64
105×add-sqr-sqrt_binary64
97×add-cube-cbrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01141
121433
2249133
Stop Event
node limit
Counts
4 → 89
Calls

4 calls:

51.0ms
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
51.0ms
(*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y)))
51.0ms
(cbrt.f64 y)
51.0ms
(cbrt.f64 (*.f64 y y))

simplify55.0ms (0.9%)

Algorithm
egg-herbie
Rules
467×distribute-rgt-neg-in_binary64
450×fma-neg_binary64
338×cancel-sign-sub-inv_binary64
326×distribute-lft-neg-in_binary64
280×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0351313
1951245
22111226
35551119
418221119
538151119
Stop Event
node limit
Counts
197 → 117

prune101.0ms (1.6%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New1170117
Fresh033
Picked011
Done022
Total1176123
Error
0b
Counts
123 → 6
Alt Table
StatusErrorProgram
33.1b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (fma.f64 x y z)) t)
30.6b
(+.f64 (pow.f64 (sqrt.f64 (*.f64 y (fma.f64 x y z))) 2) t)
0.1b
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
0.6b
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
8.1b
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
22.0b
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z)) t)
Compiler

Compiled 1831 to 648 computations (64.6% saved)

localize20.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (*.f64 x y) 2)
0.9b
(-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z))
6.0b
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y)
17.5b
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z))

series104.0ms (1.7%)

Counts
4 → 132
Calls

4 calls:

42.0ms
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y)
35.0ms
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z))
18.0ms
(-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z))
8.0ms
(pow.f64 (*.f64 x y) 2)

rewrite76.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
506×fma-def_binary64
255×fma-neg_binary64
239×expm1-udef_binary64
239×log1p-udef_binary64
192×egg-rr
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01261
127544
2393244
Stop Event
node limit
Counts
4 → 192
Calls

4 calls:

72.0ms
(pow.f64 (*.f64 x y) 2)
72.0ms
(-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z))
72.0ms
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y)
72.0ms
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z))

simplify78.0ms (1.2%)

Algorithm
egg-herbie
Rules
679×fma-def_binary64
430×associate-*l*_binary64
407×distribute-rgt-neg-in_binary64
371×distribute-lft-neg-in_binary64
346×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0211693
1591693
21341666
34351504
420851504
547631504
Stop Event
node limit
Counts
324 → 209

prune208.0ms (3.3%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New2090209
Fresh022
Picked011
Done033
Total2096215
Error
0b
Counts
215 → 6
Alt Table
StatusErrorProgram
33.1b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (fma.f64 x y z)) t)
30.6b
(+.f64 (pow.f64 (sqrt.f64 (*.f64 y (fma.f64 x y z))) 2) t)
0.1b
(+.f64 (*.f64 (+.f64 (*.f64 x y) z) y) t)
0.6b
(+.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y z)) 3) y) t)
8.1b
(fma.f64 (*.f64 (fma.f64 x y z) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) t)
22.0b
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 z z)) y) (-.f64 (*.f64 x y) z)) t)
Compiler

Compiled 5248 to 1893 computations (63.9% saved)

regimes523.0ms (8.3%)

Accuracy

Total 0.0b remaining (53.3%)

Threshold costs 0.0b (53.3%)

Counts
78 → 1
Compiler

Compiled 6956 to 4318 computations (37.9% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
1912
Stop Event
saturated

end92.0ms (1.5%)

Compiler

Compiled 124 to 73 computations (41.1% saved)

Profiling

Loading profile data...