Details

Time bar (total: 3.0s)

analyze740.0ms (24.8%)

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
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
18.7%81.1%0.1%8
28.1%71.8%0.1%9
42.1%57.7%0.1%10
49.1%50.7%0.1%11
57.3%42.5%0.1%12
66.9%33%0.1%13
71.7%28.2%0.1%14
Compiler

Compiled 16 to 10 computations (37.5% saved)

sample1.0s (34.9%)

Symmetry

(sort x y z)

Results
995.0ms8256×body128valid
Compiler

Compiled 47 to 29 computations (38.3% saved)

simplify7.0ms (0.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01016
11514
22514
32914
42914

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
41.7b
Counts
3 → 1
Alt Table
StatusErrorProgram
41.7b
(sqrt.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))))
Compiler

Compiled 51 to 26 computations (49% saved)

localize7.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series72.0ms (2.4%)

Counts
2 → 60
Calls

2 calls:

66.0ms
(sqrt.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))))
6.0ms
(fma.f64 x x (*.f64 y y))

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 → 25
Calls

2 calls:

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

simplify86.0ms (2.9%)

Algorithm
egg-herbie
Rules
704×cancel-sign-sub-inv_binary64
387×fma-neg_binary64
324×sub-neg_binary64
203×fma-def_binary64
180×distribute-neg-in_binary64
Counts
85 → 115
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02522486
16942327
228302325
349842325
450472325

prune79.0ms (2.7%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1114115
Fresh000
Picked101
Done000
Total1124116
Error
0.0b
Counts
116 → 4
Alt Table
StatusErrorProgram
0.4b
(hypot.f64 x z)
36.1b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 z z) x) (fma.f64 1/2 (/.f64 (*.f64 y y) x) x)))
30.7b
(hypot.f64 y z)
29.8b
(hypot.f64 y x)
Compiler

Compiled 3461 to 1971 computations (43.1% saved)

localize2.0ms (0.1%)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New000
Fresh033
Picked011
Done000
Total044
Error
0.0b
Counts
4 → 4
Alt Table
StatusErrorProgram
0.4b
(hypot.f64 x z)
36.1b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 z z) x) (fma.f64 1/2 (/.f64 (*.f64 y y) x) x)))
30.7b
(hypot.f64 y z)
29.8b
(hypot.f64 y x)
Compiler

Compiled 68 to 44 computations (35.3% saved)

localize2.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 y x)

series12.0ms (0.4%)

Counts
1 → 24
Calls

1 calls:

12.0ms
(hypot.f64 y x)

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 y x)

simplify56.0ms (1.9%)

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

prune20.0ms (0.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New40242
Fresh112
Picked101
Done011
Total42446
Error
0b
Counts
46 → 4
Alt Table
StatusErrorProgram
30.7b
(hypot.f64 y z)
33.4b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 y y) x) x))
0.4b
(hypot.f64 x z)
30.1b
(*.f64 (sqrt.f64 (hypot.f64 y x)) (sqrt.f64 (hypot.f64 y x)))
Compiler

Compiled 607 to 365 computations (39.9% saved)

localize9.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 y x)
0.5b
(*.f64 (sqrt.f64 (hypot.f64 y x)) (sqrt.f64 (hypot.f64 y x)))

series12.0ms (0.4%)

Counts
1 → 24
Calls

1 calls:

12.0ms
(*.f64 (sqrt.f64 (hypot.f64 y x)) (sqrt.f64 (hypot.f64 y x)))

rewrite12.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
25×add-sqr-sqrt_binary64
18×sqrt-prod_binary64
16×pow1_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
1 → 53
Calls

1 calls:

5.0ms
(*.f64 (sqrt.f64 (hypot.f64 y x)) (sqrt.f64 (hypot.f64 y x)))

simplify87.0ms (2.9%)

Algorithm
egg-herbie
Rules
650×fma-neg_binary64
537×cancel-sign-sub-inv_binary64
312×distribute-rgt-neg-in_binary64
262×distribute-neg-frac_binary64
197×associate-*l*_binary64
Counts
77 → 90
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
093991
1222889
2653855
32507839
44786832
54952832
64950832

prune70.0ms (2.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1740174
Fresh022
Picked011
Done011
Total1744178
Error
0b
Counts
178 → 4
Alt Table
StatusErrorProgram
30.7b
(hypot.f64 y z)
33.4b
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 y y) x) x))
0.4b
(hypot.f64 x z)
30.1b
(*.f64 (sqrt.f64 (hypot.f64 y x)) (sqrt.f64 (hypot.f64 y x)))
Compiler

Compiled 2850 to 1254 computations (56% saved)

regimes185.0ms (6.2%)

Accuracy

Total 0.5b remaining (98.2%)

Threshold costs 0.5b (98.2%)

Counts
16 → 1
Compiler

Compiled 1916 to 1320 computations (31.1% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044
144

end470.0ms (15.8%)

Compiler

Compiled 60 to 38 computations (36.7% saved)

Profiling

Loading profile data...