Details

Time bar (total: 1.4s)

analyze132.0ms (9.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
25%74.9%0.1%5
37.5%62.4%0.1%6
56.2%43.7%0.1%7
65.6%34.3%0.1%8
76.5%23.4%0.1%9
82%18%0.1%10
87.8%12.1%0.1%11
90.7%9.2%0.1%12
93.8%6.1%0.1%13
95.3%4.6%0.1%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample832.0ms (59.7%)

Symmetry

(sort x y)

Results
800.0ms8256×body128valid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify7.0ms (0.5%)

Algorithm
egg-herbie
Rules
hypot-def_binary64
fma-def_binary64
+-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074
1104
2124
3124

prune3.0ms (0.2%)

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.0b
(hypot.f64 x y)
34.2b
(sqrt.f64 (+.f64 (*.f64 x x) (*.f64 y y)))
Compiler

Compiled 43 to 25 computations (41.9% saved)

localize2.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 x y)

series11.0ms (0.8%)

Counts
1 → 24
Calls

1 calls:

11.0ms
(hypot.f64 x y)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(hypot.f64 x y)

simplify53.0ms (3.8%)

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
34 → 42
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
063568
1174541
2511525
32175525
44416525
55032525

prune22.0ms (1.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New40242
Fresh101
Picked011
Done000
Total41344
Error
0b
Counts
44 → 3
Alt Table
StatusErrorProgram
34.2b
(sqrt.f64 (fma.f64 y y (*.f64 x x)))
0.0b
(hypot.f64 x y)
37.2b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 y y) x) x))
Compiler

Compiled 585 to 351 computations (40% saved)

localize4.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y y (*.f64 x x))
32.1b
(sqrt.f64 (fma.f64 y y (*.f64 x x)))

series18.0ms (1.3%)

Counts
2 → 48
Calls

2 calls:

11.0ms
(sqrt.f64 (fma.f64 y y (*.f64 x x)))
7.0ms
(fma.f64 y y (*.f64 x x))

rewrite2.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
sqrt-prod_binary64
add-cube-cbrt_binary64
pow1_binary64
Counts
2 → 26
Calls

2 calls:

1.0ms
(sqrt.f64 (fma.f64 y y (*.f64 x x)))
0.0ms
(fma.f64 y y (*.f64 x x))

simplify61.0ms (4.3%)

Algorithm
egg-herbie
Rules
747×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
74 → 77
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
077970
1189838
2565817
32335817
44350791
55023791

prune31.0ms (2.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New77077
Fresh011
Picked011
Done011
Total77380
Error
0b
Counts
80 → 3
Alt Table
StatusErrorProgram
34.2b
(sqrt.f64 (fma.f64 y y (*.f64 x x)))
0.0b
(hypot.f64 x y)
37.2b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 y y) x) x))
Compiler

Compiled 966 to 465 computations (51.9% saved)

localize5.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
7.5b
(/.f64 (*.f64 y y) x)

series10.0ms (0.8%)

Counts
1 → 24
Calls

1 calls:

10.0ms
(/.f64 (*.f64 y y) x)

rewrite4.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
associate-/r*_binary64
*-un-lft-identity_binary64
times-frac_binary64
Counts
1 → 23
Calls

1 calls:

3.0ms
(/.f64 (*.f64 y y) x)

simplify69.0ms (4.9%)

Algorithm
egg-herbie
Rules
544×associate-/r/_binary64
390×associate-*r/_binary64
327×div-sub_binary64
320×associate-*r*_binary64
295×unswap-sqr_binary64
Counts
47 → 29
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048429
1102384
2283384
3934384
42005384
52978384
64495384
74955384

prune12.0ms (0.9%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New29029
Fresh000
Picked011
Done022
Total29332
Error
0b
Counts
32 → 3
Alt Table
StatusErrorProgram
34.2b
(sqrt.f64 (fma.f64 y y (*.f64 x x)))
0.0b
(hypot.f64 x y)
37.2b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 y y) x) x))
Compiler

Compiled 415 to 185 computations (55.4% saved)

regimes65.0ms (4.7%)

Accuracy

Total 0.0b remaining (14.8%)

Threshold costs 0.0b (14.8%)

Counts
7 → 1
Compiler

Compiled 461 to 293 computations (36.4% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044
144

end47.0ms (3.3%)

Remove

(sort x y)

Compiler

Compiled 45 to 27 computations (40% saved)

Profiling

Loading profile data...