Details

Time bar (total: 4.9s)

analyze20.0ms (0.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
49.9%49.9%0.1%5
74.9%25%0.1%6
87.4%12.5%0.1%7
93.6%6.2%0.1%8
96.7%3.1%0.1%9
98.3%1.6%0.1%10
99.1%0.8%0.1%11
99.5%0.4%0.1%12
99.7%0.2%0.1%13
99.8%0.1%0.1%14
Compiler

Compiled 18 to 12 computations (33.3% saved)

sample1.1s (22.9%)

Symmetry

(sort x y z)

Results
1.1s8256×body128valid
Compiler

Compiled 53 to 35 computations (34% saved)

simplify7.0ms (0.1%)

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
01219
11717
22717
33117
43117

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 59 to 34 computations (42.4% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x x (*.f64 y y))
0.0b
(fma.f64 z z (fma.f64 x x (*.f64 y y)))
0.1b
(/.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))) 3)
35.0b
(sqrt.f64 (/.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))) 3))

series122.0ms (2.5%)

Counts
4 → 132
Calls

4 calls:

67.0ms
(sqrt.f64 (/.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))) 3))
36.0ms
(/.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))) 3)
13.0ms
(fma.f64 z z (fma.f64 x x (*.f64 y y)))
6.0ms
(fma.f64 x x (*.f64 y y))

rewrite65.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
864×log1p-expm1-u_binary64
864×expm1-log1p-u_binary64
135×prod-diff_binary64
108×egg-rr
100×add-sqr-sqrt_binary64
Counts
4 → 108
Calls

4 calls:

62.0ms
(fma.f64 x x (*.f64 y y))
62.0ms
(fma.f64 z z (fma.f64 x x (*.f64 y y)))
62.0ms
(/.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))) 3)
62.0ms
(sqrt.f64 (/.f64 (fma.f64 z z (fma.f64 x x (*.f64 y y))) 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01052
120642
2228542
3551742
000
100

simplify95.0ms (1.9%)

Algorithm
egg-herbie
Rules
796×cancel-sign-sub-inv_binary64
354×fma-neg_binary64
351×sub-neg_binary64
281×fma-def_binary64
226×times-frac_binary64
Counts
240 → 205
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03044008
18923575
238123575
355883575

prune191.0ms (3.9%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New2032205
Fresh000
Picked101
Done000
Total2042206
Error
0.0b
Counts
206 → 2
Alt Table
StatusErrorProgram
0.4b
(fabs.f64 (*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3)))
0.4b
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))
Compiler

Compiled 5452 to 3747 computations (31.3% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 x y)
0.0b
(hypot.f64 z (hypot.f64 x y))
0.3b
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))

series137.0ms (2.8%)

Counts
3 → 96
Calls

3 calls:

78.0ms
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))
49.0ms
(hypot.f64 z (hypot.f64 x y))
10.0ms
(hypot.f64 x y)

rewrite63.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
809×log1p-expm1-u_binary64
809×expm1-log1p-u_binary64
126×prod-diff_binary64
91×add-sqr-sqrt_binary64
87×add-log-exp_binary64
Counts
3 → 74
Calls

3 calls:

62.0ms
(hypot.f64 x y)
62.0ms
(hypot.f64 z (hypot.f64 x y))
62.0ms
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
118523
2210423
3522923
000
100

simplify119.0ms (2.4%)

Algorithm
egg-herbie
Rules
708×fma-neg_binary64
429×fma-def_binary64
272×times-frac_binary64
264×associate--l+_binary64
262×associate-/r*_binary64
Counts
170 → 236
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04305230
113664872
249734870
356194870

prune229.0ms (4.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2351236
Fresh011
Picked011
Done000
Total2353238
Error
0b
Counts
238 → 3
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 1 (cbrt.f64 3)) (/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3))))
0.4b
(fabs.f64 (*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3)))
0.4b
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))
Compiler

Compiled 8053 to 5599 computations (30.5% saved)

localize16.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 x y)
0.0b
(hypot.f64 z (hypot.f64 x y))
0.4b
(*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3))

series88.0ms (1.8%)

Counts
1 → 36
Calls

1 calls:

88.0ms
(*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3))

rewrite42.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
717×log1p-expm1-u_binary64
717×expm1-log1p-u_binary64
155×expm1-udef_binary64
155×log1p-udef_binary64
102×prod-diff_binary64
Counts
1 → 16
Calls

1 calls:

41.0ms
(*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0912
117912
2189512
3508312
000
100

simplify82.0ms (1.7%)

Algorithm
egg-herbie
Rules
819×cancel-sign-sub-inv_binary64
361×sub-neg_binary64
351×fma-neg_binary64
273×fma-def_binary64
226×times-frac_binary64
Counts
52 → 85
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02992697
18742555
237802555
355872555

prune226.0ms (4.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2180218
Fresh011
Picked011
Done011
Total2183221
Error
0b
Counts
221 → 3
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 1 (cbrt.f64 3)) (/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3))))
0.4b
(fabs.f64 (*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3)))
0.4b
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))
Compiler

Compiled 7936 to 5641 computations (28.9% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 z (hypot.f64 x y))
0.1b
(/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3)))
0.4b
(*.f64 (/.f64 1 (cbrt.f64 3)) (/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3))))
1.0b
(/.f64 1 (cbrt.f64 3))

series554.0ms (11.2%)

Counts
3 → 72
Calls

3 calls:

404.0ms
(*.f64 (/.f64 1 (cbrt.f64 3)) (/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3))))
150.0ms
(/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3)))
0.0ms
(/.f64 1 (cbrt.f64 3))

rewrite72.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
613×log-prod_binary64
228×expm1-udef_binary64
228×log1p-udef_binary64
216×log-pow_binary64
150×prod-diff_binary64
Counts
3 → 118
Calls

3 calls:

70.0ms
(/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3)))
70.0ms
(*.f64 (/.f64 1 (cbrt.f64 3)) (/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3))))
70.0ms
(/.f64 1 (cbrt.f64 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01439
128231
2317131
3572931
000
100

simplify140.0ms (2.8%)

Algorithm
egg-herbie
Rules
797×fma-def_binary64
332×times-frac_binary64
268×associate-/l*_binary64
250×associate-*r/_binary64
249×associate-/r*_binary64
Counts
190 → 262
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05827677
117366665
250486665

prune487.0ms (9.8%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New3510351
Fresh000
Picked011
Done022
Total3513354
Error
0b
Counts
354 → 3
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 1 (cbrt.f64 3)) (/.f64 (hypot.f64 z (hypot.f64 x y)) (cbrt.f64 (sqrt.f64 3))))
0.4b
(fabs.f64 (*.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 1/3)))
0.4b
(/.f64 (hypot.f64 z (hypot.f64 x y)) (sqrt.f64 3))
Compiler

Compiled 15828 to 12242 computations (22.7% saved)

regimes948.0ms (19.2%)

Accuracy

Total 0.4b remaining (99.5%)

Threshold costs 0.4b (99.5%)

Counts
77 → 1
Compiler

Compiled 10641 to 8427 computations (20.8% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0912
1912

end75.0ms (1.5%)

Remove

(sort x y z)

Compiler

Compiled 84 to 63 computations (25% saved)

Profiling

Loading profile data...