Details

Time bar (total: 4.0s)

analyze16.0ms (0.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
100%0%0%1
Compiler

Compiled 14 to 13 computations (7.1% saved)

sample51.0ms (1.3%)

Algorithm
intervals
Results
20.0ms70×body2048valid
9.0ms34×body1024valid
6.0ms120×body128valid
4.0ms26×body512valid
1.0msbody256valid
Compiler

Compiled 28 to 26 computations (7.1% saved)

simplify8.0ms (0.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01018
12215
22715
33515
44215
55215
66015
76915
87215
95315

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
17.7b
Counts
3 → 1
Alt Table
StatusErrorProgram
17.7b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Compiler

Compiled 45 to 41 computations (8.9% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 1 x)
0.0b
(/.f64 1/2 (hypot.f64 1 x))
2.1b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

series12.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

6.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
3.0ms
(/.f64 1/2 (hypot.f64 1 x))
3.0ms
(hypot.f64 1 x)

rewrite19.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
42×*-un-lft-identity_binary64
35×add-sqr-sqrt_binary64
27×add-cube-cbrt_binary64
21×prod-diff_binary64
20×sqrt-prod_binary64
Counts
3 → 90
Calls

3 calls:

9.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
2.0ms
(/.f64 1/2 (hypot.f64 1 x))
0.0ms
(hypot.f64 1 x)

simplify96.0ms (2.4%)

Algorithm
egg-herbie
Rules
824×fma-neg_binary64
541×fma-def_binary64
371×associate-*l*_binary64
321×associate-*r*_binary64
223×cancel-sign-sub-inv_binary64
Counts
126 → 156
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02322769
15542393
215332083
344842083
450482083

prune132.0ms (3.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1533156
Fresh000
Picked101
Done000
Total1543157
Error
0b
Counts
157 → 3
Alt Table
StatusErrorProgram
17.3b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
18.0b
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
28.7b
(fma.f64 1/8 (*.f64 x x) (fma.f64 69/1024 (pow.f64 x 6) (fma.f64 (pow.f64 x 8) -1843/32768 (*.f64 (pow.f64 x 4) -11/128))))
Compiler

Compiled 3681 to 3271 computations (11.1% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.0b
(/.f64 1/2 (hypot.f64 1 x))
0.0b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
1.7b
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))

series35.0ms (0.9%)

Counts
3 → 36
Calls

3 calls:

25.0ms
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
6.0ms
(+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
3.0ms
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))

rewrite44.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
116×*-un-lft-identity_binary64
116×add-sqr-sqrt_binary64
80×times-frac_binary64
60×add-cube-cbrt_binary64
39×prod-diff_binary64
Counts
3 → 157
Calls

3 calls:

17.0ms
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
7.0ms
(-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
7.0ms
(+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

simplify157.0ms (3.9%)

Algorithm
egg-herbie
Rules
565×times-frac_binary64
260×fma-def_binary64
206×associate-*r*_binary64
200×associate-/r*_binary64
184×fma-neg_binary64
Counts
193 → 229
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04488251
112495965
238875923
350505923

prune341.0ms (8.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New3361337
Fresh112
Picked011
Done000
Total3373340
Error
0b
Counts
340 → 3
Alt Table
StatusErrorProgram
28.6b
(fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128)))
17.3b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
18.0b
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 11663 to 10409 computations (10.8% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
0.0b
(/.f64 1/2 (hypot.f64 1 x))
0.0b
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
2.1b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

series22.0ms (0.6%)

Counts
2 → 24
Calls

2 calls:

16.0ms
(sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
6.0ms
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))

rewrite45.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
100×sqrt-prod_binary64
84×add-sqr-sqrt_binary64
62×*-un-lft-identity_binary64
28×difference-of-squares_binary64
23×swap-sqr_binary64
Counts
2 → 114
Calls

2 calls:

22.0ms
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
9.0ms
(sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))

simplify128.0ms (3.2%)

Algorithm
egg-herbie
Rules
788×fma-def_binary64
575×times-frac_binary64
462×fma-neg_binary64
295×cancel-sign-sub-inv_binary64
172×sub-neg_binary64
Counts
138 → 153
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02364303
15963886
220523740
347073738
449503738

prune492.0ms (12.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New4410441
Fresh011
Picked011
Done011
Total4413444
Error
0b
Counts
444 → 3
Alt Table
StatusErrorProgram
28.6b
(fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128)))
17.3b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
18.0b
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 16840 to 15302 computations (9.1% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (pow.f64 x 4) -11/128)
19.0b
(fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128)))

series8.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

5.0ms
(fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128)))
3.0ms
(*.f64 (pow.f64 x 4) -11/128)

rewrite6.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt_binary64
associate-*l*_binary64
add-exp-log_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
2 → 37
Calls

2 calls:

4.0ms
(*.f64 (pow.f64 x 4) -11/128)
0.0ms
(fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128)))

simplify91.0ms (2.2%)

Algorithm
egg-herbie
Rules
920×times-frac_binary64
423×*-commutative_binary64
397×exp-prod_binary64
306×distribute-rgt-in_binary64
301×distribute-lft-in_binary64
Counts
61 → 60
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
078868
1145795
2351777
31225771
43296771
54339771
66379771

prune45.0ms (1.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New60060
Fresh000
Picked011
Done022
Total60363
Error
0b
Counts
63 → 3
Alt Table
StatusErrorProgram
28.6b
(fma.f64 (pow.f64 x 6) 69/1024 (fma.f64 x (*.f64 x 1/8) (*.f64 (pow.f64 x 4) -11/128)))
17.3b
(/.f64 (-.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
18.0b
(*.f64 (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (sqrt.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 1279 to 945 computations (26.1% saved)

regimes705.0ms (17.5%)

Accuracy

Total 0.0b remaining (35.3%)

Threshold costs 0.0b (35.3%)

Counts
94 → 2
Compiler

Compiled 10352 to 9365 computations (9.5% saved)

bsearch2.0ms (0.1%)

Compiler

Compiled 4 to 3 computations (25% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
distribute-neg-frac_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02657
13457
24157
34357
44457
54257

end1.0ms (0%)

Compiler

Compiled 40 to 33 computations (17.5% saved)

sample1.5s (38.1%)

Algorithm
intervals
Results
672.0ms2088×body2048valid
230.0ms995×body1024valid
216.0ms4153×body128valid
92.0ms484×body512valid
29.0ms280×body256valid
Compiler

Compiled 114 to 98 computations (14% saved)

Profiling

Loading profile data...