Details

Time bar (total: 2.8s)

analyze660.0ms (23.9%)

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)

sample996.0ms (36%)

Symmetry

(sort x y z)

Results
955.0ms8256×body128valid
Compiler

Compiled 47 to 29 computations (38.3% saved)

simplify10.0ms (0.4%)

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
36.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
36.2b
(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))
33.6b
(sqrt.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))))

series46.0ms (1.7%)

Counts
2 → 60
Calls

2 calls:

40.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))

simplify84.0ms (3.1%)

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

prune83.0ms (3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1132115
Fresh000
Picked011
Done000
Total1133116
Error
0b
Counts
116 → 3
Alt Table
StatusErrorProgram
29.6b
(hypot.f64 y x)
36.2b
(sqrt.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))))
0.6b
(hypot.f64 x z)
Compiler

Compiled 3424 to 1946 computations (43.2% saved)

localize2.0ms (0.1%)

prune2.0ms (0.1%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New000
Fresh011
Picked011
Done011
Total033
Error
0b
Counts
3 → 3
Alt Table
StatusErrorProgram
29.6b
(hypot.f64 y x)
36.2b
(sqrt.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))))
0.6b
(hypot.f64 x z)
Compiler

Compiled 31 to 19 computations (38.7% saved)

localize2.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 y x)

series9.0ms (0.3%)

Counts
1 → 24
Calls

1 calls:

9.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)

simplify55.0ms (2%)

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

prune61.0ms (2.2%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New42042
Fresh000
Picked011
Done022
Total42345
Error
0b
Counts
45 → 3
Alt Table
StatusErrorProgram
29.6b
(hypot.f64 y x)
36.2b
(sqrt.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))))
0.6b
(hypot.f64 x z)
Compiler

Compiled 566 to 340 computations (39.9% saved)

regimes188.0ms (6.8%)

Accuracy

Total 0.4b remaining (75.6%)

Threshold costs 0.4b (75.6%)

Counts
12 → 1
Compiler

Compiled 1266 to 867 computations (31.5% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044
144

end553.0ms (20%)

Compiler

Compiled 49 to 31 computations (36.7% saved)

Profiling

Loading profile data...