Details

Time bar (total: 4.5s)

analyze4.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
75%25%0%4
87.5%12.5%0%5
93.7%6.2%0%6
96.8%3.1%0%7
98.4%1.6%0%8
99.2%0.8%0%9
99.6%0.4%0%10
99.8%0.2%0%11
99.9%0.1%0%12
99.9%0%0%13
99.9%0%0.1%14
Compiler

Compiled 10 to 5 computations (50% saved)

sample741.0ms (16.4%)

Results
667.0ms8256×body128valid
Compiler

Compiled 29 to 14 computations (51.7% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-*r*_binary64
count-2_binary64
associate-*l*_binary64
distribute-rgt-out_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054
1114
2144
3154
4154

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(hypot.f64 x x)
Compiler

Compiled 20 to 9 computations (55% saved)

localize2.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(hypot.f64 x x)

series4.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

3.0ms
(hypot.f64 x x)

rewrite141.0ms (3.1%)

Algorithm
egg-rewrite
Rules
40×egg
Counts
1 → 40
Calls

1 calls:

140.0ms
(hypot.f64 x x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034
1604
26604
347454
454284

simplify12.0ms (0.3%)

Algorithm
egg-herbie
Rules
38×fma-def_binary64
sub-neg_binary64
+-commutative_binary64
*-commutative_binary64
distribute-lft-in_binary64
Counts
52 → 43
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0780
11280
22480
32580
42980
54780
65880
76380
87580
97280
105880

prune105.0ms (2.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New38543
Fresh000
Picked011
Done000
Total38644
Error
0.0b
Counts
44 → 6
Alt Table
StatusErrorProgram
0.1b
(hypot.f64 x x)
1.7b
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x x))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x x))) 3))
0.6b
(pow.f64 (sqrt.f64 (hypot.f64 x x)) 2)
32.9b
(*.f64 (sqrt.f64 x) (pow.f64 (+.f64 x x) 1/2))
30.8b
(neg.f64 (*.f64 (sqrt.f64 2) x))
32.2b
(*.f64 (sqrt.f64 2) x)
Compiler

Compiled 469 to 228 computations (51.4% saved)

localize4.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(hypot.f64 x x)
0.1b
(sqrt.f64 (hypot.f64 x x))
0.5b
(pow.f64 (sqrt.f64 (hypot.f64 x x)) 2)

series26.0ms (0.6%)

Counts
2 → 0
Calls

2 calls:

17.0ms
(pow.f64 (sqrt.f64 (hypot.f64 x x)) 2)
9.0ms
(sqrt.f64 (hypot.f64 x x))

rewrite156.0ms (3.5%)

Algorithm
egg-rewrite
Rules
48×egg
48×egg
Counts
2 → 96
Calls

2 calls:

81.0ms
(pow.f64 (sqrt.f64 (hypot.f64 x x)) 2)
73.0ms
(sqrt.f64 (hypot.f64 x x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
064
11064
210324
345094
455474
046
1796
28506
345716
453926

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Counts
96 → 95
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
100

prune69.0ms (1.5%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1362138
Fresh134
Picked101
Done011
Total1386144
Error
0.0b
Counts
144 → 6
Alt Table
StatusErrorProgram
0.1b
(hypot.f64 x x)
1.0b
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2) 2)
32.9b
(*.f64 (sqrt.f64 x) (pow.f64 (+.f64 x x) 1/2))
30.8b
(neg.f64 (*.f64 (sqrt.f64 2) x))
32.2b
(*.f64 (sqrt.f64 2) x)
23.6b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 5) 1/2) (pow.f64 (hypot.f64 x x) 1/6))
Compiler

Compiled 1579 to 842 computations (46.7% saved)

localize7.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (hypot.f64 x x) 1/4)
0.1b
(hypot.f64 x x)
0.5b
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2) 2)
0.5b
(pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2)

series629.0ms (13.9%)

Counts
3 → 36
Calls

3 calls:

219.0ms
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2) 2)
210.0ms
(pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2)
199.0ms
(pow.f64 (hypot.f64 x x) 1/4)

rewrite171.0ms (3.8%)

Algorithm
egg-rewrite
Rules
58×egg
54×egg
46×egg
Counts
3 → 158
Calls

3 calls:

75.0ms
(pow.f64 (hypot.f64 x x) 1/4)
48.0ms
(pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2)
45.0ms
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2) 2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
077
11526
213826
350476
084
11744
214124
352274
057
11087
210937
345877
456667

simplify86.0ms (1.9%)

Algorithm
egg-herbie
Rules
845×fma-neg_binary64
483×fma-def_binary64
395×associate-+l+_binary64
393×*-commutative_binary64
342×associate-+r+_binary64
Counts
194 → 170
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
029648
168648
2114564
3379348
41568312
53697312
64996312
74896312

prune94.0ms (2.1%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2130213
Fresh044
Picked011
Done011
Total2136219
Error
0.0b
Counts
219 → 6
Alt Table
StatusErrorProgram
0.1b
(hypot.f64 x x)
1.0b
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2) 2)
32.9b
(*.f64 (sqrt.f64 x) (pow.f64 (+.f64 x x) 1/2))
30.8b
(neg.f64 (*.f64 (sqrt.f64 2) x))
32.2b
(*.f64 (sqrt.f64 2) x)
23.6b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 5) 1/2) (pow.f64 (hypot.f64 x x) 1/6))
Compiler

Compiled 2885 to 1685 computations (41.6% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 (hypot.f64 x x))
0.6b
(pow.f64 (cbrt.f64 (hypot.f64 x x)) 5)
4.0b
(pow.f64 (hypot.f64 x x) 1/6)
21.2b
(pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 5) 1/2)

series1.5s (32.8%)

Counts
4 → 48
Calls

4 calls:

820.0ms
(pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 5) 1/2)
252.0ms
(pow.f64 (cbrt.f64 (hypot.f64 x x)) 5)
206.0ms
(cbrt.f64 (hypot.f64 x x))
201.0ms
(pow.f64 (hypot.f64 x x) 1/6)

rewrite272.0ms (6%)

Algorithm
egg-rewrite
Rules
53×egg
46×egg
41×egg
34×egg
Counts
4 → 174
Calls

4 calls:

77.0ms
(pow.f64 (hypot.f64 x x) 1/6)
77.0ms
(pow.f64 (cbrt.f64 (hypot.f64 x x)) 5)
71.0ms
(cbrt.f64 (hypot.f64 x x))
45.0ms
(pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 5) 1/2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
089
11687
216717
348627
057
11077
210997
344837
455887
069
11247
213097
349217
450407
046
1776
28456
345656
453856

simplify116.0ms (2.6%)

Algorithm
egg-herbie
Rules
390×fma-def_binary64
232×distribute-rgt-in_binary64
211×associate-*l*_binary64
205×exp-diff_binary64
196×associate-*r*_binary64
Counts
222 → 189
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
036828
182828
2124672
3293480
4732480
52070476
64494476
74814476
84992476
94815476

prune96.0ms (2.1%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1881189
Fresh033
Picked011
Done022
Total1887195
Error
0b
Counts
195 → 7
Alt Table
StatusErrorProgram
41.3b
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 10))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x x) 5/3)))) (pow.f64 (hypot.f64 x x) 1/6))
0.1b
(hypot.f64 x x)
1.0b
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 x x) 1/4) 2) 2)
32.9b
(*.f64 (sqrt.f64 x) (pow.f64 (+.f64 x x) 1/2))
30.8b
(neg.f64 (*.f64 (sqrt.f64 2) x))
32.2b
(*.f64 (sqrt.f64 2) x)
23.6b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x x)) 5) 1/2) (pow.f64 (hypot.f64 x x) 1/6))
Compiler

Compiled 3682 to 2169 computations (41.1% saved)

regimes187.0ms (4.1%)

Accuracy

Total 0.1b remaining (70.6%)

Threshold costs 0.1b (70.6%)

Counts
56 → 1
Compiler

Compiled 2377 to 1750 computations (26.4% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034
134

end84.0ms (1.9%)

Compiler

Compiled 80 to 54 computations (32.5% saved)

Profiling

Loading profile data...