Details

Time bar (total: 5.6s)

analyze1.0ms (0%)

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

Compiled 14 to 13 computations (7.1% saved)

sample2.2s (39%)

Results
1.1s2167×body2048valid
465.0ms4313×body128valid
397.0ms1046×body1024valid
144.0ms502×body512valid
42.0ms228×body256valid
Compiler

Compiled 41 to 38 computations (7.3% saved)

simplify64.0ms (1.1%)

Algorithm
egg-herbie
Rules
894×fma-def_binary64
376×rules-20_binary64
351×rules-15_binary64
321×rules-9-rev_binary64
165×rules-6-rev_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01018
12015
23615
36215
414415
530515
6136415
7335415
8489515
9490915

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 45 to 41 computations (8.9% saved)

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series15.0ms (0.3%)

Counts
4 → 48
Calls

4 calls:

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

rewrite79.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
891×log1p-expm1-u_binary64
891×expm1-log1p-u_binary64
378×prod-diff_binary64
143×egg-rr
91×add-sqr-sqrt_binary64
Counts
4 → 143
Calls

4 calls:

76.0ms
(hypot.f64 1 x)
76.0ms
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
76.0ms
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
76.0ms
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0941
121541
2254941
3644941
000
100

simplify49.0ms (0.9%)

Algorithm
egg-herbie
Rules
680×fma-neg_binary64
607×rules-15-rev_binary64
427×rules-20_binary64
425×rules-14-rev_binary64
294×fma-def_binary64
Counts
191 → 224
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0122901
1428880
22030860
35594860

prune185.0ms (3.3%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2213224
Fresh000
Picked101
Done000
Total2223225
Error
0.0b
Counts
225 → 3
Alt Table
StatusErrorProgram
32.1b
(-.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (*.f64 11/128 (pow.f64 x 4)))
13.2b
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
12.7b
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 4159 to 3681 computations (11.5% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.0b
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
0.0b
(pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)
0.7b
(-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2))

series114.0ms (2%)

Counts
4 → 48
Calls

4 calls:

99.0ms
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
6.0ms
(+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
5.0ms
(-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2))
3.0ms
(pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)

rewrite96.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
249×expm1-udef_binary64
249×log1p-udef_binary64
150×egg-rr
146×log1p-expm1-u_binary64
146×expm1-log1p-u_binary64
Counts
4 → 150
Calls

4 calls:

91.0ms
(+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
91.0ms
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
91.0ms
(pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)
91.0ms
(-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01498
134795
2413295
3486495
000
100

simplify93.0ms (1.6%)

Algorithm
egg-herbie
Rules
995×fma-def_binary64
848×rules-14-rev_binary64
747×rules-21_binary64
359×rules-20_binary64
148×rules-2-rev_binary64
Counts
198 → 233
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05855460
119844852
260864852

prune451.0ms (8%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2321233
Fresh022
Picked011
Done000
Total2324236
Error
0b
Counts
236 → 4
Alt Table
StatusErrorProgram
31.7b
(/.f64 (*.f64 3/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
32.1b
(-.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (*.f64 11/128 (pow.f64 x 4)))
13.2b
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
12.7b
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 14266 to 12979 computations (9% saved)

localize14.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
0.0b
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
1.2b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))

series16.0ms (0.3%)

Counts
2 → 24
Calls

2 calls:

11.0ms
(log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
5.0ms
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))

rewrite104.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
794×fma-neg_binary64
466×prod-diff_binary64
175×expm1-udef_binary64
175×log1p-udef_binary64
99×add-sqr-sqrt_binary64
Counts
2 → 72
Calls

2 calls:

102.0ms
(log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
102.0ms
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01132
123732
2280132
3489732
4492932
000
100

simplify51.0ms (0.9%)

Algorithm
egg-herbie
Rules
754×rules-15-rev_binary64
602×fma-neg_binary64
544×rules-20_binary64
451×fma-def_binary64
349×rules-21_binary64
Counts
96 → 112
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0130992
1454924
22324904
35929904

prune188.0ms (3.3%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2180218
Fresh022
Picked011
Done011
Total2184222
Error
0b
Counts
222 → 4
Alt Table
StatusErrorProgram
31.7b
(/.f64 (*.f64 3/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
32.1b
(-.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (*.f64 11/128 (pow.f64 x 4)))
13.2b
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
12.7b
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 5165 to 4665 computations (9.7% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
0.0b
(+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.1b
(*.f64 3/8 (pow.f64 x 2))
0.1b
(/.f64 (*.f64 3/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))

series66.0ms (1.2%)

Counts
2 → 12
Calls

2 calls:

63.0ms
(/.f64 (*.f64 3/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
3.0ms
(*.f64 3/8 (pow.f64 x 2))

rewrite86.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
264×expm1-udef_binary64
264×log1p-udef_binary64
151×add-sqr-sqrt_binary64
150×log1p-expm1-u_binary64
150×expm1-log1p-u_binary64
Counts
2 → 60
Calls

2 calls:

85.0ms
(*.f64 3/8 (pow.f64 x 2))
85.0ms
(/.f64 (*.f64 3/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01543
136840
2436440
3496040
000
100

simplify62.0ms (1.1%)

Algorithm
egg-herbie
Rules
439×rules-15-rev_binary64
359×fma-neg_binary64
332×fma-def_binary64
300×rules-13_binary64
278×rules-14-rev_binary64
Counts
72 → 83
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02291646
16991219
241291219
357081219

prune252.0ms (4.5%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New2140214
Fresh011
Picked011
Done022
Total2144218
Error
0b
Counts
218 → 4
Alt Table
StatusErrorProgram
31.7b
(/.f64 (*.f64 3/8 (pow.f64 x 2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
32.1b
(-.f64 (fma.f64 1/8 (*.f64 x x) (*.f64 69/1024 (pow.f64 x 6))) (*.f64 11/128 (pow.f64 x 4)))
13.2b
(expm1.f64 (log1p.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
12.7b
(/.f64 (-.f64 1 (pow.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 3/2)) (+.f64 1 (+.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
Compiler

Compiled 8207 to 7214 computations (12.1% saved)

regimes1.3s (23.1%)

Accuracy

Total 0.0b remaining (56.6%)

Threshold costs 0.0b (56.6%)

Counts
174 → 2
Compiler

Compiled 21992 to 19842 computations (9.8% saved)

bsearch5.0ms (0.1%)

Compiler

Compiled 4 to 3 computations (25% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03176
13376
23276

end111.0ms (2%)

Compiler

Compiled 190 to 163 computations (14.2% saved)

Profiling

Loading profile data...