Details

Time bar (total: 2.6s)

analyze92.0ms (3.5%)

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
25%74.9%0.1%5
25%50%25.1%6
25%31.2%43.8%7
31.2%25%43.8%8
39%17.2%43.8%9
42.9%13.3%43.8%10
47.2%9%43.8%11
49.4%6.8%43.8%12
51.6%4.6%43.8%13
52.7%3.5%43.8%14
Compiler

Compiled 18 to 8 computations (55.6% saved)

sample802.0ms (30.7%)

Results
771.0ms8256×body128valid
1.0msbody128invalid
Compiler

Compiled 53 to 23 computations (56.6% saved)

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Rules
28×fma-def_binary64
*-commutative_binary64
associate-+l+_binary64
associate-*r*_binary64
+-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0820
11515
23011
34911
46311
56711
66511

prune3.0ms (0.1%)

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 (*.f64 y 3) (*.f64 x x))
0.1b
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
Compiler

Compiled 79 to 36 computations (54.4% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series18.0ms (0.7%)

Counts
2 → 48
Calls

2 calls:

9.0ms
(+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y))
9.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))

rewrite70.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
186×egg-rr
Counts
2 → 186
Calls

2 calls:

66.0ms
((+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y)) (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)))
0.0ms
()
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0834
119023
2263923
3502123
000
100

simplify163.0ms (6.3%)

Algorithm
egg-herbie
Rules
1078×sqr-pow_binary64
786×cube-prod_binary64
770×fabs-mul_binary64
484×unswap-sqr_binary64
392×pow-sqr_binary64
Counts
234 → 195
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011462
125462
244462
382462
4177462
5445462
6653462
71114462
81161462
91353462
101558462
111852462
122136462
132557462
143190462
153504462
163856462
174010462
184078462
194120462
204917462
214889462

prune112.0ms (4.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1932195
Fresh011
Picked101
Done000
Total1943197
Error
0b
Counts
197 → 3
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y (*.f64 y 3) (*.f64 x x))
0.3b
(pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2)
0.0b
(fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2))
Compiler

Compiled 3607 to 1563 computations (56.7% saved)

localize6.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 x y)
0.0b
(pow.f64 (hypot.f64 x y) 2)
0.0b
(fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2))

series111.0ms (4.2%)

Counts
3 → 72
Calls

3 calls:

50.0ms
(pow.f64 (hypot.f64 x y) 2)
49.0ms
(fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2))
11.0ms
(hypot.f64 x y)

rewrite47.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
66×egg-rr
Counts
3 → 66
Calls

2 calls:

45.0ms
((fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (hypot.f64 x y) 2) (hypot.f64 x y))
0.0ms
()
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0825
117124
2175224
3543924
000
100

simplify61.0ms (2.3%)

Algorithm
egg-herbie
Rules
755×fma-neg_binary64
537×cancel-sign-sub-inv_binary64
354×neg-mul-1_binary64
312×distribute-rgt-neg-in_binary64
310×distribute-lft-neg-in_binary64
Counts
138 → 105
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
053923
1167869
2510853
32182853
44421853
55037853

prune57.0ms (2.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1050105
Fresh022
Picked011
Done000
Total1053108
Error
0b
Counts
108 → 3
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y (*.f64 y 3) (*.f64 x x))
0.3b
(pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2)
0.0b
(fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2))
Compiler

Compiled 1747 to 828 computations (52.6% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (*.f64 y 3) (*.f64 x x))

series10.0ms (0.4%)

Counts
1 → 24
Calls

1 calls:

10.0ms
(fma.f64 y (*.f64 y 3) (*.f64 x x))

rewrite69.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
29×egg-rr
Counts
1 → 29
Calls

2 calls:

68.0ms
((fma.f64 y (*.f64 y 3) (*.f64 x x)))
0.0ms
()
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
114011
2150711
3490311
4511411
000
100

simplify151.0ms (5.8%)

Algorithm
egg-herbie
Rules
1238×sqr-pow_binary64
688×fabs-mul_binary64
666×cube-prod_binary64
611×associate-*l*_binary64
532×pow-sqr_binary64
Counts
53 → 35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09231
120231
233231
361231
4130231
5322231
61004231
71111231
81273231
91486231
101757231
112105231
122536231
132980231
143730231
154019231
164362231
174495231
184546231
194574231
205448231

prune19.0ms (0.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New35035
Fresh011
Picked011
Done011
Total35338
Error
0b
Counts
38 → 3
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y (*.f64 y 3) (*.f64 x x))
0.3b
(pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2)
0.0b
(fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2))
Compiler

Compiled 498 to 284 computations (43% saved)

localize6.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 x y)
0.1b
(hypot.f64 y (hypot.f64 x y))
0.1b
(hypot.f64 y (hypot.f64 y (hypot.f64 x y)))
0.2b
(pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2)

series302.0ms (11.6%)

Counts
3 → 72
Calls

3 calls:

235.0ms
(pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2)
43.0ms
(hypot.f64 y (hypot.f64 y (hypot.f64 x y)))
24.0ms
(hypot.f64 y (hypot.f64 x y))

rewrite50.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
87×egg-rr
Counts
3 → 87
Calls

2 calls:

48.0ms
((pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2) (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) (hypot.f64 y (hypot.f64 x y)))
0.0ms
()
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0830
116430
2164730
3529730
000
100

simplify71.0ms (2.7%)

Algorithm
egg-herbie
Rules
735×fma-neg_binary64
698×times-frac_binary64
451×fma-def_binary64
316×associate-/l*_binary64
311×associate-/r*_binary64
Counts
159 → 161
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01271867
14021530
212651471
348931471
453531471

prune132.0ms (5.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2120212
Fresh000
Picked011
Done022
Total2123215
Error
0b
Counts
215 → 3
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y (*.f64 y 3) (*.f64 x x))
0.3b
(pow.f64 (hypot.f64 y (hypot.f64 y (hypot.f64 x y))) 2)
0.0b
(fma.f64 y (+.f64 y y) (pow.f64 (hypot.f64 x y) 2))
Compiler

Compiled 4157 to 2420 computations (41.8% saved)

regimes189.0ms (7.3%)

Accuracy

Total 0.0b remaining (77.9%)

Threshold costs 0.0b (77.9%)

Counts
40 → 1
Compiler

Compiled 3175 to 1998 computations (37.1% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
1814

end51.0ms (1.9%)

Compiler

Compiled 57 to 34 computations (40.4% saved)

Profiling

Loading profile data...